The decision to build something in house versus use something off the shelf is important. In some situations, unyielding requirements mean that no off-the-shelf solution fits the bill, leading organizations to write their own custom software. However, once such custom software is written and deployed, these organizations rarely consider revisiting their original choices. Proliferation of such decisions within an organization ultimately results in so-called “dark debt.”
Aish Raj Dahal sheds light on the age old build versus buy problem and “not invented here syndrome” by explaining how PagerDuty built a distributed task scheduler and later moved off it to use an off-the-shelf open source solution. He starts by outlining the different choices that teams and organizations have when considering an in-house solution. He then discusses PagerDuty’s journey from building a highly available Cassandra-based distributed queue solution to address a specific use to using it albeit incorrectly everywhere else to finally depreciating and retiring it in favor of something off the shelf. Along the way, you’ll discover how this large-scale migration was performed without affecting the health of production systems and how revisiting decisions from the past helped uncover dark debt.
Aish Raj Dahal is a San Francisco-based engineer at PagerDuty, where he is building PagerDuty’s event intelligence platform—and often deals with fallacies of distributed computing. His recent focus has been on Elixir/OTP and building event-driven microservices using Kafka and Elixir. Previously, he was an early employee at HackerRank and a programmer at Goldman Sachs.
Comments on this page are now closed.
©2018, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org