Architecture Weekly Issue #53. 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 340 days 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.

Video

Highlights

Is Scalable OLTP in the Cloud a Solved Problem? 🤟

As you folks love papers, I bring a fresh interesting one to the Highlights. Murat Demirbas from AWS posted an overview of a paper called "Is Scalable OLTP in the Cloud a Solved Problem?". The overview and the paper itself describe the shared-nothing, single-writer and multiple-writers designs of a scalable OLTP database and discuss their tradeoffs. Murat also highlights that the paper fails to consider metastable errors(which you can find a paper on here). The second part of the original paper is about a new DB and that's not that interesting, but the first part is gold.    

Is Scalable OLTP in the Cloud a Solved Problem? (CIDR 2023)
This paper appeared in CIDR 2023 recently. It is a thought provoking big picture paper, coming from a great team. The paper draws attentio...

#database #cloud #oltp #paper

Yandex Services Source Code Leak 🍼

The internet blew up this week with a major data source leak from a russian IT giant Yandex. The dump contains 44 GB of source code from their monorepository - which was not a single storage of the code in the company. The dump contains tons of services, configs, user-generated data like prompts for Voice Assistant and even database credentials for insider access. Although there are no trained models though, and you can't really build anything from it, as yandex infrastructure is required, you can still use it to learn how the things are done at a company of that scale.

Yandex Services Source Code Leak
Short overview of breach contents

#security #breach

System Design Interview Survival Guide 🍼

I know you folks read the newsletter partially because you want to be ready for the design interview. And the 3rd highlight today is the survival guide for exactly those. The article goes over the list of concepts to be aware of, the architecture patterns, database types, distribution system problems etc. Use as a nice checklist to prepare for the interview!  

System Design Interview Survival Guide (2023): Preparation Strategies and Practical Tips
System Design Interview Preparation: Mastering the Art of System Design

#systemdesign

Follow-Up

As we just wrapped up 2022, it is good to get back and get an overview of the trends of the last year and see what we can expect in future. In this post at InfoQ, they mention the use of ADRs, the importance of the Senior IC role and the emergence of Platform teams. They also highlight that you would rather treat platforms and data as products and handle those accordingly. As regards the software architecture I've invited Uwe Friedrechsen for an hour-long interview, so book your calendars!

InfoQ Software Trends Report: Major Trends in 2022 and What to Watch for in 2023
2022 was another year of significant technological innovations and trends in the software industry and communities. The InfoQ podcast co-hosts met last month to discuss the major trends from 2022, and what to watch for in 2023. This article is a summary of the 2022 software trends podcast.

#architecture #review

How to autoscale your SaaS application Infrastructure 👷‍♂️

RedHat has a series on SaaS Architecture Checklist. Recently they shared Chapter 9 which is about autoscaling the infrastructure. Michael Hrivnak explains how autoscaling can be configured using Cluster API, Cluster Autoscaler and Horizontal Pod Autoscaler so that your SaaS resources are truly elastic.  

How to autoscale your SaaS application infrastructure | Red Hat Developer
Learn how to build SaaS on a compute platform that scales in response to demand using autoscalers. (Part 9 of 9)

#kubernetes #saas #autoscaling #scalability

Must Read Free Kubernetes Books  🍼

Speaking of Kubernetes, take a look at the set of free books which help you to study Kubernetes itself, it's performance and security. The set also includes books on integration patterns and designing distributed systems.  

Must Read Free Kubernetes Books
There is a rise in offerings of free educational content, free software, free cloud resources with the single goal of capturing the new king...

#kata #books

Solution Architecture Kata Example 👷‍♂️

One of the books I recommended in this post, was "Fundamentals of Software Architecture" by Neil Ford. He also knows as a promoter of "Architecture Kata" exercise and he shows an example of a task for such activity in the aforementioned book. What I want to share with you is solving a problem to that particular Kata in this post on Medium. It includes understanding the context and iterating over the design versions. Take a look.  

Solution Architecture 101 : For Budding Architects
Importance of good Architecture in technology can be looked at the same way as architecture in any civil project. A Building with good…

#architecture #kata

Document your event-driven architecture 🍼

In a loosely coupled, event-driven architecture we still want to know What events/messages is a particular service producing, what events/messages can I consume from the service, what is the message schema and more. This short article shows the 3 ways how you can document the answers to those questions.

Serverless Land
Your resource for learning serverless technology.

#documentation #eda

Metrics for quality

When you introduce any metric for your software project, team or whatever else, you will always find out that the metric stops being useful due to Goodhart's law. So if you need to optimize your product for quality, what do you do? Well, if you study the quality itself, you will find out the outer, inner and process quality parts. The article though does not answer what metrics to pick - just how to think about the quality itself.  

Finding Adequate Metrics for Outer, Inner, and Process Quality in Software Development
Implementing a feature can be measured. Quality is harder to measure. This article explores how to balance improving quality and adding new features. It dives into different domains of quality: Outer quality which is owned by the product people (e.g. product owners, testers), inner quality owned by…

#quality #qa

Like the newsletter? Wanna receive new content earlier, than everybody else? Consider helping to run it at Patreon or Boosty. The funds go to pay for the hosting and some software like a Camo Studio license. Patrons and Boosty subscribers of a certain level also get access to a private Architecture Community and of course every supporter gets early access. Big thanks to Nikita, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August and Roman for already supporting the newsletter. Join them as well!