Skip to Content

Heimir Thor Sverrisson: Architecture First, Tech Debt Second

EP-202 | March 18, 2025 | 40:58

Heimir Thor Sverrisson joins Robby to discuss the importance of software architecture in long-term maintainability. With over four decades in the industry, Heimir has witnessed firsthand how poor architectural decisions can set teams up for failure. He shares his experiences mentoring engineers, tackling technical debt, and solving large-scale performance problems—including one bank’s misguided attempt to fix system slowness by simply adding more CPUs.

Heimir also discusses his work at MojoTech, the value of code reviews in consulting, and his volunteer efforts designing radiation-tolerant software for satellites.

Episode Highlights

  • [00:01:12] Why architecture is the foundation of maintainability – Heimir explains why starting with the wrong architecture dooms software projects.
  • [00:02:20] Upfront design vs. agile methodologies – The tension between planning and iterative development.
  • [00:03:33] When architecture becomes the problem – How business pivots can render initial designs obsolete.
  • [00:05:06] The rising demand for rapid software delivery – Why modern projects have less time for deep architectural planning.
  • [00:06:15] Defining technical debt in practical terms – How to clean up code without waiting for permission.
  • [00:09:56] The rewrite that never launched – What happens when a company cancels a multi-million-dollar software project.
  • [00:12:43] How a major bank tackled system slowness the wrong way – Adding CPUs didn’t solve their performance problems.
  • [00:15:00] Performance tuning as an ongoing process – Why fixing one bottleneck only reveals the next.
  • [00:22:34] How MojoTech mentors instead of manages – Heimir explains how their consultancy approaches team development.
  • [00:27:54] Building software for space – How AMSAT develops radiation-resistant software for satellites.
  • [00:32:52] Staying relevant after four decades in tech – The power of curiosity in a constantly changing industry.
  • [00:34:26] How AI might (or might not) help maintainable software – Heimir shares his cautious optimism.
  • [00:37:14] Non-technical book recommendation – The Man Who Broke Capitalism and its relevance to the tech industry.

Resources & Links

Book Recmmendations

🍇 Thanks to Our Sponsor!

Jelly is the simplest, most affordable way to deal with your “contact@...” emails.

Tired of sharing an email login, or CCing colleagues to loop them into conversations? Terrified by the dizzying total cost of big-name “customer support” tools? Jelly is the answer. Whether it's for customer support, community organizing, or even managing band emails, Jelly helps your team share an email inbox and manage your conversations in a simple, elegant way. Use the "I got this” feature to communicate responsibility and private comments for internal discussions. Jelly is perfect for small teams — because it was built by a small team. And Jelly is actually affordable —team-based pricing means everyone can pitch in with your team’s conversations with customers, clients, and beyond.

Bonus for Maintainable listeners Get 20% off your first year at letsjelly.com/maintainable.

💡 Enjoyed this episode? Share it with someone who cares about maintainable architecture and technical debt management!

🎧 Listen from Anywhere 🪐

You can find the Maintainable Software Podcast on all the usual places you can find tech podcasts.

Subscribe to the Maintainable Podcast Newsletter

Elevate your coding journey with insider insights from Robby and the pros. Discover the secrets to tackling technical debt and revitalizing legacy code, all in one place. Because who says you can't teach an old code new tricks?