David Hayes: Boring Software, Clear Incentives, and Better Checklists
In this episode of the Maintainable Software Podcast, David Hayes, drawing on his experience at PagerDuty, Sentry, and now FusionAuth, joins host Robby Russell to explore what happens when software becomes trusted infrastructure.
David talks through API design, naming decisions that outlive their authors, and why "boring" software is often the most successful kind a team can build.
Key Discussion Points:
- API Design Decisions That Last for Years: Lessons from PagerDuty on naming, breaking changes, and the long-term consequences of early API choices.
- The Realities of Self-Hosted Software: Balancing upgrades, compatibility, security, and customer control and why customers rarely upgrade as fast as product teams expect.
- What "Boring Software" Really Means: David argues successful software focuses on making users successful, not on giving engineering teams exciting things to build.
- Connecting Technical Debt to Business Outcomes: How to tie technical debt conversations to customer outcomes and broader business needs.
- Estimates, Optimism, and Naval History: How estimates become persuasion tools, how optimism fuels scope creep, and the parallels David draws between successful naval fleets and successful software teams—clear incentives, strong communication, and reliable checklists beating individual heroics.
- AI and the Future of Development: How AI is reshaping the skills, expectations, and checklists developers rely on.







