Embedded Software Engineer
Superpedestrian is seeking an Embedded Software Engineer to join the embedded software development team. The ideal candidate has strong skills writing embedded software on resource constrained, robotic-like systems. They should also have experience in low-level chip configuration, system time management, sensor sampling/conditioning, and inter-processor communications (CAN, SPI, I2C). Experience with telecom protocols such as Bluetooth, GPRS and LTE is a plus. Experience in the area of motion control implementing motor drive software for brushless DC motors on a microprocessor is also a plus.
What you'll do:
- Help build our next generation technology by writing code (predominantly in C and python) for embedded targets that service motor control, battery management, and system communication and control.
- Contribute your knowledge and wisdom to the team's development processes and software best practices.
- Collaborate closely with the embedded hardware team to specify module and system requirements and design.
- Design and document software interactions between system modules, cloud services, and mobile applications.
- Contribute to a software quality plan including testing, inspection, and certification.
- Work closely in a small team where personal interactions are critical to timely decision-making and knowledge sharing.
- Participate in ideation for future products and features.
What we're looking for:
MS/BS CS/EE with 4-7 years of industry experience developing embedded software systems
Expert programming skills in embedded C
Experience developing software for commercial use
Familiarity with software product life cycles, including the support of fielded products
Experience implementing low-level chip functionality and drivers (CAN, I2C, SPI, USB, bootloaders) for embedded systems
Experience with scripting languages (python, bash)
Experience with revision control systems (Git)
Ability to write PC-based tools and applications to develop, debug, and test embedded systems
Experience in embedded robotics or motion control applications
Additional useful skills:
Software regulatory experience
Experience with Bluetooth, GPRS, LTE and other telecoms standards
Electric vehicle experience
Assembly language skills
**Avid cyclists** will be very happy here