CTS is a $550 million corporation that employs 4,000+ dedicated people. CTS designs and manufactures electronic components, actuators, and sensors to OEMs in the automotive, communications, medical, defense and aerospace, industrial, and computer markets.
The company manufactures products in North America, Europe, and Asia. Founded in 1896 as Chicago Telephone Supply, CTS is headquartered in Lisle, IL.
Job / Position Summary
As an Embedded Software Engineer, you will be responsible for designing, developing, documenting, and maintaining software solutions for Actuator software.
Also responsible for maintenance / update of Windows-based tools, troubleshooting, problem solving, root cause analysis.
Your primary focus will be on programming embedded microchip software and boot loaders, and creating / updating Arduino-based tools, to ensure functionality, performance, and reliability.
Responsible for Software Requirements based testing, unit testing, and software integration.
Major Areas of Responsibility
- Develop embedded software designs and implementation for Actuator software.
- Maintenance / update of Windows-based tools.
- Software issue troubleshooting, problem solving, root cause analysis.
- Debugging, code optimization, and performance tuning.
- Software testing - Requirements based testing, unit testing, and software integration.
- Documentation of issues, code documentation and customer-targeted materials.
Required Knowledge, Skills, and Abilities
- Embedded C programming.
- Programming boot loaders and standalone embedded programs.
- Programming Microchip dsPIC 33 (production) and Arduino (hardware and test tools).
- Visual Studio, specifically Visual Basic and C#.
- Python scripting (used in our hardware / software testing).
- CAN communication (J1939 and UDS diagnostic protocols).
- Use of industry-standard data acquisition toolchains (CANalyzer, CANoe, CANape).
- Digital electronic hardware and microcontroller architecture, analysis, and design.
- Hardware / software interfacing.
- In-circuit emulation and debugging.
- Writing software documentation.
- Understanding of brushless DC motors / motor control.
- Design and construction of production-quality Windows-based tools.
- Use of Configuration, Requirements, and Test Management toolchains.
- Automotive cybersecurity methodologies.
- High aptitude for troubleshooting / root cause analysis.
- Strong interpersonal and communication skills.
- Proficiency with Microsoft Office tools (Excel, Word, PowerPoint, Visio, Project).
Required Education and Experience
- Bachelor’s degree in Computer Science, Computer Engineering, or Electrical Engineering, with background in embedded microcontroller programming.
- At least 4 years of professional experience in design, development, and support of automotive related embedded applications.
- C / C++, Python and Visual Studio experience or training.
- Ability to multi-task, solve problems and drive critical tasks to completion with minimal supervision.
United States