Senior Java Engineer - Enterprise Platform
New York, NY
Posted Jul 30, 2020 - Requisition No. 84152
The Enterprise Platform department was formed to design and build the next generation platform for managing financial transactions for a firm's trading events - a system of record. The mission of TMS is to provide a common architecture for capturing, storing and versioning trade and position impacting events that covers full trade life-cycle from order and trade entry to position and PnL explains providing greater transparency and traceability across a firm’s trading enterprise.
The Data Services team practices Domain Driven Design & Model Driven Architecture to deliver this next generation platform. Our goal is to provide our TS application partners: AIM/TOMS/PORT P2P/Post-Trade/STP with a Data Platform that is extensible, scalable & lifts them from data management concerns like tenant isolation, data sharing, transaction management so they can focus on delivering business functionality to their clients.
We are primarily Java based platform leveraging frameworks like Spring, Camel, Hibernate for the server side and message oriented middleware like RabbitMQ/Kafka to provide for event driven architecture. We continuously seek innovation in whatever we do and encourage our engineers to try out their ideas by building proof of concepts, try out newer technologies that solves business problems in unique ways. We are looking for engineers who are passionate, have the appetite to learn & build innovative software.
We’ll trust you to:
- Design, architect and develop robust backend services in Java, in coordination with product owners, engineering partners and UX designers
- Collaborate within an agile, multi-disciplinary, fast paced team
- Advocate for high quality, well-tested solutions
- Take ownership and drive technical solutions from inception to production release
You'll need to have:
- 5+ years of professional experience in building large scale Java services
- A solid understanding of Java Concurrency, Reflection & Streams
- Good understanding of design patterns and when to apply them
- Experience writing plugins for open source libraries for integration purposes
- In depth knowledge of frameworks like Spring, Hibernate
- Hands-on experience writing event driven systems using message oriented middleware like IBM MQ/ActiveMQ/RabbitMQ/Kafka
- Experience or good understanding of distributed systems
- Professional experience with a relational database (PostgreSQL or MySQL) and writing SQL
- Experience with build tools like maven & gradle
- Experience with distributed source control management (like Git) and pull request/code review workflow
We’d love to see:
- Experience with Enterprise Integration Patterns (using Apache Camel or Spring Integrations)
- Experience with Python for writing scripts for operational & testing needs or desire to learn it
- Exposure to NoSql databases, big data/data lake technologies and machine learning
- A keen interest in new technologies and be able to incorporate them in solving complex business problems with technology
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status or disability status.