What will you work on
C++ plays a critical 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.
A day in the life of a C++ Software Engineer
"I arrive early at work to avoid traffic and grab some water and some fruits, say quick hello to everybody and I lock myself in my room. Okay, not really lock, just shut the door and put some music on the speakers and create some battle plan sketches for the coming day. A quick double-check that my tickets are up to date, then pick the most urgent or challenging one and start coding.
When everybody is in, we do a quick coffee break: time to brag, complain, ask for help, and discuss local topics (both personal and job related).
At 10:00 everybody heads to their daily stand-up. If we decide to order food, we make our choices after stand-up.
I put my headphones on and start the fun! Sometimes, I get interrupted with some urgent code-review request. If something is not clear, I just grab the video-phone and call. I like it as it feels almost like I am next to the person I want to talk, even if he is thousands of miles away.
At 12:00 lunchtime - another nice opportunity to socialize, but somehow we usually end up discussing functionality, architecture, best practices.
Before diving into creative mood, I have a quick look at the calendar as meetings usually take place after lunch, check if I get some meeting and prepare for it.
Around 3 PM our colleagues from the US start to show up. We strive to test as much as possible before my workday ends. They will continue the work after I leave the office."
Some of the things we use in development process
- Template Meta-Programming (TMP)
- Atlassian Stack
- Bitbucket for code review. We do all work in pull requests, which are reviewed by other developers
- Bamboo for continuous integration
- JIRA, Confluence
- Python for scripts/testing
- IDE of our choice (Vim, Emacs, CLion, Eclipse, NetBeans etc.)
What you need to succeed:
- BSc or MSc in Computing Science or equivalent;
- A Minimum of 3 years working experience as a Software eEngineer in C++;
- Knowledge of algorithms and data structures;
- Interest in achieving maximum performance from available hardware and software;
- Ability to write clean, reliable and highly scaleable code;
- Ability to communicate with technical and business colleagues;
- Fluency in English.
Flow Traders offers you an exciting job and lots of opportunities within the most dynamic of environments with an excellent compensation package. We like to think that talent grows at Flow and stays at Flow. To ensure this, we provide our employees with the best working environment, the latest technology, continuous support, and we go out of our way to retain the small business feeling with which we started. We offer a competitive salary and reserve a percentage of our business results for our bonus pool.
Flow Traders grew to be as successful as we are today out of the expertise and experience of our founding partners. Our non-hierarchical approach stimulates innovation and achievement. We invest in our talented, highly motivated people since they hold the key to our success. Our demanding, sophisticated work continuously puts us to the test. We wouldn't have it any other way. We. Love. This. Job.