# 395: I Can No Longer Play Ping Pong

- Show: [Embedded.fm](https://hardwarepodcasts.com/podcast/embedded-fm)
- Published: 2021-12-10
- Length: 1h 17m
- Episode: 395
- Page: https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong
- Listen: https://embedded.fm/episodes/395

## Summary

Tyler Hoffman, co-founder of Memfault, explains how his team at Pebble and later Fitbit transformed firmware development by standardizing developer environments, optimizing build systems, and automating debugging. He details the shift from slow, sequential IAR builds to parallel GCC builds using Make and Conda, which reduced build times from 18 minutes to 2 minutes. Hoffman also describes building web applications and GDB Python scripts to enable remote debugging of field crashes without physical debuggers. The discussion highlights the importance of dedicated developer productivity roles and the evolution of tools from one-off scripts to robust, company-wide platforms.

## Chapters

- [0:07](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=7) Introduction: Tyler Hoffman and Memfault
- [1:41](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=101) Pebble's Software-First Approach to Firmware
- [12:28](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=748) Fixing Developer Environments and Build Speeds
- [22:05](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=1325) Standardizing Tools with Invoke and Conda
- [30:53](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=1853) The Maturity Model of Debugging Tools
- [45:50](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=2750) Adopting CI, Unit Testing, and Web Apps
- [1:04:00](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=3840) GDB Python Scripts and Remote Core Dumps
- [1:11:33](https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong#t=4293) Terminal History Search with FZF

## Topics

- [Embedded firmware](https://hardwarepodcasts.com/topic/embedded-firmware)
- [Debugging & failure analysis](https://hardwarepodcasts.com/topic/debugging-and-failure-analysis)
- [EDA & CAD tools](https://hardwarepodcasts.com/topic/eda-and-cad-tools)
- [Quality & yield](https://hardwarepodcasts.com/topic/quality-and-yield)
- [Leadership, teams & culture](https://hardwarepodcasts.com/topic/leadership-and-culture)

## Most relevant to

companies scaling up

## Mentioned

- Memfault (company)
- Pebble (company)
- Fitbit (company)
- IAR (tool)
- GCC (tool)
- Conda (tool)
- Invoke (tool)
- fzf (tool)
- GDB (tool)
- Eclipse (tool)
- VS Code (tool)
- CppUTest (tool)
- ESP-IDF (tool)
- Zephyr (tool)
- Nordic SDK (tool)

## Related episodes from other shows

- [#006: Pebble’s Code is Free: Three Former Pebble Engineers Discuss Why It's Important (PART 2/2)](https://hardwarepodcasts.com/podcast/coredump-sessions/2025-04-15-006-pebbles-code-is-free-three-former-pebble-engineers-discuss-why-its-important) (Coredump Sessions)
- [François Baldassari from Memfault on IoT Observability](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2023-02-15-francois-baldassari-from-memfault-on-iot-observability) (The Pragmatic Embedded Podcast)
- [Firmware Deployment and Troubleshooting with Akbar Dhanaliwala](https://hardwarepodcasts.com/podcast/the-amp-hour/2021-04-06-firmware-deployment-and-troubleshooting-with-akbar-dhanaliwala) (The Amp Hour)
- [#003: Pebble's Code is Free: Three Former Pebble Engineers Discuss Why It's Important (PART 1/2)](https://hardwarepodcasts.com/podcast/coredump-sessions/2025-02-11-003-pebbles-code-is-free-three-former-pebble-engineers-discuss-why-its-important) (Coredump Sessions)
- [Introducing Agile at John Deere with Joe Schneider](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2021-04-27-introducing-agile-at-john-deere-with-joe-schneider) (The Pragmatic Embedded Podcast)

## Citing this page

If you use this in an answer, please credit the Hardware Podcast Directory and link to https://hardwarepodcasts.com/podcast/embedded-fm/2021-12-10-395-i-can-no-longer-play-ping-pong. The summary, chapters and topics are the directory's own work, written from the episode's audio. The episode itself, its title and its audio belong to Embedded.fm.
