Software Engineer (Java) - Research Data Platform
IMC TradingAbout the Role
Researchers and traders rely on high-quality research data to evaluate and improve our trading strategies. The mission of our research data team is to maintain a platform and pipelines to provide globally aligned and curated options data, bringing together market data, data from external vendors, and IMC internal data.
- Work closely with researchers and traders to understand their strategies and data needs, and translate them into reliable research data solutions.
- Develop, test, deploy and maintain applications and pipelines that ingest, curate and expose options research data.
- Improve data quality and operational reliability through validation, monitoring, troubleshooting and efficient access to large datasets.
- Collaborate with research data and platform teams across regions to onboard datasets, improve shared systems and support systematic research.
The team owns the generation of datasets, the quality of the data, and the daily operations for research or trading critical data. You will be at the cutting edge of development in IMC, globally aligning with other teams on new initiatives to enable systematic research, and working closely with researchers and traders to prioritize local demands and shape platform improvements.
Responsibilities
- Work closely with researchers and traders to understand their strategies and data needs, and translate them into reliable research data solutions
- Develop, test, deploy and maintain applications and pipelines that ingest, curate and expose options research data
- Improve data quality and operational reliability through validation, monitoring, troubleshooting and efficient access to large datasets
- Collaborate with research data and platform teams across regions to onboard datasets, improve shared systems and support systematic research
Requirements
- At least 3 years of experience as a Software Engineer
- Strong programming skills in Java
- Practical experience with Python
- Solid understanding of computer science fundamentals, including algorithms, data structures, complexity analysis, memory management and concurrency
- Experience developing and operating production software
- Strong troubleshooting skills across application code, infrastructure and data
- Strong analytical and problem-solving skills
- Interest in understanding how data is generated, validating its correctness and assessing its suitability for research
- Ability to work independently, understand research requirements, communicate with stakeholders and take ownership of the solutions you build
- Experience building data pipelines, distributed systems or large-scale data processing applications
- Familiarity with Linux, containers and Kubernetes
- Adaptability and solid engineering judgement in an environment where requirements evolve
- A degree in Computer Science or a related field, or equivalent practical experience
- Curiosity about options pricing and a willingness to learn