Skip to content

Year: 2016

Autonomous Peer Learning at Booking.com and How You Can Do it in Your Organization

This article was originally published for Booking.com’s Technology blog on November 23rd, 2016.

Continuous learning on the job is hard. We all see things we want to improve, but maybe we’re missing a few skills to really make an impact. With most days filled with emails and meetings, there’s often not much time left for learning, no matter how much we want to develop our skills.

Although many organizations try to remedy this issue by employing external companies to handle training, they rarely follow-up to ensure such trainings are actually value for money. Not only that, employees are often left to figure out how their new skills can be applied to daily work, and sometimes they are even left wondering if the training taught them anything useful at all.

I work at Booking.com as an engineering manager, and in my job I wanted to learn about a topic for which there was no formal training. I ended up creating a study group that became the blueprint for autonomous peer learning in our Technology department. It’s an initiative that has been scaled to 50 Peer-to-Peer (or P2P) learning groups over the last 18 months.

The premise of P2P groups is that participants take the time to think about what they want to learn and why. This means their learning is tailored from the very beginning, ensuring that it is both relevant to their work and beneficial to their organization.

Implementing a Key-Value Store – Part 10: High-Performance Networking: KingServer vs. Nginx

This is Part 10 of the IKVS series, “Implementing a Key-Value Store”. You can also check the Table of Contents for other parts. In this series of articles, I describe the research and process through which I am implementing a key-value database, which I have named “KingDB”. The source code is available at http://kingdb.org. Please note that you do not need to read the previous parts to be able to follow what is going on here. The previous parts were mostly exploratory, and starting with Part 8 is perfectly fine.

In this article, I explain the model and inner workings of KingServer, the network server for KingDB. In order to put things into perspective I also cover Nginx, the high-performance HTTP server well-known for its network stack, and how it differs from KingDB.

How to get started with infrastructure and distributed systems

Most of us developers have had experience with web or native applications that run on a single computer, but things are a lot different when you need to build a distributed system to synchronize dozens, sometimes hundreds of computers to work together. I recently received an email from someone asking…