Firmware Engineering Co-op - Moment Energy
From September 2023 to April 2024 I worked as an embedded firmware engineer on Moment Energy's industry leading second-life battery management system (BMS).
As a firmware engineer, I participated in the full development lifecycle of several features of the BMS. This was my first time in a startup environment, and I found that I enjoyed the adaptability required to contribute to the fast-paced development of a new product, as well as the responsibility required to design features that adhered to the robust functional safety requirements of the application.
Some of the features I worked on include:
- Implementation of monitoring and control APIs between several microcontrollers using the CAN communication protocol.
- Improving the memory-safety and flexibility of the EEPROM flash management system.
- Led the design of a fault recovery feature which allows technicians to safely recover the system from dangerous voltage conditions.
- Designed and implemented the MQTT communication interface responsible for efficiently storing and transmitting all of the battery monitoring statistics to the cloud.
Some of the notable aspects that I enjoyed and that this position allowed me to grow in were:
- The thoughtful design of software architecture patterns within an embedded context to balance effectiveness, safety, and legibility to other developers.
- Transforming concepts of features into specific implementation details through collaboration with users and consideration of use cases.
- Enhanced experience with unit testing, hardware-in-the-loop integration testing, and debugging.
- Working with communication protocols such as CAN and MQTT.
- Software development within a team and a fast-paced environment.