APPLIED RESEARCH SOFTWARE ENGINEER

Posted 20 hours 24 minutes ago by Petroleum Experts

Permanent
Not Specified
Research Jobs
Not Specified, United Kingdom
Job Description

Our organisation was created in 1990 as a vendor of integrated modelling software to the oil and gas industry. Since then we have built up a hugely successful business with more than 450 clients across the world, ranging from small consultancies to major multinational corporations. In our last trading year the company turned over £66m and has significant cash reserves which are to be held for future expansion.

In this regard, we see an exciting future which embraces the challenges around energy transition technologies and renewables. In addition, we see huge scope in applying the lessons that we have learnt within this industry to other sectors, notably mining, banking, and medicine.

With this in mind, the company is on the cusp of a major expansion. Part of this involves the relocation of the headquarters from Edinburgh to Guildford in Surrey, to take advantage of the improved travel links, recruitment possibilities, and links to London. The new Guildford office will become the company headquarters in September 2025.

PE Limited currently has 100 staff, split roughly between technical support, providing solutions for customers, product development, and contract and licensing administration. The technical staff are all highly qualified, with almost everyone having at least a Masters qualification and many holding PhDs.

Package

We offer an exceptional package which includes salary, performance related bonuses, other benefits and relocation assistance (where applicable). The company encourages and structures its salary based on personal performance and contribution to the success of others.

About this Vacancy

PE Limited is seeking a software scientist to join its Innovation team - a forward-looking group within the wider Development and AI Engineering team focused on high-impact research and early-stage prototyping.

This role is ideal for someone who thrives at the intersection of scientific innovation and research and robust software engineering.

Responsibilities

You will:

  1. Act as an interface between the Innovation team and the core Development team, translating experimental research code into production-quality implementations.
  2. Work with research prototypes written in fast-to-develop languages such as Python, Julia, or R, and help refactor or reimplement them into high-performance, maintainable codebases (e.g., C, C++, C#, Fortran).
  3. Contribute to the early-stage exploration of technologies such as AI/ML/RL, optimization, digital twins, control systems, agent-based systems, and probabilistic programming.
  4. Collaborate with scientists, engineers, and developers to identify promising ideas and guide their technical evolution into scalable software solutions.
  5. Help ensure that research outcomes are production-ready by integrating testing, documentation, and code quality standards early in the pipeline.
  6. Participate in cross-functional design, implementation, testing, and deployment of our software toolkits.
Qualifications
  • An advanced degree (Master's, PhD, or equivalent experience) in a technical field such as Physical Sciences, Engineering, Geoscience, Mathematics, or Computer Science.
  • Proven experience working at the interface of research and software development - especially translating prototype code into performant, production-ready implementations.
  • Proficiency in at least one high-level scientific language (e.g., Python, Julia) and one or more compiled systems languages (e.g., C, C++, C#, Fortran).
  • A solid foundation in software engineering principles, with a focus on modular design, testing, documentation and maintainability.
  • Strong communication skills and experience collaborating across research and engineering teams.
  • Organised, proactive, and comfortable operating in a fast-paced, exploratory environment.

Additional technical competency across a selection of the following disciplines may be beneficial:

  • Experience with scientific computing, numerical methods, or computational modelling.
  • Familiarity with emerging and interdisciplinary technologies such as: machine learning, digital twins, agentic systems, reinforcement learning, probabilistic computing, or control systems.
  • Experience working in or alongside an applied R&D or innovation-focused team.