WHAT YOU’LL DO AS A C++ SOFTWARE ENGINEER
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.
IMC’s Sydney based C++ Execution development teams work on software that sits directly in the latency-critical loop of our technology stack and touches every part of our organisation. From ensuring our connectivity to the market and handling massive amounts of data, to implementing complex trading algorithms and integrating advanced hardware solutions.
As a software engineer, you’ll work in multidisciplinary teams alongside other engineers as well as traders to deliver challenging projects, while taking ownership for end-to-end product development – from requirements gathering to production. You’ll write reliable, high-performance software whilst balancing time to production with quality and testability. Advanced automated testing and daily deployments will allow you to achieve agile and incremental benefits.
Within a complex landscape of varying systems and technologies, you’ll be constantly challenged to consider trade-offs between latency, throughput, simplicity, scalability and maintainability.
OUR TECHNOLOGY STACK
Our tech stack includes an ever-evolving range of systems and technologies, and our engineers have the freedom to choose the best solution for the problem at hand. If a new technology has the potential to add value, we’ll actively invest in exploring, adopting and developing it.
These are just some of the technologies our C++ software engineers are currently working with: C++20, linux, git, bazel, gerrit code review, jira and teamcity for our core workflow. A lot of our C++ code also interacts with FPGAs and our Java trading platform.
WHAT YOU CAN EXPECT
At IMC, no two projects or any two days are the same. You can expect a dynamic, fast-paced environment that delivers a steady stream of challenges. One of the most exciting aspects of the job is our quick feedback loop.
Our workforce is just as varied. IMCers are drawn from a broad range of nationalities and backgrounds; what they have in common is their deep technical expertise, extraordinary smarts and highly collaborative approach. We give people lots of responsibility and the support they need to make an impact from day one. As a software engineer, you’ll have the chance to learn everything you need to know about financial markets – it’s just one of the things that make this job more interesting than other tech roles.
We promise you a flat structure and an open, collaborative culture that stimulates the sharing of ideas, knowledge and technology between our different teams and offices.
OUR HIRING PROCESS
To set you up for success, you can find details of our hiring process – including tips on applying and interviewing with us – on our website. Now it’s up to you! Apply today to begin your amazing journey with IMC.