Sheet ⁨21⁩ · ⁨Authors⁩Surveyed ⁨2026⁩
Mohammad Abu Mattar

Mohammad Abu Mattar

Hi, I’m Mohammad Abu Mattar

DevOps engineer, AWS-certified, working in the field since 2017. I run multi-account AWS platforms and production Kubernetes for fintech, where PCI-DSS sets the rules. On this site I write up what worked, what broke, and what I would do differently. Most of my tooling ends up open source.

Blog Posts

Multi-Region Active-Active on AWS: What It Actually Costs You

Multi-Region Active-Active on AWS: What It Actually Costs You

Surviving a full regional outage with no downtime is the thing every architecture review eventually asks about, and the answer is usually more expensive than the person asking expects. In a multi-regi

Building a Customizable Image Slider in React Using Hooks, SCSS, and TypeScript

Building a Customizable Image Slider in React Using Hooks, SCSS, and TypeScript

Introduction In this tutorial, we will be building a customizable image slider in React using hooks, SCSS, and TypeScript. An image slider is a common UI element used in web applications to displa

Caching Strategies with Redis in Node.js and TypeScript

Caching Strategies with Redis in Node.js and TypeScript

Introduction Optimizing application performance is an ongoing job, and caching is one of the most effective ways to do it. Redis, a fast in-memory data store, is a common choice for caching in Nod

Deploying Infrastructure with Terraform in CI/CD Pipelines

Deploying Infrastructure with Terraform in CI/CD Pipelines

In fast-paced DevOps environments, Infrastructure as Code (IaC) has become a cornerstone for managing and scaling infrastructure efficiently. Terraform, a leading open-source IaC tool, is widely a

Get Started with Building ReactJS and Docker: A Complete Guide

Get Started with Building ReactJS and Docker: A Complete Guide

Introduction Docker is a powerful tool that allows developers to create, deploy, and run applications in a portable and scalable way. It uses containerization to encapsulate all the dependencies a

How to CI/CD AWS With Github using Jenkins

How to CI/CD AWS With Github using Jenkins

Introduction In a previous post, I showed you how to set up Jenkins on an AWS EC2 instance. You can read that post here. In this post, I will sho

Case Studies

Hardening a CI/CD Supply Chain to SLSA Level 3

Hardening a CI/CD Supply Chain to SLSA Level 3

The question that started this was from an auditor, and it was a fair one: can you prove that the container running in production is the one your pipeline built from the commit you think it was? We ha

Taming a 3am Pager: SLOs and Error Budgets That Stuck

Taming a 3am Pager: SLOs and Error Budgets That Stuck

A platform team was losing people to burnout, and the cause was the pager. On-call meant a phone that went off day and night with alerts about CPU, memory, and pod restarts, the overwhelming majority

Multi-Region Active-Active for a Payments API

Multi-Region Active-Active for a Payments API

A payments API that moves real money had been running comfortably in a single AWS region for years. It was reliable until the day it was not: a regional control-plane incident took the whole service o

Building an Internal Developer Platform on Backstage and GitOps

Building an Internal Developer Platform on Backstage and GitOps

Product teams were spending more time waiting on the platform team than building features. Spinning up a new service meant opening a ticket and waiting for someone to provision a repo, wire up CI, wri

Zero-Downtime PostgreSQL Major-Version Upgrade at Scale

Zero-Downtime PostgreSQL Major-Version Upgrade at Scale

A multi-terabyte PostgreSQL 12 database was reaching end of life, and the business ran around the clock, so the usual answer of "schedule a maintenance window" was off the table. We upgraded it to Pos

Migrating a Monolith to Kubernetes Without a Big-Bang Cutover

Migrating a Monolith to Kubernetes Without a Big-Bang Cutover

Almost every failed "let's move off the monolith" project shares one detail: the plan was a big-bang cutover. Rewrite in parallel, pick a weekend, flip the switch, and pray. This is the opposite of th

Cheatsheets

Linux Processes

  • Operating System
  • 12 Sept 2026

A reference for managing Linux processes and services. Covers ps and top for inspection, kill and pkill for signals, nice and renice for priority, cgroups and limits, and systemctl and journalctl for managing and debugging systemd units.

