About this T404 - Principal Engineer/ Senior Software Engineer C/C++ (Automation Machinery) role at Talent Trader Group
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 C++, C#, and WPF.
- Demonstrated experience in programming and integrating motion control cards and distributed I/O systems for industrial machinery.
- Strong knowledge of Windows API development, system-level programming, and advanced memory management techniques.
- Solid understanding of the C++ Standard Library (STL), including extensive use of templates and reusable components.
- Practical experience with Windows synchronization and communication objects, particularly events and mutexes, for multithreading applications.
- Knowledge of Windows GDI/GDI+ for graphics and visualization applications is an advantage.
- Experience with Borland/Embarcadero C++ Builder and VCL platforms is highly desirable.
- Strong problem-solving, analytical, and critical-thinking skills, with a structured approach to troubleshooting complex software and machine-control issues.
- Excellent communication and collaboration skills, with the ability to work effectively with software, electrical, and mechanical engineering teams.
- Capable of working independently while also contributing effectively within a cross-functional team environment.
- Strong attention to detail and a commitment to delivering high-quality, reliable, and maintainable software.
Interested candidates who wish to apply for the advertised position, please click 'APPLY' to submit your application
EA License No: 13C6305
Reg. No.: R1874608 (Lee Jia Hou)
For candidate who applied for the advertised position is deemed to have consented to us that we may collect, use or disclose your personal information for purpose in connection with the services provided by us