Software Design Engineer

Mploy Group
Eynsham, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Compensation
£ 65K

Job location

Eynsham, United Kingdom

Tech stack

ASP.NET
.NET
Microsoft Windows
API
Azure
C Sharp (Programming Language)
Cloud Computing
Databases
Continuous Integration
Software Design Patterns
Linux
DevOps
Electronic Data Interchange (EDI)
Ethernet
EtherCAT
Design of User Interfaces
Python
Windows Presentation Foundation
Model View ViewModel
NoSQL
OpenCV
Real-Time Operating Systems
OPC Unified Architecture
Software Engineering
Software Systems
SQL Databases
Systems Integration
Visual Systems
Data Logging
Data Processing
Scripting (Bash/Python/Go/Ruby)
Real Time Systems
.NET Core
Delivery Pipeline
Gitlab
GIT
InfluxDB
Industrial Software
Software Version Control

Job description

  • Design, develop, and maintain high-quality software solutions using C# (.NET / .NET Core)
  • Build intuitive user interfaces using WPF, following best practices such as MVVM and other proven design patterns
  • Develop and support real-time systems running on RTOS, Windows, or Linux platforms
  • Integrate and control industrial hardware including motion controllers, lasers, and vision systems
  • Implement reliable communication between systems using industrial Ethernet protocols and OPC UA
  • Develop automation, data processing, and tooling solutions using Python
  • Collaborate closely with multidisciplinary teams to deliver robust, production-ready systems
  • Support continuous improvement through version control, testing, and CI/CD pipelines

Technologies:

  • API
  • Azure
  • C#
  • CI/CD
  • DevOps
  • EtherCAT
  • Ethernet
  • Git
  • GitLab
  • Hardware
  • Support
  • Linux
  • MVVM
  • NoSQL
  • Profinet
  • Python
  • SQL
  • WPF
  • Windows
  • opencv
  • UX UI Design
  • ASP.NET
  • Cloud, We are looking for a talented Software Design Engineer to join our engineering team and play a key role in the design and development of high-performance industrial and automation software. You will work on complex, real-time systems that interface closely with hardware such as motion controllers, lasers, and machine-vision components. This role is ideal for someone who enjoys solving challenging technical problems, working across software and hardware boundaries, and contributing to robust, scalable system architectures. If you are excited by the opportunity to work on cutting-edge industrial software and contribute to innovative, real-world engineering solutions, we look forward to hearing from you.

Requirements

  • Expert-level experience in C# (.NET / .NET Core)
  • Strong experience with WPF for desktop UI development
  • Solid understanding of software design patterns (e.g. MVVM, Factory) and clean architecture principles
  • Good Python skills for automation, scripting, and data handling
  • Experience developing real-time systems on RTOS, Windows, or Linux
  • Hands-on experience programming industrial PCs and motion controllers such as Beckhoff, Delta Tau, Aerotech, or Galil
  • Deep understanding of industrial Ethernet protocols including EtherCAT, PROFINET, and SERCOS
  • Experience using OPC UA for system integration and data exchange
  • Practical experience controlling industrial lasers (fibre, CO2, excimer) via API or serial/Ethernet interfaces
  • Experience calibrating and controlling galvo scanners (e.g. ScanLab, Cambridge Technology)
  • Strong machine-vision experience using tools such as Halcon and/or OpenCV
  • Proficient with Git for version control
  • Experience working with CI/CD pipelines (Azure DevOps, GitLab)
  • Familiarity with data logging and databases, including SQL, NoSQL, and time-series databases such as InfluxDB

Apply for this position