Read How a Learning Project Became Our Modern Mobile Test Framework

How a Learning Project Became Our Modern Mobile Test Framework

About six years ago, our mobile automation setup was showing its age. It was a small, homegrown framework that had worked “well enough” for a long time, until we tried to upgrade Java and a few core dependencies. That’s when things started breaking in ways we couldn’t reasonably patch around. The framework simply wasn’t built to move forward.

Read Mob Programming: Smells Like Team Spirit

Mob Programming: Smells Like Team Spirit

Mob programming often sparks hot takes. “It’s counter‑productive.” “One person could do it faster.” “Why waste five people on one keyboard?” If that’s what it looks like in your head—one senior typing while others half‑listen—that wasn’t mob programming. Real mob programming is structured collaboration that turns a team’s combined attention into forward motion.

Read How We Build: Behind the Frontend of trivago’s Website

How We Build: Behind the Frontend of trivago’s Website

Modern frontend engineering is a collaborative effort of many people with different talents and expertise. Over the years, a team working together can continuously refine their ways of working, so that the different contributions fit together seamlessly and each step in the production process is in sync with the next one. Read about our team structure, our A/B test setup, and about what makes our QA team so special.

Read How to substantially slow down your Node.js server

How to substantially slow down your Node.js server

Back in March 2022, after spending a considerable amount of effort migrating our monolithic Node.js GraphQL server from Express to Fastify, we noticed absolutely no performance improvements in production. That hit us like a bombshell, especially because Fastify performed exceptionally well in our k6 load tests in staging, where it responded to HTTP requests 107% (more than two times) faster on average than Express!

SRE: On-Call Procedure at trivago

One of the many responsibilities of a Site Reliability Engineer (SRE), is to ensure uptime, availability and in some cases, consistency of the product. In this context, the product refers to the website, APIs, microservices, and servers. This responsibility of keeping the product up and running becomes particularly interesting if the product is used around the world 24 hours every day like trivago. And just like in the medical profession, someone has to be on call to react on failures and outages outside of the office hours.

Read A preview of CSS Container Queries

A preview of CSS Container Queries

Have you ever wondered about how to create components that not only change their appearance according to the viewport’s width but instead also transform according to their parent element’s sizing? This might be the case when you have a card component that has the classical vertical layout on mobile:

Read trivago Tech Check-in: Meet Mohammad

trivago Tech Check-in: Meet Mohammad

trivago is the home to 500+ tech specialists from all corners of the globe – each with their own unique background and story of how they ended up here. Our trivago Tech Check-in series focuses on individual engineers' experience during their time at trivago. In this edition, you'll meet Mohammad Abed – a frontend software engineer who has been with trivago for 11 months now and is working on our Express Booking product.

Read Postmortem: Removing all users from github.com/trivago

Postmortem: Removing all users from github.com/trivago

While engineering, we fix bugs, create new systems, build workflows and establish processes. Our job is to change things. Changing things can involve mistakes that ultimately lead to the failure of a particular system. To learn from these failures, a retrospective is helpful to get to the root of this problem. In the tech industry, a Blameless PostMortem is the right tool for this job.