Role: Front office Data Engineer - VP
Experience: 8 yrs - 12 yrs
Work location: Bangalore
- Finance Domain Experience
- Expertise in Java and/or Python
- Experience in OOP, design patterns, data modeling, memory hierarchies, and concurrency
Seeking a senior software engineer to join our Front Office Data Engineering group. The role is based in our growing Bengaluru, India office. We are looking for a senior engineer who has a comprehensive understanding of development patterns, best practices, tooling, and ecosystems in an enterprise-level, mission-critical environment. The role will involve building new systems as well as supporting, maintaining, and enhancing existing systems, with particular focus on architecture for our ongoing transition to the cloud. An uncompromising eye for good software architecture and development practices is essential, as the role will involve conducting code reviews and providing guidance and advice to more junior developers and engagement in design discussions with peers and senior architects.
- Undergraduate degree in Computer Science or a closely related subject.
- 10+ years of experience developing complex software systems.
- Mastery of enterprise-scale software fundamentals such as object-oriented programming, design patterns, data modeling, memory hierarchies, and concurrency.
- A track record of impactful project delivery where you played a lead developer role within the team.
- Experience building and operating services-oriented systems (Microservices, RESTful, web-based APIs), ideally built on the public cloud (especially AWS).
- Expertise in Java and/or Python, plus willingness to learn and work in other (possibly unfamiliar) programming languages when the need arises.
- Demonstrated ability to write clear, compelling documents (presentations, diagrams, wikis, etc.).
- Confidence to engage directly with our US-based business to discover and refine requirements.
- Maturity and confidence to work with fellow developers worldwide, mentor and manage junior developers, and lead by example in establishing coding standards and practices.
- Java tools: Maven, Spring, Hibernate, Reladomo, Flyway, JUnit, Wiremock, Mockito, Swagger.
- Python tools: Conda, Flask, SQL Alchemy.
- Numeric and data-oriented programming, especially using Numpy and Pandas.
- Large scale SQL database programming, especially on Microsoft SQL Server and Postgres.
- Unit testing and acceptance testing tools: Cucumber, Selenium.
- Modern SDLC and dev-ops tools: Git, NewRelic, Jenkins, Bamboo, Splunk, SumoLogic.
- Job scheduling tools:
Experience in quantitative finance is helpful but not required. If you have developed impactful services-based systems in any industry, we’ll teach you the finance that you need to succeed in our world.