The successful applicant will have experience working on projects in relation to Web client/server applications within an engineering manufacturing environment. It is key to this role that you have experience of working with hardware and communication protocols. You will also have responsibility for designing, developing, and maintaining software for our products. Key Responsibilities Plan, track, and manage software projects - working both independently and collaboratively within Agile teams to meet project objectives and deadlines. Design, develop, test, and maintain application and GUI software across the full software development lifecycle. Capture and interpret customer and user requirements to deliver high-quality, reliable software solutions. Develop and maintain real-time and post-process data analysis software, incorporating mathematical algorithms and visualisation tools. Apply relevant expertise in order to create robust, scalable, and maintainable code; whilst adhering to company policies and processes. Develop and maintain software architecture using best practices such as multi-threading, design patterns, and SOLID principles. Specify, install, and maintain development tools and technologies (e.g., GitLab DevOps, IDEs, testing frameworks). Investigate and resolve software issues or feature requests raised by internal teams, representatives, or customers. Contribute to R&D initiatives by identifying opportunities for innovation and improvement in existing or new software products. Work on cross-platform projects including cloud-based, RESTful APIs, and client/server-based solutions. Provide guidance, mentoring, and technical support to junior team members. Skills, Knowledge and Expertise Minimum of 2:1 degree in programming or computer science or equivalent industry experience required. Strong programming skills in C# and XAML, with experience using .NET / .NET Core frameworks and cloud-based architectures such as AWS. Solid understanding of software architecture, design patterns, and multi-threaded applications. Experience developing user interfaces, data visualisation tools, and interactive software. Proficient in version control, testing, and release management. Experience practitioner of Agile methodologies and collaborative software development environments. Excellent problem-solving and analytical skills, with a logical and creative approach to challenges. Strong communication and teamwork, able to work effectively across technical and non-technical teams. Self-motivated and results-driven, with the ability to manage priorities and meet deadlines. Committed to high standards, quality, and continuous improvement in all aspects of work. Experience mentoring or supporting junior engineers is advantageous. Benefits Discretionary annual profit share bonus Holiday entitlement of 27 days plus bank holidays 5% employee and 5% employer contributions through our via our salary sacrifice workplace pension scheme with Scottish Widows Group Income Protection Insurance Scheme Private Medical Insurance Death In Service Scheme Electric Vehicle Scheme Smart casual dress code