Software Engineer
Posted 18 Sep 2026
Advertised as “T404 - Principal Engineer/ Senior Software Engineer C/C++ (Automation Machinery)”
BranchFactor Summary
The original posting with the fluff stripped out
- Level
- T404
- Expected experience
- 5+ yrs
- Management level
- Individual contributor
- Contract
- Full-time
Compensation
No salary listed for this role.
Role speciality
Industrial AutomationMachine Control
Useful technologies
Borland C++ BuilderC#C++Embarcadero C++ BuilderVCLWindows APIWindows GDI/GDI+WinUIWPF
Preferred qualifications
Field of studyComputer Engineering, Computer Science, Software Engineering (or related)
Study levelBachelor's
Job Responsibilities
- Design, develop, test, debug, and maintain reliable and high-performance industrial automation software using C++, C#, and WPF.
- Utilize Windows APIs and relevant libraries to interface with and control hardware components.
- Develop machine control functionalities using motion control cards to achieve accurate and precise motion.
- Integrate distributed I/O systems for sensor data acquisition and actuator control.
- Implement reliable software-hardware communication protocols to ensure efficient and stable data exchange.
- Apply advanced multithreading, synchronization, and concurrency techniques to optimize application performance and responsiveness.
- Implement efficient memory management using technologies such as memory-mapped files, file mapping objects, and memory sections.
- Effectively leverage the C++ Standard Library, templates, and reusable components to improve code quality, performance, and maintainability.
- Work with Windows synchronization objects, including events and mutexes, to support reliable inter-thread communication and synchronization.
- Develop user interfaces using WPF or WinUI, where required, to provide intuitive monitoring and machine-control functionality.
- Produce clean, well-documented, maintainable, and efficient code in accordance with software development best practices.
- Work closely with Electrical and Mechanical Engineers to understand machine requirements and translate system specifications into effective software solutions.
- Participate in code reviews, share technical knowledge, and provide constructive feedback to other developers.
- Keep up to date with the latest developments in C++, industrial automation, motion control, Windows development, and related software technologies.
Requirements
Job Requirements
- Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, or a related discipline, or equivalent practical experience.
- At least 5 years of hands-on experience developing industrial automation software using .