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 independe
Benefits
Competitive compensation and benefitsWork-life flexibilityRecognition and rewardsDevelopment and career opportunitiesA safe and inclusive workplaceWhy You Will Love this JobThis role follows a hybrid schedule, with 2-3 days per week onsite in Kohler, Wisconsin.Specific 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.Support hardware troubleshooting during product development and testing.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 functionsTechnically lead breaking down software scopes of work and developing project timelines and budgetsMentor less experienced team members in core embedded software development
Additional Information
Why Work at Rehlko
Our work is guided by our purpose: creating an energy-resilient world for a better future. This purpose embodies the legacy we bring, with more than 100 years as the global leader in energy resilience, delivering solutions critical to sustain and improve life.
Our teams have the opportunity to provide a critical resource - energy - that ensures safety, security, and independence for people around the world. Our team members are focused on pushing boundaries, continuing to innovate in an ever-changing landscape, and keeping up with the pace required to create solutions for today's world demands.
Our product range includes engines, generators, power conversion, UPS systems, EV components and electrification solutions, microgrid controls and management, and clean energy solutions that serve a broad spectrum of OEM, residential, industrial, and commercial customers. At Rehlko, you have the freedom to identify, create, and deliver solutions - large and small - that help people and communities thrive in the moments that matter.
At Rehlko, our team members are the essential energy that powers our organization's success. We are committed to fostering a safe and sustainable work environment where safety is everyone's responsibility. We empower every team member to actively participate in our Zero Is Possible safety culture by encouraging open communication, proactively reporting hazards, following protocols, and suggesting improvements. Join us in creating an energy resilient world for a better future!