This week’s system design refresher:
25 Computer Papers You Should Read (Youtube video)
Why is the credit card called “the most profitable product in banks”?
What is a Load Balancer?
Top 10 k8s Design Patterns
SPONSOR US
👋Goodbye low test coverage and slow QA cycles (Sponsored)
Bugs sneak out when less than 80% of user flows are tested before shipping. However, getting that kind of coverage (and staying there) is hard and pricey for any team.
QA Wolf’s AI-native solution provides high-volume, high-speed test coverage for web and mobile app, reducing your organization’s QA cycle to minutes.
They can get you:
80% automated E2E test coverage in weeks—not years
24-hour maintenance and on-demand test creation
Zero flakes, guaranteed
The benefit? No more manual E2E testing. No more slow QA cycles. No more bugs reaching production.
With QA Wolf, Drata’s team of 80+ engineers achieved 4x more test cases and 86% faster QA cycles.
🌟 Rated 4.8/5 on G2
25 Computer Papers You Should Read!
Why is the credit card called “the most profitable product in banks”?
How does VISA/Mastercard make money?
The diagram below shows the economics of the credit card payment flow.
1. The cardholder pays a merchant $100 to buy a product.
2. The merchant benefits from the use of the credit card with higher sales volume, and needs to compensate the issuer and the card network for providing the payment service. The acquiring bank sets a fee with the merchant, called the “𝐦𝐞𝐫𝐜𝐡𝐚𝐧𝐭 𝐝𝐢𝐬𝐜𝐨𝐮𝐧𝐭 𝐟𝐞𝐞.”
3 - 4. The acquiring bank keeps $0.25 as the 𝐚𝐜𝐪𝐮𝐢𝐫𝐢𝐧𝐠 𝐦𝐚𝐫𝐤𝐮𝐩, and $1.75 is paid to the issuing bank as the 𝐢𝐧𝐭𝐞𝐫𝐜𝐡𝐚𝐧𝐠𝐞 𝐟𝐞𝐞. The merchant discount fee should cover the interchange fee.
The interchange fee is set by the card network because it is less efficient for each issuing bank to negotiate fees with each merchant.
5. The card network sets up the 𝐧𝐞𝐭𝐰𝐨𝐫𝐤 𝐚𝐬𝐬𝐞𝐬𝐬𝐦𝐞𝐧𝐭𝐬 𝐚𝐧𝐝 𝐟𝐞𝐞𝐬 with each bank, which pays the card network for its services every month. For example, VISA charges a 0.11% assessment, plus a $0.0195 usage fee, for every swipe.
6. The cardholder pays the issuing bank for its services.
Why should the issuing bank be compensated?
The issuer pays the merchant even if the cardholder fails to pay the issuer.
The issuer pays the merchant before the cardholder pays the issuer.
The issuer has other operating costs, including managing customer accounts, providing statements, fraud detection, risk management, clearing & settlement, etc.
Over to you: Does the card network charge the same interchange fee for big merchants as for small merchants?
Latest articles
If you’re not a paid subscriber, here’s what you missed.
To receive all the full articles and support ByteByteGo, consider subscribing:
What is a Load Balancer?
A load balancer is a device or software application that distributes network or application traffic across multiple servers.
What Does a Load Balancer Do?
1. Distributes Traffic
2. Ensures Availability and Reliability
3. Improves Performance
4. Scales ApplicationsTypes of Load Balancers
1. Hardware Load Balancers: These are physical devices designed to distribute traffic across servers.
2. Software Load Balancers: These are applications that can be installed on standard hardware or virtual machines.
3. Cloud-based Load Balancers: Provided by cloud service providers, these load balancers are integrated into the cloud infrastructure. Examples include AWS Elastic Load Balancer, Google Cloud Load Balancing, and Azure Load Balancer.
4. Layer 4 Load Balancers (Transport Layer): Operate at the transport layer (OSI Layer 4) and make forwarding decisions based on IP address and TCP/UDP ports.
5. Layer 7 Load Balancers (Application Layer): Operate at the application layer (OSI Layer 7) .
6. Global Server Load Balancing (GSLB): Distributes traffic across multiple geographical locations to improve redundancy and performance on a global scale.
Top 10 k8s Design Patterns
Foundational Patterns
These patterns are the fundamental principles for applications to be automated on k8s, regardless of the application's nature.
1. Health Probe Pattern
This pattern requires that every container must implement observable APIs for the platform to manage the application.
2. Predictable Demands Pattern
This pattern requires that we should declare application requirements and runtime dependencies. Every container should declare its resource profile.
3. Automated Placement Pattern
This pattern describes the principles of Kubernetes’ scheduling algorithm.Structural Patterns
These patterns focus on structuring and organizing containers in a Pod.
4. Init Container Pattern
This pattern has a separate life cycle for initialization-releated tasks.
5. Sidecar Pattern
This pattern extends a container’s functionalities without changing it.Behavioral Patterns
These patterns describe the life cycle management of a Pod. Depending on the type of the workload, it can run as a service or a batch job.
6. Batch Job Pattern
This pattern is used to manage isolated atomic units of work.
7. Stateful Service Pattern
This pattern creates distributed stateful applications.
8. Service Discovery Pattern
This pattern describes how clients discover the services.Higher-Level Patterns
These patterns focus on higher-level application management.
9. Controller Pattern
This pattern monitors the current state and reconciles with the declared target state.
10. Operator Pattern
This pattern defines operational knowledge in an algorithmic and automated form.
Reference: developers.redhat. com/blog/2020/05/11/top-10-must-know-kubernetes-design-patterns
SPONSOR US
Get your product in front of more than 1,000,000 tech professionals.
Our newsletter puts your products and services directly in front of an audience that matters - hundreds of thousands of engineering leaders and senior engineers - who have influence over significant tech decisions and big purchases.
Space Fills Up Fast - Reserve Today
Ad spots typically sell out about 4 weeks in advance. To ensure your ad reaches this influential audience, reserve your space now by emailing sponsorship@bytebytego.com