Location: London, Liverpool St
Why you should join us
We’ve built up a team of outstanding and passionate people, and we work hard to keep them. We’re devoted to making Rotageek the best place to work, and so while we work hard, we also have fun and look after our culture, too. We offer plenty of flexibility, amazing team events and lots of opportunities to grow.
Our tech team is building a really strong scheduling product - and you’ll play a primary role in helping us achieve this. You’ll use engineering principles like OO, SOLID, and TDD. Your day-to-day will be mainly focused on multi-threading and performance optimisations, and you will work together with our data science team to help build and evaluate machine learning algorithms using the best optimisation techniques drawn from machine learning, reinforcement learning and non-convex optimisation.
A few years ago, Rotageek was a small side project; our CEO, an A&E doctor, wanted to improve scheduling in his hospital department. Today, we’re a software company reinventing how shift-work employees are scheduled.
We’re helping some of the largest UK organisations move from paper and excel based rotas to intelligent and interactive schedules. In doing so, we’re helping employees gain more ownership over their hours - improving their work-life balance - whilst making sure that businesses improve how they run their operations. We use intelligent technology to make sure the right staff are in the right place at the right time, whilst making the process of creating, communicating and modifying a rota as easy as possible.
What we expect from our C++ Developer:
- You have outstanding software development skills. You write clean, maintainable and technically sound code using OO and SOLID Principles
- You want to build something new. You can suggest new and brave ideas, technologies and ways of working, and have a collaborative approach to working.
As the ideal candidate, you need to have:
- 3-5 years commercial C++ optimisation and implementation experience
- Experience working on low level algorithms and optimisation problems
- A strong understanding of concurrency, multi-threading and memory management
- A good understanding of test-driven development and experience using TDD
Nice to haves:
- Data Science experience
- GPU exposure