
Software Engineer, Embedded OS
Role summary
The Software Engineer, Embedded OS will perform embedded systems engineering tasks including requirements analysis, software system design, component integration, and testing. The role involves developing features in C for an internal embedded operating system for vehicle controllers, creating software tools and scripts in C# to enhance development efficiency, and building test automation frameworks using Python. This position will also lead innovation efforts for next-generation tools and workflows, collaborate with stakeholders, and resolve root cause issues. The role requires proficiency in C, C++, C#, and Python, with a strong understanding of the embedded software development lifecycle.
Job Title: Software Engineer, Embedded OS
Location: Cary, NC USA 27513
Assignment Length: 18 Months (Possible Extension)
Shift: 1st shift 8:00 AM - 5:00 PM
100% on-site.
Job Description:
Perform embedded systems engineering tasking including requirements analysis, operational concept development, software system design/architecture, component integration, design reviews, and controller integration testing
- Develop features in C for an internal embedded operating system software used on vehicle controllers
- Develop software tools and scripts for increasing efficiency and user experience of embedded software development using modern C#
- Create test automation tests and frameworks using Python
- Lead innovation efforts to define the next generation of tools and workflows used by the embedded development community
- Collaborate with internal and external stakeholders including providing daily user support
- Analyze issues and drive resolution of root cause issues
Required Skills/Experience
- Demonstrated proficiency in embedded software development using C and C++
- Demonstrated experience with object-oriented software design and C# expertise
- Good understanding of the embedded software development workflow from requirements to machine validation
- Strong communication (written and verbal) and teamwork skills
- Demonstrated problem-solving skills
- Ability to work in a self-directed environment
Desired Skills/Experience
- Experience with GNU Make and Python scripting
- Knowledge of CAN communications protocols (automotive ethernet, J1939, ISO 14229 standards)
- Technical experience relating to design and diagnostics of mechanical/electrical/hydraulic systems
- Experience developing low-level and middleware drivers for hardware peripherals
- Experience with AUTOSAR and proprietary operating systems
- Experience in software product delivery using agile software development processes
Education Details
- - Bachelor of Science degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, Mechanical Engineering, Agricultural Engineering, Systems Engineering, or equivalent work experience