T404 - Principal Engineer/ Senior Software Engineer C/C++ (Automation Machinery)

Talent Trader Group

View original posting

Work arrangement
On-site
Occupation
Software & IT
Location
Singapore, Singapore, SG
Compensation
Not disclosed
Apply by
April 14, 2027

About this role

Job Responsibilities

  • Design, develop, test, debug, and maintain reliable and high-performanceindustrial automation softwareusingC++, C#, and WPF.
  • UtilizeWindows APIs and relevant librariesto interface with and control hardware components.
  • Develop machine control functionalities usingmotion control cardsto achieve accurate and precise motion.
  • Integratedistributed I/O systemsfor sensor data acquisition and actuator control.
  • Implement reliablesoftware-hardware communication protocolsto ensure efficient and stable data exchange.
  • Apply advancedmultithreading, synchronization, and concurrency techniquesto optimize application performance and responsiveness.
  • Implement efficientmemory managementusing technologies such as memory-mapped files, file mapping objects, and memory sections.
  • Effectively leverage theC++ Standard Library, templates, and reusable componentsto improve code quality, performance, and maintainability.
  • Work withWindows synchronization objects, including events and mutexes, to support reliable inter-thread communication and synchronization.
  • Develop user interfaces usingWPF or WinUI, where required, to provide intuitive monitoring and machine-control functionality.
  • Produceclean, well-documented, maintainable, and efficient codein accordance with software development best practices.
  • Work closely withElectrical and Mechanical Engineersto understand machine requirements and translate system specifications into effective software solutions.
  • Participate incode reviews, share technical knowledge, and provide constructive feedback to other developers.
  • Keep up to date with the latest developments inC++, industrial automation, motion control, Windows development, and related software technologies.

Requirements

Job Requirements

  • Bachelor’s degree inComputer Science, Software Engineering, Computer Engineering, or a related discipline, or equivalent practical experience.
  • At least5 years of hands-on experiencedevelopingindustrial automation softwareusingC++, C#, and WPF.
  • Demonstrated experience in programming and integratingmotion control cardsanddistributed I/O systemsfor industrial machinery.
  • Strong knowledge ofWindows API development, system-level programming, and advancedmemory management techniques.
  • Solid understanding of theC++ Standard Library (STL), including extensive use oftemplatesand reusable components.
  • Practical experience withWindows synchronization and communication objects, particularlyevents and mutexes, for multithreading applications.
  • Knowledge ofWindows GDI/GDI+for graphics and visualization applications is an advantage.
  • Experience withBorland/Embarcadero C++ Builder and VCLplatforms is highly desirable.
  • Strongproblem-solving, analytical, and critical-thinking skills, with a structured approach to troubleshooting complex software and machine-control issues.
  • Excellentcommunication and collaboration skills, with the ability to work effectively with software, electrical, and mechanical engineering teams.
  • Capable of workingindependentlywhile also contributing effectively within a cross-functional team environment.
  • Strongattention to detailand 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

Apply on employer site

You'll continue on the employer's careers page to submit your application.