About the Company
At Octeract we drive innovation in the mathematical optimisation industry. We are transforming how users experience their optimisation workflow, how they interact with optimisation solvers, and what is possible to solve in practice.
To achieve this, we have developed the first off-the-shelf massively parallel global MINLP optimisation solver which can guarantee the globality of the optimal solution.
The founding vision of the company is built around three pillars:
- Automate knowledge-intensive tasks that currently take months to complete
- Exploit distributed architecture and recent coding innovations to build advanced, click-and-forget solving technology
- Lower the knowledge barriers towards using this math-intensive technology stack through intelligent modelling tools and software innovation
We enable users to work 100 times faster, use state-of-the-art math with minimal knowledge, and rapidly solve optimisation problems previously thought impossible to solve.
About the role
You will work in a multi-cultural team of highly-skilled professionals, on a mission to push the boundaries of what is possible to solve using massively parallel optimisation technology. At Octeract, we research nearly every field of optimisation, including (MI)LP, (MI)QP, (MI)QCQP, (MI)NLP (local and global), and Discontinuous MINLP, so there’s a place for every relevant background as long as you know what you’re doing. As an algorithms R&D engineer, you will:
- Identify and prototype promising algorithms from the literature.
- Adapt serial algorithms to work in our massively parallel framework.
- Identify and test algorithmic crossovers between different optimisation disciplines.
- Create scalable optimisation algorithms, both with respect to problem size and the number of parallel workers.
- Create new algorithms for a wide range of optimisation problem classes.
- Create mathematical tricks and reformulations that our solvers can automatically apply to accelerate solution times.
- Script automated reformulations that protect users against common modelling errors, and automate menial mathematical tasks.
- Improve the efficiency of existing algorithms.
- Have the opportunity to learn advanced C++, professional programming practices, how to use automated testing frameworks, and of course optimisation theory and algorithms from different fields.
- Investigate the reasons behind convergence and performance issues.
- Engage in satisfying and challenging work, where your contributions have a direct and meaningful impact on people’s lives and the improvement of optimisation technology.
- PhD in optimisation algorithms or demonstrable level of equivalent experience in the sector
- Deep knowledge of at least one main field of optimisation (e.g., convex, linear, MIP)
- Good knowledge of at least one programming language
If this sounds like the right fit for you, apply for the position by sending your CV to [email protected]