About this opportunity
Morey lists this Senior Embedded Software Engineer opportunity in remote, Michigan. Review the employer’s description below for duties, qualifications and application requirements.
Job description
The Senior Embedded Software Engineer actively engages in every phase of the project throughout its lifecycle. This role requires the engineer to create flexible designs targeted to various embedded software systems, create modular code with an emphasis of reusability, executing software-level unit testing, developing effective documentation, leading software troubleshooting efforts and engaging in small research activities as needed. Depending on the project needs, this position may require evaluation of new technology. Knowledge of C/C++ Programming Language is essential for this position.
At Morey, we lead by example and practice the values of the organization – commit to honor, embrace creativity, build partnerships, value each other, and own it.
Essential Functions:
C/C++ programming knowledge and the ability to create embedded software applications for microcontrollers and microprocessors. Including writing programs for RTOS (FreeRTOS, OpenRTOS or similar) and embedded OS’s (Linux)
Lead Firmware architecture and design activities for multiple programs including the ability to create intuitive documentation to highlight the software design. Strong working knowledge of modular programming is desirable
Assist in the development of product requirements for new and existing products
Capable of adapting new technologies based on industry and market demand
Establish and maintain productive working relationships with both technical and nontechnical personnel
Debug embedded systems given schematic context and review schematics for new products through the lens of embedded applications.
Desired Attributes:
Knowledge of encryption (TLS, SSL, Secure Boot, Trusted Platform Modules (TPM), Security Certificate Management, AES, Encryption at rest, etc.)
Strong background in telematics applications with a focus on wireless technologies (Cellular modems, GPS, Bluetooth including LE and Bluetooth 5, Internal Battery Management)
Knowledge of Vehicle Communication Technology (CAN, J1939, ISO 14229, UDS, CANopen, ISO 11992-2.)
Knowledge of Networking Communications both wired (USB, Ethernet, etc.) and wireless (802.15.4, 802.11 a/b/g/n/ac, etc.) including UDP, TCP, HTTP, FTP, HTTPs, MQTT, CoAP, etc.
Experience developing in Windows and Linux software environments
Experience developing automated testing and/or application automated deployment scripting to support regression testing and software releases
Familiarity working with Software Configuration Management and continuous integration tools
Working knowledge of developing software on desktop PCs or servers to aid in the development process
Experience working in Agile development methodologies
Familiar with formal code and design review processes and techniques
Experience with formal unit testing strategies to ensure appropriate software test coverage
Experience building and distributing Python3 based applications and packages
Required Education and Experience:
BS in Electrical Engineering, Computer Science or Computer Engineering
5-10 years of related firmware experience
Minimum 5+ years in C/C++ programming language
Comfortable leveraging AI agents for software development activities
Strong embedded OS and RTOS knowledge and experience integrating into embedded systems
Willingness to work in a fast-paced environment
Strong problem solving and analysis, troubleshooting and debugging skills
The Morey Corporation offers:
#J-18808-Ljbffr
Worksite address
remote, MI, 49423, US
Who can apply
Review the original listing for work authorization, qualifications and employer requirements.