#Linux#Processes#Ps+6 tags
View Cheatsheet

TypeScript

  • Programming Language
  • 30 Aug 2026

A TypeScript reference covering the type syntax engineers use most, from unions and generics to utility types, modern techniques (satisfies, const type params, template literal types, using), and the TypeScript 7 native compiler.

#TypeScript#TypeScript 7#Types+5 tags
View Cheatsheet

Python Virtual Environments Cheatsheet

  • Python
  • 17 Aug 2026

A practical reference for venv, pip, requirements files, pyenv version switching, and pipx for isolated global tools.

#Python#Virtualenv#Pip+5 tags
View Cheatsheet

GitHub Actions

  • DevOps & Tools
  • 04 Aug 2026

The workflow YAML you write over and over. Triggers, jobs and steps, secrets, matrix builds, caching, artifacts, and reusable workflows in one reference.

#GitHub Actions#Workflow#CI/CD+5 tags
View Cheatsheet

Linux Networking

  • DevOps & Tools
  • 21 Jul 2026

The commands you reach for to diagnose and manage Linux networks. ip for interfaces and routes, ss for sockets, dig for DNS, traceroute for paths, and tcpdump for packets.

#Linux networking#Ip command#Tcpdump+5 tags
View Cheatsheet

kubectl

  • DevOps & Tools
  • 27 May 2026

kubectl is the command-line tool for talking to a Kubernetes cluster. Use it to deploy apps, inspect and manage resources, stream logs, and debug running pods.

#Kubectl#Kubernetes#K8s+5 tags
View Cheatsheet

Code Snippets

Upload Files to AWS S3 with Pre-Signed URLs in Node.js

Upload Files to AWS S3 with Pre-Signed URLs in Node.js

Routing file uploads through your API server is the default that nobody questions, and it is usually the wrong one. The bytes travel to your compute, sit in memory or a temp file, then travel again to

Multi-Environment Secret Management with HashiCorp Vault

Multi-Environment Secret Management with HashiCorp Vault

Managing secrets safely across multiple environments with HashiCorp Vault Storing secrets in .env files, hardcoding them, or even using separate secret managers per environment creates security

AWS DynamoDB CRUD Operations in Node.js with the AWS SDK v3

AWS DynamoDB CRUD Operations in Node.js with the AWS SDK v3

Quick Tip Wrap the low-level DynamoDB client in a DynamoDBDocumentClient so you pass plain JavaScript objects in and get plain objects back, then guard your writes with ConditionExpression an

Python Dataclass Patterns: Slots, Frozen Instances, and Field Validation

Python Dataclass Patterns: Slots, Frozen Instances, and Field Validation

Quick Tip Reach for @dataclass(slots=True, frozen=True) with a post_init check and you get a small, immutable, validated value object in about five lines. The Problem The problem

Bash Script Locking: Prevent Concurrent Runs with a PID File

Bash Script Locking: Prevent Concurrent Runs with a PID File

Quick Tip Wrap any script that must not run twice at once in a PID-file lock, and a second copy simply exits instead of corrupting your data. The Problem The Problem Cron does not c

Python Async HTTP Requests with aiohttp: Fetch Multiple URLs Concurrently

Python Async HTTP Requests with aiohttp: Fetch Multiple URLs Concurrently

Quick Tip Reuse one aiohttp session, fan your requests out with asyncio.gather, and cap them with a semaphore to fetch hundreds of URLs in the time one loop would take. The Problem **The

Dev Tips

Speeding Up CI Pipelines: Caching, Parallelism, and Skipping Unnecessary Work

Speeding Up CI Pipelines: Caching, Parallelism, and Skipping Unnecessary Work

A slow pipeline does not just waste compute. It changes behaviour. Once feedback takes longer than about ten minutes, people stop waiting for it. They context-switch, batch up changes into bigger pull

Container Image Vulnerability Scanning in CI/CD with Trivy

Container Image Vulnerability Scanning in CI/CD with Trivy

Why container security matters Where the vulnerabilities hide A container image is one of the largest pieces of untrusted code you ship. Every image you build carries the base OS layer,

