In our new series, trivago Tech Check-in, we're introducing you to some of our tech talents from across the globe who help keep our metasearch engine running smoothly everyday. In this first edition, you'll meet Fabian Fritzsche, an engineering intern that works on the Microservice-System that feeds our GraphQL API with up-to-date hotel data.
Hey Fabian! Can you give us a bit of background on where you're from and how you ended up here?
I'm a computer science student at Hochschule Rhein-Waal in Kamp-Lintfort, Germany. Initially I put a lot of focus on becoming a Game Developer during my studies. I've worked there in two jobs on projects in the Unity game engine as a C# developer and product owner. However, after the trivago TechCamp 2019 I was offered the great opportunity of doing an internship at trivago.
Can you describe yourself in 5 adjectives?
Can you explain your job, but badly?
- A team connecting other teams to the internet.
- Just this video: https://www.youtube.com/watch?v=s6Llde0i3rk
- Be the first team to be asked when something breaks.
What are you most excited about / scared of when starting your work day?
I'm still very excited about the technology stack. I love working with Kotlin and all the different challenges I couldn't even have imagined during my studies. I've never heard of gRPC requests or what a Protobuf is before working here.
While 'scared' is a strong word, I'm still not accustomed to how professional code reviews work. The overwhelming wall of comments by coworkers shows me as an intern how much I still have to learn before decently understanding the code base and architecture. After 4 months I can definitely see an improvement, but I still have a long way to go. However, I'm happy to have people to learn from in this regard.
What surprised you most about working as an intern at trivago?
For a trivago newcomer, the first surprising thing would obviously be the campus (might be a little different for anyone starting in the current remote setup though). However, since I attended the trivago TechCamp before, I was already familiar with some of the cool stuff.
But what really surprised me as an intern coming from university was, again, the tech stack. At my university, I learned the basics of computer science, Java, Databases and web technologies. But during my daily work, I use technologies I've never heard of before. Using gRPC instead of the accustomed HTTP request or storing data directly in-memory instead of using a database because it's faster. And don't even get me started on Kafka. Thinking in streams instead of tables completely overwrote my fresh university knowledge.
Would you describe yourself as breadth-first or depth-first when it comes to your profession? Or would you describe yourself as a T-shaped person?
As mentioned previously, I've tried out a lot of stuff. However, I never deep dove into those topics, except for game development. Right now I enjoy writing backend software the most, but I know of the importance of understanding frontend software. In university I had the opportunity to try out a lot, and ultimately stuck to game development.
Currently I'm trying to go more in-depth with backend development. The internship also showed me the importance of test-driven development, and I'm still learning a lot about it on a regular basis. Privately I have a lot of fun setting up software on my server and glueing it together with docker containers, compose files and all that DevOps magic.
So, in a nutshell, I'd say I'm breadth-first, but I try to get more T-shaped in the areas of backend software and operations.
Does the size of organisation matter? For innovation, opportunity, culture, etc.?
Working in a company like trivago certainly offers the opportunity to learn about a lot of different tech sectors. With the lockdown, I haven't talked to as many developers outside of my sector as usual, but I still see the value it could have.
From my observations and experiences, it seems smaller companies have the advantage of not having to stick to large, overarching company guidelines or even tech stack limitations while not having the capacity to manage large scale software.
I think trivago still manages to stay in the middle here. New technologies are constantly evaluated and new projects don't have a predefined technology stack. It always seems to be a question of "What would be the best tool for the job right now and the next years".
Are you involved in your local tech community?
For a long time, my local tech community consisted of my university colleagues. While we tried to build small projects together, we ultimately needed the time to focus on our studies. Within the last year, I was able to attend a few events including the localhost conference sponsored by trivago. After the lockdown, I hope to be able to attend more events again and connect with the wider active tech community here in Düsseldorf.
What motivates you and gives you a sense of purpose?
Mostly personal growth. I like to level up my skills to improve my contribution value. When I was younger I tried out a lot of different things – graphic design, motion design, 2D & 3D animation, music composition etc. In the end, I started my studies in computer science and focused on improving my skills by learning many different technologies. That's why I also appreciate being able to explore new tech stack in my work at trivago.
"If I could, I'd change …" - what?
Usually, when I'm confronted with a challenge and I feel I can do something about it, I don't wait too long to act. Of course, it depends on the situation and priority, but I try to keep the mindset of "why wait for tomorrow when you can try it right now?". This may not always be the most optimal approach since a simple challenge can easily blow up into a big, extensive project quickly eating away at your time. Waiting too long on it mostly causes me to procrastinate though, so I'd rather dive into it right away and evaluate the usefulness during the process.
So… what would I change, if I had the time?
I would like to dive into frontend development again and finally finish my personal website. It's been collecting dust for too long now and I kind of feel like I could use some TypeScript in my life right now. At the moment, the struggle of finding the right framework still slows me down since there's so much to try, but not everything fits my use case.
Thanks for sharing Fabian – we look forward to seeing you develop further during your internship!