Software Developer - Core Java
We are looking for enthusiastic Software Developers to join the growing development team at LMAX Group and collaborate with us to solve interesting and challenging technical problems, developing high quality, low latency, performant software.
You won’t find a long list of hard requirements here. If you are a motivated and self-driven developer who will enjoy learning and growing together with us, then we’d love to talk to you.
What you’ll work on
The LMAX Group dev team works across the whole of the business. To avoid accumulating knowledge silos, we actively rotate developers around our teams, ensuring that everyone gains first-hand knowledge on all areas of our codebase and gets to work on a wide variety of projects, such as:
• Designing and building software for low latency trading systems
• Investigating new block chain technologies
• Analytics tools to help senior management make data-led business decisions
• Improving our platform’s security and resilience
Our tech stack
• Backend: distributed, event-driven core Java (90% of the code base), MySQL
• Data analytics: Python & Jupyter notebooks, Parquet, Docker
• Blockchain integrations: Bitcoin (& Litecoin, Bitcoin Cash), Ethereum and XRP (Ripple)
• Testing: JUnit, Mockito, JMH, JCStress, Jenkins, Selenium, many in-house tools…
• OS: Linux (CentOS)
Due to our strict performance requirements, some bits of our architecture aren’t entirely conventional... We don’t expect you to arrive with an in-depth knowledge of all of our stack - we’ll teach you that.
What you’ll bring
• A good understanding of how to write clean, efficient, well tested code
• A keenness to learn and to work in a highly collaborative environment
• Strong communication and problem-solving skills
• An appreciation that the simple solution to a problem - while often harder to discover than the complex one - is usually best
Working collaboratively: We work in a very social and collaborative environment, even while remote. Working as a team and with colleagues from across the business, allows multiple ideas to combine into stronger designs and better solutions. Pair programming ensures high quality code, supports knowledge growth and sharing of expertise. With many eyes contributing to any code before it goes into production, you will rarely find a traditional code review at LMAX Group.
Test driven: LMAX Group relies heavily on test driven development and automation. We gain rapid feedback and confidence from 35,000 end-to-end tests running every half an hour. There are also extensive unit, compatibility, migration, and resilience tests.
We care a lot more about software performance than many other organisations. We have a range of continuous performance tests designed to catch any regression before it reaches production, from targeted microbenchmarks to end-to-end replays of production traffic.
Dedicated to quality: We care a lot about quality; we like to dig deep into the code-base and leave things better than we found them - more readable, better modelled, more performant, more consistent. There is a permanent expectation of delivering high quality, maintainable code, and minimising technical debt.
You won’t be stressed about deadlines and pressured to cut corners just to get things done quickly. As a team we enjoy building software and seeing that software used, and although we want to deliver things in a timely manner, we always strive to write things properly and cleanly the first time.
Always improving: We regularly examine our successes and failures to look at how we can improve both as a team and individually. Alongside regular internal training sessions, we have a generous budget supporting attendance at conferences or training courses and we set aside Friday afternoons as a time for developers to pursue an interest or learn something.
• Smart, friendly colleagues keen to share their knowledge and learn new things from you
• The opportunity to work on a wide variety of projects, including cutting edge technology, and interesting technical & performance challenges
• A culture where high quality maintainable code is valued over quick hacks
• Generous funding pot for training courses and conferences
• Flexible working options, and home working support
• Competitive salary
• Relaxed dress-code
• Think you know every IntelliJ shortcut? Think again. (yes, this is a benefit!)