Senior Algorithm Developer
About The Position
Optibus is passionate about the future of mass transit – we want more people to use it, and we believe it should take center stage as the world of mobility changes around us.
Our vision is to be the technology engine behind better and more efficient means of mass transit, making it the first choice for passengers and cities alike. Our technology is at the center of making this happen, with a unique combination of AI and optimization algorithms, since better scheduling and operations make for better mass transit service, for all. We’re a well-funded startup whose product is deployed at more than 300 cities worldwide, and we are quickly becoming a leader in the space – and our culture reflects this: we like fun and super smart people, and we’re pretty serious about making mass transit radically better.
We are looking for a Senior Algorithm Developer with vast hands-on experience and a deep knowledge in graph and other computer science algorithms and a hands on experience of algorithm development, POCs and production code development. The transportation world is full of opportunities for new innovative algorithms to cover anything from routing and planning to scheduling and dispatching. Real world transportation scenarios have a huge scale and need top notch algorithms, optimization and heuristics.
Examples of stuff you will own:
- Algorithm research, design and development
- Improve existing algorithms, for better runtime and scale
- Solving Optibus’ most difficult and complicated problems with the highest research, academic and business impact
- Vast knowledge of graph data structures and algorithms
- Proven experience of developing and implementing high end algorithms that make a real impact on quality, performance and business metrics
- Production grade programming
- At least 3 years of algorithms research and development experience
- M.Sc/Ph.D degree in Math, Physics, Computer Science or related
It will be great if you have:
- Senior level experience with programming in Python
- Experience with other optimization algorithms as Linear/Integer programming (Discrete and Continuous)
- Experience with search algorithms and heuristics
- Advanced integer programming techniques such as column generation, lagrangian relaxations, etc.
- Hands on experience with optimization solvers for integer programming, such as Cplex, Gurobi