Senior Software Engineer2008 - 2015Garmin
Technologies: C, C++, Python, Git, Vim
- Led the engineering team to create an accelerometer-based running efficiency heart rate monitor. Responsible for software architecture and scheduling, major design reviews, manufacturing support, and testing.
- Designed and developed the framework for the user interface of a next-generation chart plotter, a GPS-driven marine navigation device.
- Designed and developed a data collection framework for the storage, management, and access of sensor data used to create algorithms for sports electronics such as accelerometer-based swim detection, accelerometer-based running/walking speed, and distance monitors, heart rate monitors, and bike power meters.
- Developed an accelerometer-based bicycle cadence detection algorithm used in the bicycle power sensor.
- Designed and developed real-time system level firmware for the Garmin Vector, a state-of-the-art bicycle power meter. This system has four separate circuit boards, two of which interact over wireless and two which communicate using the wired protocol mentioned above.
- Designed and developed a robust, bi-directional, and time sensitive communication protocol used when only two data lines are available for transmission.
- Developed application-level code for the Garmin FR60 sports watch.
- Designed and developed a software tool to automate the development of sport watch user interfaces. This software allows its user to design a user interface at a high level and then auto-generate the required embedded C code for the commercial realization of the design.