Join Matternet as our next Embedded Software Engineer! We have built a strong foundation for a world-class automated logistics system and we're ready to bring it to the next level with your help.
You will play a large role in the iteration of our current generation Aircraft and Station (), as well as the development of future generations to create seamless autonomy.
Your work will focus on:
- Building out the embedded layer of the aircraft that will expand its capabilities of autonomous flight
- Productizing the station to enable fully autonomous end-to-end delivery.
Seize this opportunity to help bring Matternet from R&D to market effectively and quickly.
You will
- Collaborate with crossfunctional Aircraft and Station team members including Electrical, Mechanical, GNC, Mechatronic, and Software Engineering.
- Design, build, test, maintain, improve, and troubleshoot firmware and embedded software for the Matternet aircraft and the station embedded systems.
- Undertake requirements analysis, specification, design, implementation, debugging, test plan specification, and documentation of the embedded systems.
- Support manufacturing and operations for quality inspections, bring up procedures, and testing/troubleshooting embedded systems.
Required:
- 5+ years of experience in C/C++ for developing embedded systems in Linux/Unix environments
- Experience with STM32
- Expertise in Embedded Linux, Linux development, Linux tools, shell scripting, Linux Kernel, Linux device drivers, & the embedded Linux platform for ARM
- Experience working with Real-Time Operating Systems (RTOS)
- Strong understanding of protocols, device drivers, and multi-threaded programming
- Experience selecting micro-controllers and working with new peripherals, features, and development environments
- Deep functional knowledge of communications protocols (CAN, SPI, I2C, UART, BLE) and selecting those that are optimal for the application
- Experience reviewing board level schematics and layouts, and data sheets
- Must be comfortable with hands-on debugging at the rudimentary signal level if necessary (using oscilloscopes and/or logic analyzers)
- Expertise in controlling peripheral devices such as: encoders, electric actuators, motors (BDC, BLDC, stepper), sensors (capacitive, inductive, IR, LIDAR, RADAR), and/or complex robotic systems
- Experience working on cross-functional teams using agile software development methods, test-driven development, and continuous integration
- BE / MS in Computer Science, Electrical Engineering, or related field
Great additions:
- Some exposure to UAVs and Avionics technologies like ADS-B, GPS, LIDAR, perception sensors
- Experience in build systems such as Waf, Python, GNU Make and CMake
- Experience with software versioning tools such as Git and JIRA
- Experience optimizing C and Matlab algorithms for high data throughput
- Experience with smart battery IC projects (TI BQ or other battery management chips)