Overview
R&D Software Engineer – Location: Surrey, UK • Type: Full-Time • Salary: Competitive (DOE) + Excellent Benefits
Join a world-leading innovator in cutting-edge technology. The R&D team drives innovations, shapes and delivers the next generation of technical capabilities across a diverse software portfolio. The Innovation Team operates at the intersection of research, engineering, and product development, exploring emerging technologies and transforming ideas into tools that create value for users. This role is versatile and high-impact, suitable for candidates across the spectrum—from research scientists to research software engineers and production-grade developers.
Responsibilities
- Contribute to early-stage research and prototyping of modeling, optimization, AI, or simulation approaches.
- Design and implement algorithms, numerical methods, and computational models for complex engineering and scientific problems.
- Translate exploratory research code into reliable, maintainable, and high-performance software for internal or customer use.
- Work across languages and environments (e.g., Python for research, C++/C# or other compiled languages for production systems).
- Collaborate with researchers, domain specialists, and software engineers to identify promising ideas and develop practical solutions.
- Help define technical approaches and best practices for innovation projects.
- Contribute to code quality through testing, documentation, and sound software engineering principles.
- Take ownership of technical workstreams from concept through to implementation and integration.
- For more experienced candidates: provide technical direction on innovation-focused projects, mentor or guide other engineers and researchers, and help shape the longer-term technical roadmap in selected areas of innovation.
Qualifications and Skills
We are open to diverse profiles—whether you are research-oriented, engineering-focused, or a blend of both.
Essential
- An advanced degree (Master's, PhD, or equivalent) in a technical field such as Engineering, Physical Sciences, Mathematics, Computer Science, or related.
- Strong analytical and problem-solving skills with experience tackling complex technical challenges.
- Solid programming ability and experience developing technical or scientific software in one or more languages (Python, C++, C# preferred).
- Ability to work effectively in a collaborative, multidisciplinary environment.
- Strong communication skills and the ability to explain technical ideas clearly.
Research-Focused Candidates
- Experience in machine learning, optimization, control, probabilistic modeling, or related fields.
- Development of new algorithms, models, or computational methods.
- Scientific computing, simulation, or numerical methods.
Software Engineering-Focused Candidates
- Professional software development, ideally in scientific or technical domains.
- Writing high-quality, maintainable code in one or more languages (e.g., C++, C# or similar).
- Expertise in software design, testing, and maintainability.
Beneficial (Not Required)
- Experience in applied R&D, innovation, or advanced technology teams.
- Exposure to interdisciplinary areas like digital twins, agent-based systems, reinforcement learning, or advanced optimization.
- Experience mentoring others, leading small technical projects, or guiding technical direction.
Why Join?
- Be at the forefront of technological breakthroughs in a supportive, innovative environment.
- Collaborate with top-tier experts on projects that shape industry-leading products.
- Opportunities for growth, mentorship, and leadership.
- Competitive salary, flexible working, and comprehensive benefits package.
How to Apply
If you're ready to innovate and make a real difference, apply now. Send your CV and a cover letter highlighting your relevant experience.
We encourage applications from diverse backgrounds—let's build the future together.