C++ Software Engineer
C++ Software Engineer
As a Software Engineer at Da Vinci, you’ll work closely with a team of highly skilled traders and quant researchers. You will have direct, immediate, and large-scale impact on the company, whether you focus on our trading algorithms or the architecture of our technology’s core components.
Da Vinci engineers are hired for their passion and knack for coding and solving technical challenges. They love to think outside the box and see their code in production only hours after the initial idea was born. All our software engineers take full ownership of projects directly relevant to the core business, seeing them through from idea to implementation to optimisation and maintenance. Combined with the fast feedback loops and multidisciplinary collaboration, this lays the groundwork for an intellectually stimulating and exciting day-to-day life in our engineering team.
Da Vinci offers a dynamic work environment, where employees are given the freedom to come up with great ideas and the space to push these to completion. This is a once-in-a-lifetime opportunity to be part of a successful and fast-growing company.
As an all-round engineer, no days are the same. You’ll work with a variety of products and touch many different code components on a single project. Your main responsibility is to bring new features into production from beginning to end. Depending on the project this can entail many different things, but here are some examples of typical tasks you may encounter in a day:
- Understand and discuss requirements with team members, i.e. traders and researchers
- Design, implement, test and optimise trading algorithms and strategies ensuring our competitiveness in the market
- Continuously improve and guard the long-term architecture of our in-house developed trading system in terms of latency, accuracy, capacity, regulations etc.
- Work closely with Trading, Research and Trading Intelligence to innovate the way we do things, i.e. by automating and optimising workflows
- Manage various operational aspects to bring your projects to completion, such as deploy, monitor and tweak systems
- Investigate opportunities and solve problems and as they occur with a hands-on, pragmatic approach
- Experience with creating C++ production code
- Python experience is preferable but can otherwise be learned on the job
- Serious about code quality, taking full responsibility and accountability for your contributions
- Enjoy using lean and efficient code to solve a wide variety of problems
- Practical and results-driven attitude
- Good communication skills, with the ability to understand requirements and explain technical concepts to non-technical people
- Desire to work in a multidisciplinary team environment, including collaborating with traders and researchers on a daily basis
- An opportunity to work beside the best in the field
- Base salary of EUR 80k to 120k (depending on the level of experience)
- Excellent variable pay based on performance, with a fair bonus-structure awarding company profits to software engineers, traders and researchers alike
- Outstanding performance is also rewarded with shareholding in the company
- A relocation package when moving from abroad, including flight coverage, temporary accommodation upon arrival, house-finding service and expat support
- Meals during work hours
- Social events and after-work drinks
- Reimbursement of travel costs
- Sponsored gym membership
- In-house game room (pool table, board games and console games)
As a software engineer, you will be working in one of our four core business teams, divided by markets, collaborating with traders, quant researchers and trading systems engineers. Each team have their own unique challenges and projects, and the freedom to adjust their processes to best fit the team needs. As a crucial part of the team, you will shape the priorities and goals by bringing the valued perspective of an engineer. Although our teams are tight-knit and you’ll work closely with traders and researchers on all projects, we keep a transparent culture between teams and encourage as much communication and knowledge sharing across the company as possible.
Our trading system:
As a trading company, one of our proudest moments was going live with our very own trading system, developed from scratch by our excellent engineers. Melzi, named after Leonardo Da Vinci’s favourite student, was designed with our very own unique needs and priorities in mind. Since launching, our traders have been very excited to work with this custom-made and highly efficient system.
HR Interview: If your experience and profile match what we look for, we will invite you to an initial conversation with the recruiter. In this conversation, you will learn more about Da Vinci and give us the opportunity to get to know you better. We will assess whether your soft skills and motivators fit our way of working.
Coding challenge: This take-home assignment will give you a chance to understand the role further through similar tasks to the ones you’ll encounter on our trading floor. It allows us to assess your coding skills, as well as your approach to problem solving.
Technical Interview: During this conversation with one of our lead engineers you will get to geek out on your knowledge of computer science and C++ programming.
Final Round: This is a combination of an in-dept technical interview where you will do some live coding, and a final HR interview. Whenever possible we will invite you to the office to feel the atmosphere and get to know the team you might see a lot more of in the future!