Architecture Weekly Issue #76. 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 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 and Daria 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

How to prevent digital wallet fraud 👷‍♂️

Mobile banks, payments apps and crypto-wallets are very popular, hitting 120 million users in 2021. Where the money are, there the malicious users are headed. Phishing, social engineering and pure software bugs can lead to money loss. Find out the case studies and recommendations on how to battle those problems in an awesome material by Cossack Labs.  

How to prevent digital wallet fraud | Cossack Labs
Understanding digital wallet fraud is critical for designing and integrating an effective anti-fraud solution. Read about security events, risk models, remote device attestation, user authentication, KYC, trade-offs, and many more.

#security

Gossip Protocol 🤟

The Gossip Protocol is valuable in distributed systems because of its efficiency, scalability, and robustness. It effectively disseminates information across a large number of nodes with minimal network traffic, making it highly scalable even for substantial networks. Moreover, due to its randomized communication pattern, it is highly robust, enabling the system to tolerate failures and still maintain the speed and accuracy of information propagation. Find the description and explanation of its workings below!

Gossip Protocol
scalable broadcast algorithm in distributed system

#gossip #distributedsystems

Cracking the mobile system design interview 👷‍♂️

System design interview is typically a tricky step, and if there are tons of materials on the backend types, there are very few for mobile system design interview. We are fixing this now! Find a good guide on the preparation to a mobile interview. If you don't find that sufficient, you can always request a consultation or a mock interview here.  

Cracking the Mobile System Design Interview (iOS & Android)
A complete step-by-step strategy to preparing and passing the iOS and Android system design interviews at small start-ups and Big Tech companies (FAANG).

#systemdesign #mobile #interview

Highlights

How LinkedIn Serves Over 4.8 million member profiles per Second 👷‍♂️

Read on LinkedIn profiles doubling YoY made the engineering team reconsider how they serve those. So they decided to introduce a Couchebase-enabled caching layer. Find more details inside!    

How LinkedIn Serves over 4.8 Million Member Profiles per Second
LinkedIn introduced Couchbase as a centralized caching tier for scaling member profile reads to handle increasing traffic that has outgrown their existing database cluster. The new solution achieved over 99% hit rate, helped reduce tail latencies by more than 60% and costs by 10% annually.

#casestudy #performance

Introduction to eTOM 🍼

I used to include blue-prints and reference designs for particular business domains, it's time to resume it. Find the eTOM - a framework for telecommunications industry's business processes. The material includes the explanation of various parts  of the standard alongside with the evolution of the standard.

Introduction to eTOM
eTOM is the telecommunications industry’s business process framework standard. In this “eTOM 101” article, we’ll cover the key things you need to know about eTOM: The defini…

#standard

How Gradle cut AWS storage costs by 75% using S3 🍼

Build Scan is an X-Ray tool to understand your Gradle or Maven build. Gradle stores the data about the build steps, timings, used dependencies in the Amazon RDS. Eventually it bit them with the price, so they reconsidered and moved to S3, cutting costs by 75%. More details below.

How Gradle cut AWS storage costs by 75% using S3 | Gradle Enterprise
Gradle recently had an opportunity to optimize the cloud storage layer used for Build Scan®, a feature of Gradle Enterprise. In this article, we’ll deep dive into the challenge we faced with inefficient cloud storage, our decision to migrate to Amazon S3, and the remarkable result: a 75% reduction…

#casestudy

Load Balancer explained from a Startups perspective 🍼

How a technology should handle the ever-growing load of their systems? Follow this post to get a grasp on the different types of load balancing solutions and different balancing algorythms.

Load Balancer explained from a Startups perspective
This article uses the journey of a fictional startup to learn how load-balancing decisions are made at every phase of the growth of a startup.

#loadbalancing #performance

Improving Performance with HTTP Streaming

Serving HTML content as soon as possible is essential to the modern web. AirBnb tried to reduce the time to First Contentful Paint to less than 100ms. And they managed to achieve it by streaming chunks of the HTML page. Find the technical details in AirBnb blog.

Improving Performance with HTTP Streaming
How HTTP Streaming can improve page performance and how Airbnb enabled it on an existing codebase

#performance #web

Lessons learned from Running Web Experiments at Square

The article provides detailed insights into best practices for conducting successful A/B testing, particularly from the perspective of Square's Ecosystem Discovery team. Key points include Establish a metric hierarchy, proper bucketing of test subjects, gradually ramping up A/B test traffic in phases and several others.

Lessons Learned From Running Web Experiments
Delve into the crucial aspects of successful web experiments

#casestudy #abtesting