design

Practical resources about design for software engineers.

152 results

Patterns for Maintainable Code

Design patterns are not cookbook recipes — they are a shared vocabulary for discussing solutions to recurring problems. Knowing when to apply (and when to avoid) a pattern is a hallmark of senior engineering.

Browse our catalog of creational, structural, and behavioral patterns. Each entry includes a real-world scenario, UML diagrams, implementation in multiple languages, and a discussion of trade-offs. From Singleton to Outbox, find the right tool for your context.

intermediate

Onion Architecture — Dependency Inversion in Practice

A practical guide to Onion Architecture: organizing code around the domain model, enforcing...

advanced

Software Architecture Guide

A guide to designing software architecture: monoliths vs microservices, layered architecture, data...

intermediate

Vertical Slice Architecture: Feature-First Organization

A practical guide to Vertical Slice Architecture: organizing code by feature instead of technical...

intermediate

Database Normalization — 1NF to 5NF Explained

A visual guide to database normalization: learn 1NF through 5NF with practical examples, when to...

database-normalization database-design guide
beginner

Clean Code Principles: Writing Maintainable Software

A practical guide to clean code: meaningful names, short functions, DRY, SOLID foundations, and...

beginner

What Works in Code Review — For Authors and Reviewers

A practical guide to useful code reviews: how to write reviewable code, give constructive feedback,...

intermediate

Practical Design Patterns Guide

A guide to selecting and applying the right design pattern for common software engineering problems.

intermediate

SOLID Principles Explained with Examples

Learn the five SOLID principles with practical code examples: Single Responsibility, Open/Closed,...

intermediate

Complete Guide to CSS Grid and Flexbox

Master modern CSS layout with Grid and Flexbox. Covers grid templates, areas, subgrid, responsive...

intermediate

Complete Guide to Mobile Responsive Design

Build responsive layouts that work on every device. Covers CSS Grid, Flexbox, container queries,...

intermediate

Threat Modeling — A Practical Guide for Development Teams

A step-by-step guide to threat modeling: STRIDE, attack trees, data flow diagrams, and integrating...

beginner

Test-Driven Development (TDD) — A Practical Workflow

Learn TDD step by step: write a failing test, make it pass, refactor. Red-Green-Refactor with real...

No results found.