📅 Week 26
Database Replication Concept Explained
[backend, system design, interviews, databases]
M-Pesa handles the equivalent of Kenya’s entire GDP multiple times over, its system cannot afford to lose a single record or go offline.
Tools to Know for Backend Engineers
[backend, tools]
As a backend engineer, it’s essential to familiarize yourself with the key tools that are commonly used in the industry. Here’s a comprehensive list of tools you should know:
📅 Week 25
Authentication and Authorization: Knowing Who They Are and What They Can Do
[backend, system design, interviews, security]
Most developers mix these up. Authentication and authorization are two separate steps, and confusing them leads to insecure systems and confused interview answers.
System Foundations: From One Server to Millions of Users
[backend, system design, interviews]
Every complex system you admire today (Netflix, Uber, Stripe, Mpesa) started as a single server running everything. Understanding that journey from one box to a distributed fleet is the foundation of system design thinking.
System Design Interview Questions and Answers
[backend, system design, interviews]
These questions reflect real system design rounds at companies like Google, Meta, Amazon, Microsoft, Stripe, and Uber. Each answer follows the structure interviewers expect: clarify requirements, outline the high-level design, then drill into components with tradeoff analysis.
Multi-Factor Authentication: Passkeys, TOTP, Authenticator Apps, and Two-Step Verification
[backend, security, interviews]
Passwords alone are not enough. They get phished, leaked in breaches, reused across sites, and brute-forced. Multi-factor authentication (MFA) adds layers beyond the password so that stealing one credential is not enough to compromise an account. This post covers every modern MFA method, how they work under the hood, and the tradeoffs that determine which ones you should implement.
RESTful APIs: CRUD Operations, Status Codes, and Production Best Practices
[backend, system design, interviews]
REST is not a protocol or a library. It is a set of architectural constraints that, when followed, produce APIs that are predictable, cacheable, and easy to reason about. This guide covers the practical mechanics of building REST APIs that other developers actually want to use.
Databases: Choosing Between SQL, NoSQL, and Graph Stores
[backend, system design, interviews, databases]
The database you pick shapes everything: your query patterns, your scaling strategy, your consistency guarantees, and the kinds of bugs that will wake you up at 3 AM. This is not a “use whatever you know” decision. It is a design decision with real engineering tradeoffs.
Load Balancing, Health Checks, and Eliminating Single Points of Failure
[backend, system design, interviews]
Once you move to horizontal scaling, you need something to sit between your users and your servers to distribute traffic intelligently. That something is a load balancer. But choosing the right distribution algorithm, handling server failures, and avoiding single points of failure are where the real engineering decisions live.
📅 Week 24
API Design: REST, GraphQL, gRPC, and Choosing the Right Protocol
[backend, system design, interviews]
APIs are the glue that holds modern software together. They allow different systems, services, and clients to communicate and work together. As a backend engineer, you will design APIs that power web applications, mobile apps, microservices, and third-party integrations.
📅 Week 23
Full-Text Search and Elasticsearch for Backend Engineers
[backend, databases]
Picture this: it is 2005. You are a software engineer at a fast-growing e-commerce company. You have around 5,000 products in your database, and your task is to build a search API. The query you write looks something like this:
Logging, Monitoring, and Observability
[backend]
Logging, monitoring, and observability are each deserving of their own deep dive. But they also belong together because they work together. You cannot meaningfully have one without the other two if you want to actually understand what is happening inside a running backend system.
Backend Scaling and Performance Engineering Part 2: Horizontal Scaling, Load Balancers, and Database Scaling
[backend, performance]
Part 1 established the mental models: latency, throughput, utilization, percentiles, and why you must measure before you optimize. This post gets into the mechanics of actually scaling a backend — horizontal scaling, the infrastructure that makes it work, and the more complex challenge of scaling your database.
Backend Scaling and Performance Engineering Part 1: Mental Models
[backend, performance]
Scaling and performance are among the most widely discussed topics in backend engineering. They are also among the most misunderstood — partly because people jump straight to techniques (add caching, add servers, upgrade the database) before building a clear mental model of how systems actually behave under load.
Error Handling and Building Fault-Tolerant Systems
[backend]
In the world of backend development, errors are not just problems to solve — they are a normal part of building applications. Your database queries will sometimes fail. Your external APIs will sometimes time out. Your users will sometimes send bad data that breaks your APIs. And your business logic will hit unexpected edge cases.
📅 Archives ...