In the trivago backend, we use the reactive programming pattern for fetching prices from advertisers and updating our caches. This helps us to increase the responsiveness (i.e., scalability and resilience) of our backend. Thus, our backend system can alleviate high response times from internal components and our advertisers while staying responsive, even if downstream components fail entirely. Here is how we use the Java library Reactor Core to ensure those guarantees:
How trivago Frontend Engineering revamped the company’s Business Intelligence web application.
After almost a decade, we decided to rebuild our in-house Business Intelligence web application to better support the organization. It is always challenging to replace software with a long history and a high degree of complexity. Nevertheless, we successfully completed the project because we fundamentally challenged and re-thought all aspects of the project.
The result at the end of the revamp was extraordinary. We were able to build a reliable product that is user-friendly and capable of data processing at scale. …
So, you are a data scientist? But I thought you worked in marketing!
Every. Single. Time. This was the reaction that I got when I told people I was a Data Scientist in the marketing department of a travel giant. Recently, I have come across a lot of articles on the internet mentioning “use of AI and ML driving optimal investments and sales on a performance basis”. But not enough that would demystify the exact applications of data science in this space. …
New week, new topic! This week we’re sharing our tips for using Selenium — a tool used to automate web browsers and which we use in our end-to-end tests at trivago. You know the drill, we’ll be adding a new tip every day, so keep an eye out. If you’re a frequent user with some tips of your own to share, let us know in the comments below!
Sometimes it can be helpful to navigate to the top or bottom on a website under test, especially if this triggers other elements such as floating headers.
To accomplish this, you can…
COVID-19 has impacted the travel industry very severely. Even in these hard times, trivago remains committed to contributing to open source. As a tech company working on large-scale projects, we feel a responsibility towards supporting the open source community.
This year we will continue supporting projects and organisations that are having a major impact on the products we build and the happiness of our engineers who use them on a daily basis. These projects are webpack, Preact and the Cloud Native Computing Foundation.
webpack has been a key component of our frontend toolchain for the past 5 years. Either being…
Happy New Year from trivago’s engineering teams! 🥂
We hope you have a great start into the new year.
Also, we missed you during the holidays, but it was important to spend some time away from the computer. Now however we’re happy to bring back our popular trivago tech tips.
Let’s kick it off with a very special Kibana edition. Kibana is a search frontend for Elasticsearch. It allows you to query a lot of log data quickly — at least that’s what we mostly use it for here at trivago.
Kibana has a lot of awesome but mostly unknown…
One of my favorite events throughout the year is the trivago tech get together. It’s the one time where we all get together to celebrate tech. Here are some impressions from 2019:
See all those happy people mingling in person? Guess it’s obvious why we had to change this up for 2020.
We managed to get a lot done this year, but communication across teams was getting harder through virtual meetings. It’s difficult to foster serendipity when meetings have to be planned for; those coffee-machine conversations are sorely missing.
That is a problem for a company like trivago where collaboration…
Metrics are one of the main building blocks in the topic of observability.
Hence, we have a lot of metrics within our applications and especially for the connections between our applications. Every outgoing request has its latency measured and we also record the sizes of the request and the response. These numbers are collected in histograms and based on that data, in our Grafana graphs, we create corresponding graphs that show us e.g. the median size of request- and response payloads or the 99th percentile of call durations.
This story is about an incident where we tried to find and…
With the lockdowns, border closures, economic troubles, and other disruptions caused by the coronavirus pandemic, you might expect that the travel industry would be under a lot of pressure.
And… you’d be absolutely right.
Even so, accommodation bookings — not just hotels, but also resorts, rental cabins, apartment rentals, and other places — have seen some recovery since the lockdowns earlier this year. So, people are still traveling. But how has traveling changed? How do travelers decide when, where, and how to travel nowadays? And once they figure out where they’re going, how do they decide where to stay?
At trivago we are working heavily on the web platform and, based on the scale that we need to serve our users, our applications need to cater for many different kinds of environments and conditions.
As one of our use cases demanded we look into how a background (and possibly terminating) state is defined in the modern web, we investigated the options and discovered a few interesting points, specifically about the Page Visibility API. …