Architecture Weekly #98
Architecture Weekly Issue #98. Articles, books, and playlists on architecture and related topics. Split by sections, highlighted with complexity: 🤟 means hardcore, 👷♂️ is technically applicable right away, 🍼 - is an introduction to the topic or an overview. Now in telegram as well.
WARNING 🇺🇦
It's already been a year and a half since Russia's crazy, brutal and unjustified war against Ukraine. We condemn this war and want it to stop ASAP. We continue this newsletter so you can advance your skill and help the millions of Ukrainian people in any way possible. If you want to help directly, visit this fund.
Big thanks to Nikita, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria and Dzmitry for supporting the newsletter. They receive early access to the articles, influence the content and participate in the closed group where we discuss the architecture problems. They also see my daily updates on all the things I am working on. Join them at Patreon or Boosty!
Highlights
Transaction Isolation in Postgres, explained 🤟
In Designing Data Intensive Applications Martin Kleppmann touched on the consistency topics and Isolation Levels. Gwen Shapira wrote a 30-minute post explaining how those levels work in Postgres with the SQL examples. Incredibly clear explanation, find it below.
#db
Growing into Staff Engineer
Reaching middle or senior engineer could be manageable with the focus on technical competency in the majority of tech companies. But then you would face a problem of growth, as purely technical skills won't simply cut it. Product thinking, communication, leadership - those are essential for making the next step, like Staff Engineer. I conducted an hour long interview with Staff Engineer from Spotify to help you understand how to land Staff position. You will also help me to find out what are exactly the issues you're facing in your career path by filling in this form.
#career #video #interview
Startup CTO Handbook 🍼
Imaging you landed a co-founder role as a technical person in a startup. What the hell do you do? What type of a CTO should you be? How do you manage engineers? Grab the Startup CTO's Handbook, which covers those questions. Fully available in MD for free, but you can purchase a book on Amazon as well.
#book
Follow-Up
AI Coding Assitants 🍼
This week was rich on interviews, so grab an exclusive interview with Anton Arhipov, Developer Advocate at JetBrains, as we delve into the groundbreaking realm of AI Coding Assistants. In this enlightening conversation, Anton sheds light on how these intelligent tools are reshaping the landscape of software development. From boosting productivity to revolutionizing code quality, discover how JetBrains is at the forefront of this technological evolution. Whether you're a seasoned developer or just intrigued by the future of AI in coding, this interview offers valuable insights into the next wave of development tools that are set to transform the industry.
#ai
Recursive embedding and clustering 🤟
Understanding users is crucial to every organization who treats themsevles as data-driven, and Spotify is no exception. However, the task itself is challenging even for season data scientists. In this article, Spotify engineers explain how they achieved manageable, understandable data which they can reason about. Mentions of recent improvents in Data Science itself included!
#dataengineering
Database Fundamentals 🤟
Let's continue on Database topic! Find another post which summarizes the Database Internals and Designing Data Intensive Applications together in a long read covering the Indexes, Isolation Levels, LSM trees and many more!
#db
How Pinterest scaled to 11 million users with only 6 engineers 🍼
My favorite topic of Frugal Architecture! Pinterest shows how they were evolving their system to support the growth of the user base. Simple technologies, vertical and horizontal scaling, database sharding supported by only 6 engineers at the level of 11 million users and some other tactics in the blog post!
#casestudy
Sliding window rate limits in Distributed Systems 👷♂️
Grab, like Uber, sends the marketing communications to their users, which is around 270 millions. But they have to carefully balance the marketing load so that users won't churn because of it. Interesting task to solve at scale. Grab leveraged Redis, Bloom Filters and Roaring Bitmaps to handle it! Details inside.
#distributedsystems
Update on the CAP theorem 🍼
You all know this Consistency-Availability-Partial Tolerance triad. You might also note that it gets it's fair share of criticism. Find a twitter note on why CAP theorem should actually get an improvement.
#theory