Technical Decision Making at Trivago
There are many articles on how to be a great intern and junior engineer but it is very hard to find anything on being a good manager. This applies to anyone in technical leadership or with decision paralysis.
Trivago recently published a blog post about its process on making technical decisions written by Trivago Software Engineer Tom Bartel, Trivago Principal Engineer Radovan Janjic, and Trivago Frontend Engineering Lead David Meyer. It also shared great insight into its management styles based on the care and consideration given to big technical decisions. Advice calls for being kind, including others, and looking for insight from everyone while making impactful decisions.
Most decisions are made quickly and independently, without a second thought. But then there are others, where there are more questions or more categories impacted. Financial, workflow changes, potentially adding technical debt or new maintenance requirements, or a large investment in learning or relearning a technology: These are all areas where other people are likely impacted. Now what?
As the decision owner (especially one with decision paralysis or fatigue), there’s much to be done. When it comes to time management, Trivago recommends time boxing and setting deadlines (hey, hey procrastinators).
Time boxing is a time management technique that limits a task to a fixed, realistic timeline. As the manager of this process, the decision maker is ultimately responsible for explaining the content, what’s going on, what the decision is about and technical implications, alternatives, and tradeoffs. And provide documentation. Keep records. About all of this.
Include participants. If it’s impactful to others, include ‘em. Trivago recommends at least sending representatives for the affected parties, people with expertise, and stakeholders as people included in meetings even though the working group likely won’t be larger than six people.
If this is a high-impact decision, communicate often and early, present live ideas, and provide a document for questions.
The Decision-Making Process — Bird’s Eye View
- Create a Design Document: template
- Share the document for review by the people affected
- Form the working group to review proposal for the decision
- Hold the decision meeting
- Document the outcome of the decision
The Decision Meeting
Solid decisions come from constructive arguments, collective experience, and alternative exploration. But that only happens with arguments are stated respectfully, the claim is supported with technical facts, and resolution is provided with change criteria. In a perfect world, this is always the case. But we don’t quite live in that world and sometimes things get heated. It’s everyone’s job to speak up if things become tense.
The Decision Meeting Workflow keeps in mind:
- Before the decision meeting, identify arguments that are truly important in a preparation document and list the remaining ones out separately.
- Arguments should be collected or discussed in a way that’s visible for everyone.
- Address all comments and feedback.
- When it comes to the final decision, it’s useful to make as close-to-unanimous decision as possible but the decision maker isn’t bound to the majority vote.
- Tie the decision to action points: A was decided so B, C, and D will be done next week.
- Document everything (discussion, arguments, decision).
- The decision can be revisited and changed if necessary.
Making decisions that will have a lasting impact is a complicated process but Trivago suggests using an approach that includes the team rather than one that includes one or two people deciding everything without sharing their reasoning.