Architecture Weekly Issue #161. 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 and Substack as well.

System Design Course Cohort #5 is open!

Typical system design courses teach technical skills but often overlook the connection to business problems. This course fills that gap, emphasizing the importance of recognizing and addressing business priorities with technical approaches. Learn to go beyond load balancing options and performance tactics by focusing on solving real business challenges. Course is completed by 50+ engineers with great feedback!

SIGN UP HERE

Highlights

Deep dive into Offset Tracking in Kafka 👷‍♂️

Ever wondered how Kafka keeps track of which messages a consumer has processed, especially after a crash or restart? Oskar Dudycz shows Kafka’s offset tracking, explains how it ensures consumers resume from the right spot without reprocessing or missing messages. It’s a straightforward look at the evolution from early methods to Kafka’s current approach using the __consumer_offsets topic.  

How does Kafka know what was the last message it processed? Deep dive into Offset Tracking
Today we got back to our Kafka internals series. We discussed how it keeps track of processed messages. This may seem like a detail, but understanding it can be critical for smooth message processing. Check to learn more about internals, but also how other tools are dealing with it!

#kafka

Neglecting Business Context in Technical Decisions  🍼

Ever made a tech choice that seemed right but flopped because it didn’t fit the business vibe? This article shares three real stories where ignoring the business side led to tech failures. It’s a wake-up call to balance technical decisions with business needs.

Neglecting Business Context in Technical Decisions
3 real-life stories, where business context played crucial role in a software failure

#reallife

One or Two? How many Queues?  🍼

I admired how even regular situations can trigger engineers think about profound problems. Marc does not stop to surprise and he reasons about queues application in data processing by the insights obtained from a public WC :)

One or Two? How Many Queues? - Marc’s Blog

#queue

Follow-Up

Building multimodal AI for Ray-Ban Meta glasses 👷‍♂️

In this post, the writer digs into how Meta is integrating multimodal AI into their Ray-Ban glasses, allowing them to recognize and understand various inputs like text and images. It features Shane, a research scientist at Meta, explaining the tech behind these smart glasses and the challenges faced in wearable AI development. Super cool stuff for tech enthusiasts!

Building multimodal AI for Ray-Ban Meta glasses
Multimodal AI – models capable of processing multiple different types of inputs like speech, text, and images – have been transforming user experiences in the wearables space. With our Ray-Ban Meta…

Building Collaborative Prompt Engineering Playgrounds Using Jupyter Notebook 🤟

LinkedIn’s engineering team shares how they use Jupyter Notebooks to create collaborative spaces for prompt engineering, enhancing AI-powered features like AccountIQ. This approach bridges the gap between engineers and non-technical experts, enabling rapid prototyping and iteration. The article delves into the challenges of leveraging large language models in production and outlines strategies for effective prompt engineering. 

Building collaborative prompt engineering playgrounds using Jupyter Notebook

#ai

30 Years of PostgreSQL Buffer Manager Locking Design Evolution 🤟

This article takes you on a journey through three decades of PostgreSQL’s buffer manager locking design. It explores how PostgreSQL evolved from a single BufMgrLock to more sophisticated mechanisms like cntx_lock, BufMappingLock, and BufFreelistLock, enhancing concurrency and performance. A must-read for database enthusiasts interested in PostgreSQL’s architectural advancements.

30 years of PostgreSQL buffer manager locking design evolution
AI generated

#db #performance #postgresql

Picking the right message broker can be tricky with so many options out there. This article breaks down the key factors to consider, like traffic patterns, auto-scaling, and message ordering. It also compares stream-based brokers like Apache Kafka with queue-based ones like Amazon SQS, helping you match the right tech to your messaging needs.

Beyond Trends: A Practical Guide to Choosing the Right Message Broker
Choosing the right message broker for your application requires matching the appropriate technology with the messaging patterns needed. Message brokers can be broadly categorized as either stream-based or queue-based, each offering unique strengths and trade-offs.

#aws #queue

Unexpected Benefit of Building Your Own Tools

Frequently we keen on repeating doing the same manual work which it time consuming and at the same time mortally boring. Alex Tiniuc shows how building new tools benefit you from multiple angles: you learn new approaches, save time and have fun at the same time! I agree 100%

Unexpected Benefits of Building Your Own Tools | Alex Tiniuc

#philosophical

Big thanks to Nikita, Constantin, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria, Dzmitry, Mikhail, Nikita, Dmytro, Denis and Mikhail for supporting the newsletter on Patreon! If you like the newsletter, feel free to support it there - with one-time support for example!