Wayfair Tech Blog

Keep Tech Debt Low

Innovative businesses are always in search of new features and solutions that can transform the customer experience. When a new idea emerges, developers will often work at an accelerated pace, taking calculated shortcuts to prove the value of the concept in as short a time as possible. At this point, the mantra is, “Why exhaust long cycles on something that may ultimately fall short of expectation?”

This is where the seeds of Tech Debt are planted. What happens after? Rather than going back and fixing the areas in question, teams move to what’s next. As the business matures and the complexity of its offerings and code grow, these shortcuts, which were once manageable, minor headaches, become larger problems that affect many parts of the business and cannot be ignored.

Wayfair is not immune to Tech Debt. After all, 20 years ago, we were a startup business with a startup mentality centered on transforming how people shop for their homes. Back then, the priority was to test new ideas, get things out the door quickly and deliver maximum value. These innovative sprints are still part of our mentality today. The big difference? We have introduced more mature processes focused on eliminating Tech Debt and ensuring our long-term success.

Tech Debt 101

Today, I’m an engineering leader on the Storefront B2B team. In this role, my 20+ years of engineering experience have proved vital. First and foremost, it has helped me quickly identify instances of Tech Debt and the after-effects that come with it.

According to a McKinsey survey of CIOs, IT teams spend up to 20% of their budget for new products on issues relating to resolving technical debt. From my experiences, this debt usually comes in two flavors, intentional and unintentional. Some examples of each include:

  • Code without instrumentation or automated testing (intentional)
  • Architecture that does not support scaling up or extending out in an optimal amount of time (intentional)
  • Long if/then/else loops, and following other anti-patterns (intentional)
  • Gaps in security, system uptime, and compliance identified or created due to upgrades, etc.( unintentional)

As you can imagine, finding Tech Debt is one thing, resolving it is a different beast altogether. It requires teams to shift their mindset toward building things correctly from the beginning. That may seem easy on the surface, but old, deeply engrained habits are hard to break. These teams are accustomed to working fast, and now they are being asked to do the unthinkable and move slower. Consider that for a moment. How often are you asked to slow down at work?

All Hands on Deck

As with many processes at Wayfair, collaboration has been vital to creating awareness around Tech Debt. The journey began through a series of discussions with the Technology teams centered on why it exists. In these sessions, we emphasized that the fast-moving mentality isn’t wrong. It can be vital when testing new innovative offerings. The challenge comes when a new solution is a proven success, and it’s time to flip the switch and eliminate the “gaps” that were created along the way.

Ask anyone, and they will tell you that fixing Tech Debt is far less sexy than working on an important new customer-facing initiative. It also takes time. How much time? That depends on how long the effort has been put off. Taking these factors into account, it should come as no surprise that tackling Tech Debt could lead to morale issues.

Keep Tech Debt Low/Keep Development Fast

We took much of what was discussed in these meetings and created the “Keep Tech Debt Low, Keep Development Fast” document. From there, we repeated the process, first with technology leadership and then with the larger technology team. Both of these sessions gave us greater insight into Tech Debt.

Ultimately, what came out of all these discussions was the final document, our official guidebook for addressing Tech Debt. The document features strategies and different approaches to deal with the old architecture and, more specifically, how to go back and re-pay that Tech Debt. This includes earmarking a percentage of each roadmap for specific Tech Debt-related work and then being committed to re-factoring it the right way. With new solutions, we communicate the need to either “build right” from day one or to re-factor once the effort has been deemed a success. This included laying out the implications that will ensue when teams do not factor in the long-term picture.

We are now more than 20 years into Wayfair’s journey, and over this period, the company has maintained the incredible innovative engine that allows us to transform how people shop for their homes and businesses. Along the way, we’ve been able to successfully minimize the effect that some technology-related shortcuts have on the future of the business. At the heart of our success is a devotion to tackling any roadblock with what Wayfair does best, collaboration.