Job Title: Principal Software Engineer- C++ and LasersLocation: Wilmington, MAPosition is onsite from Day 1. Only USC/GC.It is a Full-Time role.About the Job:Looking for a talented and self-motivated Software Engineer. The ideal candidate will have experience architecting, developing and maintaining software for machine controls and Client electro-mechanical systems from concept to production.
Job Duties: - Design and implement HMI (GUI) and backend code for complex control systems with some interfaces and real-time code in C++.
- Develop visualizations of 3D and 2D images and CAD models in near-real time using C++, Direct2D/Direct3D, or similar technologies.
- Work on near real-time image processing using Direct2D/Direct3D, CUDA and/or other GPU accelerated technologies.
- Support, maintain, and document software functionality.
Skills/Qualifications:Required:
- Object-oriented Design and Analysis (OOA and OOD).
- Demonstrated expert-level experience with C# .NET and Winforms (preferred).
- Experience designing / developing GUI / HMI systems for complex control systems.
- Experience developing code using DirectX/2D/3D and/or CUDA/OpenCL.
- Experience with software configuration management and source control systems (i.e. Mercurial).
- Must be able to independently and effectively debug complex software in C++ (and preferably PLC) environments.
- Must understand common industrial automation paradigms (communication buses, actuators / sensors, motion, fail-safe behavior, realtime, etc.).
- Must be able to work in a collaborative environment.
- Strong analytical and communication skills.
Strongly Desired:
- All-round Software Engineer with demonstrated experience in many aspects of modern industrial automation (from PLC/IEC 61131, EtherCAT (or similar communication buses) to C++ (including realtime) and potentially other script-type languages such as Python, etc.).
- Experience with SQL-type database systems and formulating queries (MS-SQL).
- Experience with RTOS systems like IntervalZero RTX or similar.
- Background in, or solid understanding of Mechatronics and interfacing concepts.
- Experience with additive Manufacturing / 3D Printing.
Education/Experience:Required:
- B.S. degree in Software, Mechanical, Electrical, or related.
- 7+ years experience in related fields
Desired: