Working on Complex Systems: What I Learned Working at Google

https://news.ycombinator.com/rss Hits: 8
Summary

Hello! Today, let’s discuss a fascinating topic: complex systems.Throughout my career, I’ve worked in many complicated environments. For instance, I worked on optimizing driver-passenger matching in ride-hailing at a Uber's competitor. This context, like others, was technically challenging. Yet, nothing comes close in terms of complexity with my current experience at Google and two years there have refined my perception of complexity.In this post, we will break down the very concept of complexity. Next, we will take a step back to understand what makes certain environments rather complex than complicated and then explore patterns for navigating complex systems effectively.Understanding the distinction between complicated and complex problems is crucial because each requires a fundamentally different approach:Complicated problems are intricate but predictable. They followed structured, repeatable solutions. For example, filing taxes is complicated, but it's a structured and conventional problem since the process remains mostly the same year after year.Complex problems are intricate but unique. They require adaptive and often novel solutions. For example, climate change mitigation is a complex problem because it requires new and adaptive solutions and existing methods alone can’t really address its evolving challenges.Back to software engineering, at the Uber competitor, one of the challenges was to efficiently find the nearest driver for a passenger. This was far from trivial, but it wasn't complex per se. Indeed, many solutions exist, such as applying geo-hashing (example), and implementing one of these solutions was the right approach.At Google, I work as a Site Reliability Engineer (SRE), focusing on the systems powering Google’s ML infrastructure. Here, I consider the challenges genuinely complex, as new paradigms and scheduling approaches are required, especially at Google’s scale.Recognizing whether a system is complicated or complex is really important. Indeed...

First seen: 2025-05-15 06:37

Last seen: 2025-05-15 13:39