Graduate C++ Software Engineer
About the Role
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.
Responsibilities:
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
Requirements:
- A background in Computer Science or similar
- Highly skilled in C++
- Programming knowledge in Python is preferable but can otherwise be learned on the job
- Serious about code quality, taking full responsibility and accountability for your
contributions - 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
Benefits:
- A comprehensive theoretical and practical training program provided by our dedicated in-
house trainer - Sign-on bonus of EUR 20k, base salary of EUR 100k
- Excellent variable pay and growth opportunities
- Outstanding performance is also rewarded with shareholding in the company
- A relocation package when moving from abroad, including a relocation budget, flight
coverage, 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)
Teams:
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.
Process:
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. HR Interview: In this conversation with one of our recruiters, 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.
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-depth 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!