Senior Backend Developer
Senior Software EngineerAbingdonAre you an experienced Software Engineer looking to combine cutting-edge technology with scientific innovation We are seeking a Senior Software Engineer to join a highly skilled team developing next-generation Rock Physics and Geoscience applications used across the global energy sector. This is an opportunity to work on complex scientific software, influence technical direction, and help modernise a suite of industry-leading desktop and cloud-based products.This is a hands-on engineering role where you'll be actively involved in software design, architecture, development, code reviews, and mentoring while working alongside Product Owners, Scientists, and Technical Leads.What You'll Be DoingDesigning, developing and maintaining high-performance desktop and cloud applications.Taking ownership of technical solutions from architecture through to deployment.Working across modern C#/.NET and C++ codebases.Modernising legacy scientific software and migrating applications to modern frameworks and user experiences.Implementing best practices around software architecture, design patterns, SOLID principles, testing and CI/CD.Collaborating with Product Owners and technical stakeholders to define and deliver scalable solutions.Conducting code reviews and mentoring developers across the team.Exploring and adopting AI-assisted development tools and emerging technologies to improve productivity and software quality.Contributing to technical strategy and continuous improvement initiatives.What We're Looking For5+ years' experience developing production-grade software applications.Strong commercial experience with C# and .NET.Strong C and/or C++ development experience.Experience building complex desktop applications within engineering, scientific, technical or data-intensive environments.Solid understanding of software architecture, object-oriented design, design patterns and SOLID principles.Experience with automated testing, Git, code reviews and CI/CD pipelines.Exposure to cloud technologies such as Azure, AWS or Google Cloud.Experience modernising legacy applications and improving UI/UX frameworks.Excellent communication and stakeholder management skills.Degree qualified in Computer Science, Software Engineering or a related Engineering discipline.Desirable ExperienceScientific, engineering, geoscience, geophysics, reservoir engineering or technical software development experience.Experience working with large scientific datasets and numerical algorithms.Knowledge of AI-assisted software development tools such as GitHub Copilot and AI-powered testing tools.If you're passionate about building high-quality software, enjoy solving complex technical challenges, and want to work at the intersection of software engineering and science, we'd love to hear from you.