Position: Principal Software Engineer - Embedded
Location: Oshkosh, WI (Onsite Must)
Duration: Fulltime/Contract to Hire
Summary: Work within advanced engineering groups regarding development of embedded software to support control system development and machine intelligence efforts. The software development work encompasses firmware, application software, and operating systems for Internet of Things applications, advanced vehicle components (including motors, drives, engines, generators, energy storage cells etc.), autonomous vehicle systems, advanced suspensions, material handling and other auxiliary equipment for on-road and off-road applications.
Essential Duty and Respsonsibility:
- Conduct independent research and development on new technologies and establish requirements (resources, equipment, estimates, test plans, and milestones) according to the needs of a project related to real-time operating system (RTOS), Autosar, embedded systems, open-source tools, Internet of Things (IOT) with telematics/telecommunication, edge computing and architecture virtualization
- Carry out the technical aspects of advanced vehicle system controls research and development in the aspect of implementation using embedded software tools, version control and configuration management, verification and validation, DevOps, and CI/CD software.
- Work with internal and external project teams on advanced control development efforts independently with minimum supervision using embedded software and model-based development tool suites.
- Responsible for quality conscious design including cost and reliability, participate in peer reviews, estimation, and other engineering activities and follow defined CMMI level 3 procedures in the writing of software
- Use reasonable foresight to identify vehicle operation and maintenance risks and control them within acceptable levels. Participate in feasibility studies and project estimates (manpower, budget development, and timelines etc.) on proposed projects.
- Provide insight to engineering design teams and mentoring to low level engineers as needed based on expertise.
- Write requirements and design documentation and can travel off-site to support engineering projects
Education and Experience:
- Bachelor's degree in Computer, Software Engineering or Information Technology and 8-plus years related experience or
- Master's degree in Computer or Software Engineering and 5-plus years related experience
- Ability to write high-quality, maintainable, object-oriented C software
- Work experience in electrical-electronics (E-E) system architecture design, real-time operating system, Linux, and embedded virtualization preferred.
- Automotive or heavy-duty vehicle background with vehicle control system experiences
- Work experience in automotive or heavy-duty vehicle CAN bus and architecture a plus
- In-depth work experience in Wind River Vxworks, Linux operating systems and drivers, and peripheral handling, dSPACE or Vector tools
Expectation:
- Have the essential controls/software education background and strong expertise with in-depth work-related experiences.
- Strong and efficient time management, communication, and critical thinking skills.
- Strong presentation skills and able to confidently interface internal or external customers with minimum guidance.
- Provide technical insight on the technical hurdles and troubleshooting guidelines independently with clarity and assess the priorities based on business needs.
- Identify the technical needs and resources and complete the tasks independently with minimum guidance.
- Strongly motivated in learning new technologies and skills in controls fields.