Company: BP
Skills: IT - Software Development
Education: High School/Secondary
Employment Type: Full Time Salaried Employee
Location: London, England, United Kingdom

In order to apply for this position, applicants MUST meet the following criteria. If your resume does not match these criteria, you will not be able to apply for this position.
     


As a Quantitative Software Engineer, you will be Joining a high performing team exposed to many of the most exciting business and technology challenges BP faces within its trading businesses today, focussing on maximising value from BP's assets and operationsAs a Quantitative Software Engineer, you will be Joining a high performing team exposed to many of the most exciting business and technology challenges BP faces within its trading businesses today, focussing on maximising value from BP's assets and operations. Typical solutions include use of advanced optimisation techniques (e.g. Heuristic Optimisation), Machine Learning and simulation based Reinforcement Learning
You will work closely with Traders and Operators to optimise various aspects of BP's operations, ranging from efficient logistical operations (for example, shipping scheduling), partnering with traders to ensure our portfolios are kept optimal. You will develop a deep understanding of the optimisation algorithms and of the business context in which the team operates.

Most of your time will be focused in writing code, while pursuing software engineering best practices for design, build and test. High-quality documentation, traceability and knowledge sharing is expected.
Additionally, you will work directly with the Optimisation Technical Team Lead on the evolution of the current technology platform in place, as well as the long-term strategy and roadmap for the increased use of optimisation in BP.

This is a unique role well positioned to create substantial value for the business and requires an individual with the right mix of technical, quantitative and communication skills.
* Key specialist of BP's Optimisation technology - functionally, technically and quantitatively.

* Work closely with the business to create value for the business through optimisation.
* Strive for excellence and continuous improvement in software architecture, Agile methods and build systems, as well as the underlying optimisation algorithms.
* Work with the Optimisation Technical Team Lead to shape the long-term strategy and roadmap for the expansion of optimisation activities across BP.
A quantitative degree - preferably with previous work related to optimisation.
* Strong mathematical and numeracy skills.
* Experience in optimisation. Examples include linear programming and solving a TSP using a heuristic approach such as simulated annealing, genetic algorithms or machine learning.
* Advanced knowledge of Java and associated ecosystem (Maven, Jenkins, for example).
* Good understanding of Computational Complexity Theory (EG: Big-O notation).
* Ability to work closely with the business, draw out their requirements and create a mathematical model.
* Strong communication skills with ability to present ideas well graphically as well as verbally.