C/C++ experienced coder
Start date immediate.
Full time. Salary competitive and depending on experience.
Candidates will be considered on a rolling basis until the position is filled.
Company Profile
OptimalSlope is a young and dynamic start-up growing fast with a global outlook. Recently we have been awarded a prestigious SMART grant from Innovate UK (the UK Innovation Agency of 500k) and we have just started our seed round.
We are very passionate about what we do. Our mission is to make the world a better place by contributing to decarbonise the mining industry via our software products which bring a paradigm shift in the way open-pit mines are designed and excavated.
At present mining is responsible for 8% of the world CO2 emissions. Our groundbreaking software, designed to create topologically optimized pitwalls at various stages of an open-pit mine, holds the potential to generate remarkable reductions. Based on data extracted from our comprehensive studies of metalliferous mines, published in esteemed peer-reviewed mining Journals[1], we anticipate savings in waste rock of up to 600,000 tonnes per mine.
We are intrigued by the prospect of deploying our cutting-edge technology to extract vital metals, e.g. copper, lithium, iron and Rare Earth Elements. These metals play a pivotal role in the construction of renewable energy infrastructure and the electrification processes crucial for achieving a net-zero emissions goal, thereby reducing reliance on fossil fuel.
We are proudly a member of the Centre for Climate Change and Innovation of the Grantham Institute at Imperial College (cohort 2) and of the Australian Think and Act Differently, the business acceleration funded by BHP to bring disruptive innovations to mining. Here in the UK, we have partnered with a few large consulting companies engaged in the design of metalliferous open pit mines across the whole world.
[1] see https://optimalslope.com/Case-Studies.html
Role Description
Our goal is to speed up 5-10 times the overall computational time of our current codebase written in Matlab and highly parallelised. The job consists of translating the current code to C/C++ to reduce the execution time of the current algorithms, identifying performance bottlenecks and resolving them. This position is ideal for passionate programmers as it requires knowledge of and/or willingness to explore existing advanced computational C/C++ libraries as well as the skills to successfully integrate them in order to develop a highly efficient parallelised code. Another key objective will be the implementation of new algorithms developed to extend the code to complex stratigraphies in C/C++.
Systematic benchmarking and testing will be carried out to assess newly implemented solutions in terms of speed-up and functional correctness using several case studies.
Responsibilities
The role encompasses the following key responsibilities:
· Translate existing Matlab algorithms into C/C++.
· Develop new algorithms or extend the current ones.
· Find computationally efficient ways to restructure code (e.g., through more efficient algorithms) with the help of existing robust numerical libraries or other custom solutions.
· Preparation of profiling environment to evaluate speed-up improvements and running case study simulations to validate the functional correctness of the developed software.
· Document, review and amend software features according to the feedback received from the company team.
Skills and Qualifications
· A minimum requirement of a BSc degree in Computer science or Software engineering. Applicants with other STEM degrees are welcome to apply as long as they can demonstrate equivalent computing experience. Possession of an MSc, PhD, or comparable experience in Research and Development (R&D) will be taken into consideration when determining the compensation package.
· proficient in C/C++
· good knowledge of Matlab.
· An understanding of code complexity analysis principles or hands-on experience with optimisation of high-performance scientific applications is considered as an advantage.
· An experience in application profiling/benchmarking is a plus.
· UK residency essential
· The job will be hybrid with office attendance expected 1-2 days a week and remote working within the UK to be agreed upon
How To Apply
To apply for the role, please send to stefano_utili@optimalslope.com your full CV highlighting all your skills, education and work experiences relevant for the job and a one page cover letter outlining your motivation to apply for the job. We aim to provide feedback within 5 working days with the outcome of your application. At the end of every week we will make a short-list of candidates for interviews.