You will build software components using C#/.NET and C++, contributing across the stack from device control and data acquisition to user interfaces, with guidance on overall software architecture.
You will modernise existing code through thoughtful refactoring, improving test coverage, introducing contemporary design patterns, and coordinating changes to minimise delivery risk
You will apply strong engineering practices by following object‑oriented design principles, writing clean and maintainable code, participating meaningfully in code reviews, and adhering to established architectural patterns
You will prioritise thorough testing, clear documentation, and effective tooling to deliver reliable and scalable software
You will contribute to Agile delivery by participating in refinement sessions, providing estimates, and breaking down work, delivering iteratively with feedback loops, and collaborating to keep work flowing smoothly
You will support knowledge sharing by pairing with peers, contributing to technical discussions, and offering constructive feedback
You may offer targeted mentoring to junior engineers on specific tasks.
Requirements
Experience with automated testing frameworks and practices, such as contributing to regression automation or working with tools like Playwright or BDD frameworks—to improve reliability, coverage, and delivery speed
An interest in science, engineering, or instrumentation
You enjoy solving meaningful technical problems, take pride in producing high quality software, and collaborate effectively with others.
You are eager to grow your engineering skills, contribute to a supportive team culture
Tech Stack
.NET
Benefits
Flexitime: (core hours 10.00am
12.00pm and 2.00pm
3.00pm) to help you to achieve a good work-life balance