Java Software Engineer

IMC
Sydney, Australia

Who this role is best for

Strong fit for Java developers with distributed systems experience who work well in cross-functional teams and have a deep understanding of financial trading systems.

Best fit for

  • Java developers with 3–5 years of experience in building distributed, server-side systems
    — “Experience building and running distributed, server-side systems in production”
  • Candidates who have a background in financial markets or trading systems, especially in positions, risk, or PnL
    — “Exposure to financial markets or trading systems, especially positions, risk or PnL”
  • Individuals who thrive in collaborative environments with stakeholders across multiple time zones
    — “Work directly with traders, risk managers and engineers, locally and globally”

Things to consider

  • End-to-end ownership of systems is expected, including deployment and production support
    — “Own your work end to end, from design and testing through deployment, monitoring and production support”
  • The role is based in Sydney, with potential for global collaboration and travel
    — “Partners with trading, technology and risk stakeholders in Sydney and around the world”

How to stand out

  • Highlight experience with JVM performance tuning and low-latency systems in your resume
    — “Experience with low-latency or high-throughput systems and JVM performance tuning”
  • Emphasize your ability to translate business requirements into scalable technical solutions
    — “Work directly with traders, risk managers and engineers, locally and globally, to turn their requirements into robust, scalable solutions”
  • Showcase your contributions to code reviews and design discussions in past roles
    — “Contribute to code reviews, design discussions and engineering standards across a global team”
Pace · SteadyCollaboration · HighAutonomy · MediumDecision Impact · Team

Derived from job-description analysis by Serendipath's career intelligence engine.

What success looks like

  • designing and maintaining high-performance Java services
  • extending core platforms for new markets
  • improving system reliability and performance
Typical background
software engineeringdistributed systems

Skills & requirements

Required

JavaDistributed SystemsSoftware DesignTestingClean Code

Preferred

KubernetesFinancial MarketsLow-latency SystemsJVM Performance Tuning

Stack & domain

JavaInstrument DefinitionPosition TrackingMarket RiskExecution Risk ControlsPnl ReportingDistributed SystemsKubernetesContainerized DeploymentsFinancial MarketsTrading SystemsPositionsRiskPnlLow-latencyHigh-throughputJVM Performance TuningCommunicationCollaborationOwnershipCuriosityFinanceTradingSoftware Engineering

About the role

Original posting from IMC via Greenhouse

At IMC, technology is not a department; it’s at the heart of everything we do. Developed in house, our innovative software makes millions of trading decisions daily, and we win by making better and faster decisions than our competition.

Core Trading Systems (CTS) is a global team building the core platforms that every IMC trading system relies on. The team owns the cross-cutting concerns that sit underneath all our strategies: instrument definition, position tracking, market risk, execution risk controls and PnL reporting. Sitting at the centre of IMC's trading stack, CTS has firm-wide reach. The team partners with trading, technology and risk stakeholders in Sydney and around the world to help IMC enter new markets, make smarter decisions and run more reliable, performant systems.

Your Core Responsibilities:

Design, build and maintain high-performance Java services for instrument definition, position tracking, market risk, execution risk controls and PnL reporting

Extend our core platforms so IMC's trading systems can support new markets, products and exchanges

Work directly with traders, risk managers and engineers, locally and globally, to turn their requirements into robust, scalable solutions

Improve the reliability, latency and throughput of systems that every IMC trading desk depends on

Own your work end to end, from design and testing through deployment, monitoring and production support

Contribute to code reviews, design discussions and engineering standards across a global team

Your Skills and Experience:

3–5 years of professional software engineering experience, with Java as your primary language 

Strong computer science fundamentals: data structures, algorithms, concurrency and multithreading

Experience building and running distributed, server-side systems in production

A solid grasp of software design, testing and clean, maintainable code

Clear communication and the ability to work with non-engineering stakeholders to understand what they need

Ownership and curiosity: you take problems through to the end and want to understand how things work

Nice to have

Experience with Kubernetes and containerised deployments

Exposure to financial markets or trading systems, especially positions, risk or PnL

Experience with low-latency or high-throughput systems and JVM performance tuning

About Us

IMC is a research-driven trading firm where quantitative modeling, machine learning, and engineering shape how modern markets are traded. A stabilizing force in markets since 1989, we provide liquidity across trading venues, delivering the best outcome in value and risk management to investors. Using our own technology and capital, we build proprietary systems and algorithms that operate across global markets. Our researchers, traders, and engineers work as a collective, combining rapid experimentation, advanced infrastructure, and real-time feedback to turn insight into execution and execution into advantage.

Source: IMC careers (Greenhouse)

Similar roles

More roles at IMC