Structured Logging & Log Aggregation with ELK Stack

Structured Logging & Log Aggregation with ELK Stack

Why centralized logging matters When services fail, where do you look first? In a distributed system, logs scatter across servers, containers and regions. One request might touch five service

Kubernetes Ingress Controllers Explained: Nginx, Traefik, and AWS ALB Compared

Kubernetes Ingress Controllers Explained: Nginx, Traefik, and AWS ALB Compared

Why the ingress controller you pick matters Hey, want your cluster to actually serve traffic? Kubernetes gives you the Ingress API, a way to declare "route this host and path to that service.

Terraform Workspaces vs. Directory-Based Environments: What Actually Scales

Terraform Workspaces vs. Directory-Based Environments: What Actually Scales

Why this choice matters Hey, want to stop sweating every prod apply? The way you split dev, staging, and prod in Terraform decides how much damage a single mistake can do. Get it right and a

GitHub Actions Secrets and Environment Variables: Handle Config the Right Way

GitHub Actions Secrets and Environment Variables: Handle Config the Right Way

Why secrets handling matters Most CI leaks are config mistakes, not attacks Hey, want to stop leaking credentials in your pipelines? Most secret leaks in CI are not the result of some cle

Flashcards

AWS Advanced Networking Specialty Flashcards (ANS-C01)

AWS Advanced Networking Specialty Flashcards (ANS-C01)

  • Aws
  • 40 Cards
  • ~17 min
  • 15 Sept 2026

The ANS-C01 is the AWS exam least forgiving of vocabulary-only knowledge. Most questions describe a working topology, break one thing, and ask which of four plausible components is responsible. Knowin

Linux Foundation Certified System Administrator Flashcards (LFCS)

Linux Foundation Certified System Administrator Flashcards (LFCS)

Spaced-repetition deck for the LFCS exam: essential commands, users and groups, storage, networking, services, and security.

Docker and Container Fundamentals Flashcards

Docker and Container Fundamentals Flashcards

A spaced-repetition deck covering images, containers, Dockerfiles, volumes, networking, Compose, and registries.

Terraform Associate Flashcards (TA-003)

Terraform Associate Flashcards (TA-003)

Full exam coverage for the HashiCorp Certified Terraform Associate (TA-003) exam using spaced repetition. Covers IaC concepts, CLI, HCL, state, modules, backends, and Terraform Cloud.

Kubernetes Administrator Flashcards (CKA)

Kubernetes Administrator Flashcards (CKA)

Full exam coverage for the Certified Kubernetes Administrator (CKA) exam using spaced repetition. Covers cluster architecture, workloads, scheduling, networking, storage, security, and troubleshooting.

AWS SysOps Administrator Associate Flashcards (SOA-C02)

AWS SysOps Administrator Associate Flashcards (SOA-C02)

Full exam coverage for the AWS Certified SysOps Administrator Associate (SOA-C02) exam using spaced repetition. Covers monitoring, reliability, deployment, security, networking, and cost optimization.

Glossary

Databases & SQL

Databases & SQL

Most confusion about SQL is vocabulary rather than syntax. People know how to write a join and still get caught by a LEFT JOIN that quietly behaves like an INNER JOIN, because nobody explained that a

Observability & Monitoring

Observability & Monitoring

A quick-reference glossary for making sense of system health: the three pillars (metrics, logs, traces), the reliability vocabulary (SLI, SLO, error budget, burn rate), how good alerting works, and th

CI/CD & Automation

CI/CD & Automation

A quick-reference glossary of the terms you meet when automating builds, tests, and deployments: pipeline anatomy, test gates, and release strategies like canary and blue-green.

Kubernetes Advanced

Kubernetes Advanced

This glossary covers the advanced Kubernetes terminology platform engineers rely on: scheduling, networking, storage, security, extensibility, and the workload controllers that keep applications runni

Cloud Computing on AWS

Cloud Computing on AWS

This glossary covers the essential Amazon Web Services terms every cloud engineer and architect should know: compute, storage, networking, databases, and the identity controls that keep it all secure.

Networking Fundamentals

Networking Fundamentals

