Drive the design, development, and operation of several key embedded software capabilities on the Lime vehicles
Be the voice of customers for engineering excellence within the team and influence team roadmap decisions
Participate in the architecture of the complex systems within the vehicle software/Firmware domain and collaborate with team members spread across the globe
Provide feedback in the peer review process and effectively communicate with technical leadership
Own unique embedded software functions through design, implementation (in C, C++, RUST etc), testing, and integration in an embedded Linux or real-time operating system (RTOS) environment
Learn and master multiple components including networking(LTE)/WiFi, motor control, Over-the-Air (OTA) software updates, and various sensors
Write software to interact with devices/electronics using I2C, SPI, CAN, UART, etc
Work closely with hardware teams to support board design, bring-up, and verification, as well as integration and testing during various phases of product development including proof of concept
Requirements
Bachelor's degree in computer science/computer engineering or equivalent
5+ years of non-internship professional software development experience
5+ years of development experience in C/C++ within an embedded environment
Hands-on system experience with Linux, including device drivers and multicore systems
Proven experience diagnosing and debugging complex, difficult, multi-variable system issues
Previous experience developing software for vehicles (or other safety critical systems), particularly in the micro-mobility space
Experience developing in an RTOS framework, Zephyr preferred
Design and developing hardware abstraction layer (HAL) libraries and system services
Strong experience with CI/CD and HIL automated testing