Participate in the design, development, and operation of several key embedded software capabilities on the Lime vehicles and related products. This will include new exciting yet-to-be-released products too!
Be the voice of customers for engineering excellence within the team and influence team roadmap decisions.
Provide feedback in the peer review process and effectively communicate with technical leadership. Be the ambassador of industry best practices in this domain.
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
2+ years of professional software development experience
2+ years of development experience in C/C++ within an embedded environment.
Proven experience diagnosing and debugging complex, difficult, multi-variable system issues with proficiency in oral and written communication skills.
Previous experience developing software for vehicles (or other safety critical systems), particularly in the micromobility space
Experience developing in an RTOS framework, Zephyr preferred.
Strong experience with CI/CD and HIL automated testing
Hands-on system experience with Linux, including device drivers and multicore systems.