Senior Python Engineer

Job details

Posted Wednesday 28 October 2026
Job type Permanent
Reference 505
Recruiter Name Geraldine Flanagan

Python Software Engineer – Energy Analytics & Optimisation

The opportunity

Are you a software engineer who enjoys solving complex technical problems and developing software that tackles real-world challenges?

This is an opportunity to join a specialist engineering team working on analytics and optimisation software within the energy sector. You will contribute to the development of software, data-processing tools and research prototypes, working alongside experienced engineers on technically challenging projects.

The role would suit a developer with strong Python skills, a solid understanding of computer science fundamentals and an interest in mathematics, algorithms and data-driven technology.

Hybrid role  - required to be in the office twice a month.

What you will do

  • Develop, test and maintain Python software for analytics, data processing and automation.

  • Build software components and prototypes to support research and development.

  • Work with algorithms, mathematical models, optimisation workflows and time-series data.

  • Use SQL and databases to manage and process data.

  • Investigate technical issues, debug code and improve software performance.

  • Research new approaches and technologies to solve engineering problems.

  • Collaborate with senior engineers and technical specialists, taking ownership of your work.

  • Document solutions clearly and communicate technical findings to colleagues and customers.

What we are looking for

  • A degree in Computer Science, Software Engineering, Mathematics, Electrical Engineering or a related technical discipline with a software development component.

  • Practical experience developing in Python, including writing, testing, debugging and maintaining code.

  • A sound understanding of programming fundamentals, algorithms and data structures.

  • Experience working in Linux environments and using command-line tools.

  • Working knowledge of SQL and relational databases.

  • Strong analytical and problem-solving skills, with the ability to work independently and approach unfamiliar challenges methodically.

  • Clear communication skills and a willingness to contribute ideas in technical discussions.

Additional experience that would be useful

  • Working with time-series data, statistical methods or optimisation problems.

  • Experience with APIs, data streams or messaging systems.

  • Exposure to NoSQL or time-series databases.

  • Familiarity with Docker and cloud platforms such as AWS, Azure or Google Cloud.

  • Knowledge of C++, Rust or Go.

  • An interest in energy technology, machine learning or emerging AI technologies.

You do not need to have experience with every technology listed above. A strong foundation in Python, computer science and analytical problem-solving is the priority.

Why consider this role?

  • Work on technically challenging problems in the energy technology sector.

  • Join a small, focused team with an emphasis on research, innovation and practical implementation.

  • Work closely with experienced engineers and develop your knowledge across software, data and mathematical modelling.

  • Gain exposure to new technologies and opportunities to learn through hands-on development and independent research.

Interested?

If you enjoy programming, analytical thinking and developing solutions to problems that do not always have straightforward answers, we would like to hear from you.