C++ plays a crucial role in our critical path (so called ultra-low latency path) from handling huge amounts of market data in reliable, and in the fastest possible manner, to making business decisions (trading strategies) to shooting huge amounts of orders back to the Exchanges.
We expect our new colleague to write code, create new designs and maintain existing applications with focus on low latency, and stability. Our business users are typically only a walk away, which helps to create short feedback loops and to see your changes provide value in the shortest time possible.
To enable that, we strive to follow best software engineering practices and are supported by the best working environment, latest technology and continuous support from all parts of Flow Traders organization.
We work in small teams grouped by business area. Each team is typically responsible for a set of related applications, and works in tight collaboration with business owners. We maintain libraries shared across the product groups to enable code re-use and to have a common view on application architecture. We write extensive unit tests, and have a QA team that supports us with integration testing. We follow agile practices, tailored to the problem area and preferred team approach.
Some of the technologies we use in the development process:
IDE of our choice (Vim, Emacs, CLion, Eclipse, NetBeans, Sublime etc.)
Python/Bash for scripts/testing
Bitbucket for code review. We do all work in pull requests, which are reviewed by other developers
Bamboo for continuous integration
A day in the life
Morning normally starts with a standup meeting with your team. This is an opportunity to catch up on the progress of development, raise problems and discuss plans for the day. A business representative is also present, so questions to trading can be resolved instantly. After standup, you go back to your desk to program, review code on pull requests submitted by colleagues, and discuss functionality with traders. Sometimes a production issue is raised by support, and help from development is needed to provide advice. At lunchtime, you join your team for lunch in the lounge and enjoy a company-provided lunch. During the day, if there are no pressing issues or you feel that you need a break, you can unwind at the pool table or table tennis, or do a workout at the gym. After the day is done, you can join your colleagues to celebrate a successful release or just socialize at our bar.
What you need to succeed
Ideally 5+ years of C++ development experience
BSc, MSc, or PhD in Computer Science, Mathematics or equivalent
Strong software engineering skills with C++ as your primary language
Knowledge in computer science fundamentals
Interest in achieving maximum performance from available hardware and software
Ambition to continuously learn how to write clean, reliable and highly maintainable code
Ability to express your ideas and thoughts to your colleagues clearly in English
Previous experience in the financial industry is highly advantageous
What we offer
We like to think that talent grows at Flow and stays at Flow. To ensure this, we provide our employees with an extensive onboarding program, access to Flow Academy, the best working environment, the latest technology and continuous support. We go out of our way to retain the small business feeling with which we started and stimulate innovation and collaboration through teamwork and our non-hierarchical approach. We offer competitive salary, annual discretionary bonus and other fantastic perks and benefits, such as:
Flow Academy for continuous learning and opportunities to attend domain-related conferences
Our own company boat
In-house gym and sessions with our nutritionist or personal trainer
In-house Bar and Lounge with an arcade, table tennis, billiards table and game consoles
Daily catered lunch, amazing coffee and a fully stocked kitchen and snack bar
Weekly chair massages
Annual company trip and a variety of events throughout the year, such as the Year End Party that exceeds expectations
Global rotations between our offices worldwide
Flow Traders does not accept unsolicited resumes from any professional staffing or search firms. All resumes, and any other information identifying potential candidates, submitted to any employee at Flow Traders via-email, the Internet or directly without a valid and signed search agreement will be deemed free to contact by Flow Traders without any restrictions and no placement fee of any kind will be paid in the event the candidate is hired by Flow Traders.