This glossary covers the core networking concepts every developer, DevOps engineer, and system administrator should know: how data is layered and addressed, and how it gets routed across the internet.

Incidents

The Admission Gate Denied an Image Built from a Fork

  • Sev3
  • None in production, blocked at admission
  • Security
  • CI/CD
  • 20 Sept 2026

An image built from a fork by a misconfigured pipeline in a sandbox account reached a production cluster and was denied at admission. Under the old setup it would have run, and nobody would have known.

A Regional Control-Plane Failure Took a Payments API Offline

A money-movement API ran in one AWS region for years. A regional control-plane incident took it offline for hours with nowhere to fail over to. The fix was idempotency first, then a second region.

Quizzes

Ruby on Rails: Convention Over Configuration

Ruby on Rails: Convention Over Configuration

Rails is productive because it decided things for you. The router derives a controller and action from a verb and a path, the controller infers its template from its own name, and Active Record infers

PHP & Laravel: Modern Web Development Fundamentals

PHP & Laravel: Modern Web Development Fundamentals

  • PHP
  • Laravel
  • 20 Questions
  • ~5 min
  • 06 Sept 2026
  • Level: Intermediate

Ready to check how well you know PHP and Laravel? This quiz runs through routing and middleware, Eloquent relationships and the N+1 trap, migrations and seeders, Blade, and the artisan workflow. Read

C# & .NET: Language and Runtime Fundamentals

C# & .NET: Language and Runtime Fundamentals

  • C#
  • .NET
  • 20 Questions
  • ~5 min
  • 24 Aug 2026
  • Level: Intermediate

Ready to test how well you know C# and the .NET runtime? This quiz walks through the type system, LINQ, async/await, the CLR and garbage collection, and modern features like records and pattern matchi

Spring Boot: Java Application Framework Essentials

Spring Boot: Java Application Framework Essentials

Spring Boot removed most of the ceremony from Java backend development, but the framework still does a lot of work you cannot see. This quiz walks through dependency injection, auto-configuration, RES

Java: Core Language & JVM Fundamentals

Java: Core Language & JVM Fundamentals

  • Java
  • JVM
  • 20 Questions
  • ~5 min
  • 01 Aug 2026
  • Level: Intermediate

Java has quietly powered banks, Android, and countless backend systems for decades, and the language keeps evolving with records, sealed classes, and virtual threads. This quiz walks through the core

Rust: Ownership, Borrowing & Memory Safety

Rust: Ownership, Borrowing & Memory Safety

This quiz tests your grip on the parts of Rust that trip up newcomers and pay off later: ownership and moves, borrowing and lifetimes, traits and generics, pattern matching, error handling with `Resul

Roadmaps

Python Developer Beginner to Expert

Python Developer Beginner to Expert

  • Learning
  • All Levels
  • 8 Stages
  • 41 Topics
  • 20 Sept 2026

Python is easy to start and deceptively deep, which produces a common shape of developer: fluent in syntax, productive in a framework, and unsure what happens when the code meets real traffic. This ro

Node.js Developer Beginner to Expert

Node.js Developer Beginner to Expert

Node.js Developer Beginner to Expert This roadmap takes you from JavaScript foundations and the event loop through building APIs, working with databases, streams, testing, and security, and on to r

React Developer Beginner to Expert

React Developer Beginner to Expert

React Developer Beginner to Expert This roadmap takes you from JavaScript prerequisites through JSX, hooks, and state management, and on to data fetching, meta-frameworks, performance, and testing.

Full-Stack Developer Beginner to Expert

Full-Stack Developer Beginner to Expert

Full-Stack Developer Beginner to Expert This roadmap walks you from your first web page to shipping and operating a complete production application. Work the stages in order. Build the frontend fun

Backend Developer Beginner to Expert

Backend Developer Beginner to Expert

Backend Developer Beginner to Expert This roadmap walks you from your first server-side program to designing scalable, secure systems. Work through the stages in order. Nail a language, the command

Frontend Developer Beginner to Expert

Frontend Developer Beginner to Expert

Frontend Developer Beginner to Expert This roadmap walks you from absolute beginner to a strong, hireable frontend engineer. Work through the stages in order. The early ones build the mental model