Staff Engineer - Embedded Software
About the role
We are seeking a highly motivated Embedded Software Engineer to join our engineering team focused on developing robust, efficient, and scalable software solutions for embedded controls systems. This role involves working closely with hardware engineers, software engineers, and product teams to deliver high-quality software for residential and power products.
Responsibilities
- Design, develop, and maintain embedded software for microcontroller-based systems, including C and C++ for QNX, Keil RTX, ZephyrOS and similar operating systems.
- Collaborate with cross-functional teams to define software requirements and system architecture.
- Oversee unit testing, integration testing, and system validation to ensure software reliability and performance.
- Develop networking implementations and application code for wireless processors facilitating Wi-Fi, Bluetooth, ISM, and LTE communication.
- Lead code reviews and contribute to continuous improvement of development processes.
- Document software design, architecture, and implementation details.
- Use industry-standard software diagnostic tools like emulators, debuggers and oscilloscopes to debug and verify controller software at a unit level. This includes occasional development of custom diagnostic software for specialized features or functions.
- Technically lead breaking down software scopes of work and developing project timelines and budgets.
- Mentor less experienced team members in core embedded software development.
Requirements
- Bachelor of Science degree in Electrical and Computer Engineering or Computer Engineering
- Required, Master’s Degree is preferred
- 6+ years of work experience dependent on educational background
- Experience owning elements of developing embedded software using layered architectures and embedded operating systems
- Proficiency in C and C++ languages including syntax, generally accepted code structure, and object-oriented programming
- Hands-on experience with industry-standard communications protocols including RS-485 (Modbus), SAE J1939 CAN, Ethernet and USB
- Experience designing software for test including unit-testing, regression testing, board-bring up, and end of line production test. Preference to those who have the following familiarity with CAN analysis tools like Vector CANalyzer, CANape and CANoe
- Familiarity with Keil debuggers and emulators for ARM based processors
- Familiarity with wireless certification requirements for WiFi, Bluetooth, and ISM and experience navigating the certification process
- Familiarity with MATLAB/Simulink model-based code development and integration
- Strong communication skills across diverse audiences
- High level of motivation and ability to collaborate effectively in a team and independently to achieve results
Qualifications
Applicants must be authorized to work in the US without requiring sponsorship now or in the future.
Skills
None specifically listed beyond the technical skills mentioned above.
Benefits
This role offers a competitive salary range of $98,900.00-$125,600.00, with the specific salary rate offered to a candidate being influenced by a variety of factors including the candidate’s experience, education, and the work location. Additionally, Rehlko offers a comprehensive benefits package including a competitive salary, health, vision, dental, 401(k) with Rehlko matching, and more.
Pay
The specific Salary rate offered to a candidate may be influenced by a variety of factors including the candidate’s experience, their education, and the work location.
Schedule
This role follows a hybrid schedule, with 2–3 days per week onsite in Kohler, Wisconsin.