Leanpub Header

Skip to main content

Filters

Category: "Software Architecture"

Software Architecture

New to Software Architecture? Read the Software Architecture article

  1. From Code to Systems
    From Code to Systems
    A Practical Guide to Architectural Thinking
    Nagendra Gupta

    Phase 0 - Orientation Learning How to Think About DesignBefore we talk about systems, we need to talk about how you think.Most engineers approach design the way they approach code: gather requirements, choose tools, apply patterns, and move forward. This works—until it doesn’t. At some point, the systems you build stop behaving like the code you wrote. Problems emerge that cannot be traced to a single function, service, or decision. When that happens, adding more knowledge does not help. Changing how you reason does.This phase exists to interrupt familiar instincts.Phase 0 is not about teaching you what to design. It is about exposing the assumptions you already carry—about correctness, scale, failure, and simplicity—and showing where they quietly break down. These chapters will feel less concrete than the ones that follow. That is intentional. You cannot reason well about systems until you are comfortable with uncertainty, trade-offs, and incomplete explanations.If you rush through this phase looking for answers, it will feel unsatisfying. If you sit with it, it will change how the rest of the book lands. The goal of Phase 0 is simple: by the time you reach Phase 1, you should no longer be asking, “What framework should I use?” You should be asking, “What kind of problem is this, really?”Chapter 1: What Is System Design (and What It Is Not) A System That Worked YesterdayThe system worked yesterday.The code hadn’t changed. Tests were green. No alerts fired overnight.And yet this morning, requests were timing out.Someone suggested adding more instances. Someone else blamed the database. A third person said, “It works on my machine.”All reasonable guesses. All wrong.By noon, a temporary fix was deployed. By evening, the incident was “resolved.” By next week, it happened again—somewhere else.Nothing was broken. And that was the problem. The Question Nobody AskedAfter incidents like this, teams usually ask familiar questions:Which service caused it?Was it a bug or a configuration issue?Do we need better monitoring?These are safe questions. They have owners. They lead to tickets. The dangerous question is the one nobody asks:What assumption did we design this system around—and when did it stop being true?That question does not map to a single component. It does not have a Jira ticket. It cannot be fixed with a patch.And yet, most system failures quietly begin there. When Code Stops Explaining BehaviorAs a developer, you are trained to reason locally.Input goes in. Logic executes. Output comes out.When something breaks, you look for the line of code responsible.Systems do not behave this way.In systems:Failures emerge from interactionsLatency appears without slow functionsLoad exposes assumptions you forgot you madeEvery component can behave “correctly” while the system misbehaves.This is not an edge case. This is the default state of non-trivial systems. The Moment Code Becomes a SystemThere is a moment—often unnoticed—when local reasoning stops working.The moment when:Understanding one service is no longer enoughFixing one issue creates another elsewhereBehaviour depends on timing, not logicConfidence drops even though competence hasn’tNothing announces this transition. No role change marks it. No diagram captures it cleanly.But once it happens, the rules change.System design begins after this moment. Most teams do not notice this moment. They only feel its consequences

  2. The Architect's Playbook
    The Architect's Playbook
    5 Pillars of Production AI Agent Architecture
    Atef Ataya

    Learn how to build AI agents that actually survive production — with battle-tested patterns for cost control, reliability, and scale.

  3. Designing for Scale
    Designing for Scale
    Arinze Onugha

    Great execution doesn't create scale. Category creation does.Designing for Scale is for Product Managers, founders and builders who are done optimising incremental gains and ready to design systems that compound. Drawing from real-world experience across emerging and mature markets, this book breaks down how products move from 0 → 1 and then from 1 → 100M by fusing product, business model and distribution.This is not a playbook for fast followers. It is for people who want to define what comes next.

  4. Using AI in Real Software Teams - Complete Ebook
    Using AI in Real Software Teams - Complete Ebook
    A Spec-Driven Approach to Safe, Scalable Software Development
    Samarth hathwar
    No Description Available
  5. You Don't Know JSON
    You Don't Know JSON
    Beyond Six Data Types: The Complete Ecosystem
    Dayna Blackwell

    JSON succeeded not because it was better--XML had schemas, namespaces, and 10 years of tooling, but because it understood modularity in ways XML never could. This book deconstructs how a deliberately incomplete format defeated a comprehensive standard, then shows you the production patterns (JSON Schema, JSONB, MessagePack, versioning strategies) that make JSON systems scale from prototype to billions of requests.

  6. The Unicorn CTO
    The Unicorn CTO
    The Complete Guide to Technology Leadership: From Developer to C-Suite Executive
    zia

    This isn't theory from an academic—it's hard-won wisdom from someone who has lived every challenge in this book. ? WHO THIS BOOK IS FOR: - Senior engineers aspiring to CTO or VP Engineering roles- New CTOs (under 2 years) seeking a comprehensive playbook- Experienced CTOs wanting fresh frameworks and validation- Technical founders wearing the CTO hat- Engineering managers planning their executive path

  7. BehindTheStack — A Evolução da Arquitetura da Netflix
    BehindTheStack — A Evolução da Arquitetura da Netflix
    Da sobrevivência do monólito à escala global (Early Access)
    Raphael Silva Fontes

    Pare de copiar padrões de design sem entender os problemas que os criaram. A arquitetura da Netflix não foi desenhada em um quadro branco; ela foi forjada por falhas críticas. Neste livro, mergulhamos nos bastidores técnicos da maior plataforma de streaming do mundo para entender os trade-offs reais por trás dos microsserviços, da resiliência e da escala global. Fugindo do "hype" e focando na engenharia, BehindTheStack disseca como o monólito foi quebrado, como a persistência de dados evoluiu e como a cultura de liberdade e responsabilidade moldou o código. Escrito para Arquitetos, Tech Leads e Engenheiros Sêniores que buscam profundidade além dos tutoriais rasos. Adquira a versão Early Access e acompanhe a escrita deste manual de sobrevivência em escala.

  8. Designing Deterministic Systems with Modern C++
    Designing Deterministic Systems with Modern C++
    Host-First Development on Linux
    Mark E. Wilson

    Learn how to design embedded systems the sane way: on your Linux host, with modern C++, predictable timing, clean interfaces, and no unnecessary complexity.

  9. The Professional Junior
    The Professional Junior
    Master the Senior Mindset and Write Code for Humans
    Doogal Simpson

    Stop reading 400-page theory books. This is a 30-page tactical field guide you can read during your lunch break and apply before you clock out. Learn the unwritten rules of clean code—without the fluff.

  10. System Design Mastery - AI Agents and Agentic Systems
    System Design Mastery - AI Agents and Agentic Systems
    Case Studies, Trade-offs & Scenarios
    Sameer Paradkar

    Master AI Agents from Architecture to ProductionBuild autonomous agent systems that actually work in production. This comprehensive guide takes you from understanding ReAct patterns to orchestrating multi-agent systems at scale. What You'll Master:✅ Agent architectures: When to use agents vs RAG vs fine-tuning✅ Reasoning patterns: ReAct, Chain-of-Thought, Plan-and-Execute✅ Multi-agent orchestration with proper coordination protocols✅ Production deployment with error handling, monitoring, cost optimization✅ Tool calling, memory systems, and context management Who This Is For: Software engineers building LLM applications, backend engineers adding agentic capabilities, senior engineers preparing for AI agent interviews at top companies. What Makes This Different: 100+ production-focused scenarios with real architectural trade-offs. Real-world examples from companies shipping agent systems . Stop building chatbots. Start building agents that take action.

  11. System Design Mastery - Generative AI
    System Design Mastery - Generative AI
    Case Studies, Trade-offs & Scenarios
    Sameer Paradkar

    Master Generative AI from Theory to ProductionYou don't learn Gen AI from tutorials — you learn from solving real problems. How does ChatGPT handle context and avoid hallucinations? How does Perplexity build RAG at scale? How does GitHub Copilot generate accurate code? System Design Mastery - Generative AI teaches through real-world scenarios and production patterns. 116 scenario-driven case studies covering:✅ RAG with vector databases and hybrid search✅ Prompt engineering with Chain-of-Thought reasoning✅ Document processing with multi-format parsing✅ Multi-modal AI with vision and audio✅ Production deployment with monitoring and cost optimization Every scenario includes: production problem, architectural approaches, Gen AI patterns, decision frameworks, tool implementations, and interview-ready explanations. Learn through case studies from OpenAI, Anthropic, Google, Meta, and top AI-companies. Your journey from developer to Gen AI architect begins here — with scenarios you'll face and tools you can deploy.

  12. System Design Mastery - Data Analytics and Machine Learning
    System Design Mastery - Data Analytics and Machine Learning
    Case Studies, Trade-offs & Scenarios
    Sameer Paradkar

    Master Data and ML Systems at ScaleYou don't master data platforms from textbooks — you master from solving real problems at petabyte scale.System Design Mastery - Data Analytics and Machine Learning teaches through production scenarios and case studies. 100 scenario-driven case studies covering:✅ Lakehouse architecture with Delta Lake, Iceberg, Hudi✅ Real-time pipelines with Kafka, Spark, Flink✅ Feature stores with Feast for training-serving consistency✅ MLOps platforms with MLflow, SageMaker, Airflow✅ Data quality frameworks with Great Expectations✅ Multi-region data sync and model serving at scale Every scenario includes: production challenge, architectural trade-offs, data/ML patterns, decision frameworks, and interview-ready explanations. Learn through real-world case studies from Netflix, Uber, Airbnb, Spotify's petabyte-scale data and ML architectures. Your journey from data engineer to architect begins here — with scenarios you'll face and systems you can build.

  13. System Design Mastery - Advanced
    System Design Mastery - Advanced
    Case Studies, Trade-offs & Scenarios
    Sameer Paradkar

    You don't master distributed systems from diagrams — you master from solving complex problems at scale. How does Netflix handle distributed transactions across regions? How does Uber orchestrate sagas for ride workflows? System Design Mastery – Advanced Track teaches through production scenarios and case studies. 124 advanced scenario-driven case studies covering: ✅ Event sourcing, CQRS, saga orchestration✅ Service mesh with Istio configuration✅ Distributed tracing with OpenTelemetry✅ Workflow orchestration with Temporal✅ Change data capture with Debezium✅ Multi-region architectures and conflict resolution Every scenario includes: production challenge, architectural trade-offs, advanced patterns, decision frameworks, and interview explanations. Learn through real-world case studies from Google, Netflix, Uber, Meta, and Stripe's planet-scale architectures. Your journey from senior engineer to architect begins here — with scenarios you'll face and patterns you can implement.

  14. System Design Mastery - Foundation
    System Design Mastery - Foundation
    Case Studies, Trade-offs & Scenarios
    Sameer Paradkar

    Master System Design from Theory to ProductionYou don't learn system design from textbooks — you learn from solving real problems. How does Netflix handle video streaming at scale? How does Uber route millions of rides? How does Slack deliver messages instantly? System Design Mastery – Foundation Track teaches through real-world scenarios and case studies. 124 scenario-driven case studies covering:✅ Database design, sharding, replication✅ Caching with Redis configuration✅ Microservices with Spring Boot & Kubernetes✅ Message queues with Kafka✅ Load balancing with NGINX✅ Monitoring with Prometheus Every scenario includes: production problem, architectural approaches, design patterns, decision frameworks, tool configurations, and interview-ready explanations. Learn through real-world case studies — from Google, Amazon, Meta, Netflix, and top tech companies. Your journey from developer to designers begins here — with scenarios you'll face and tools you can deploy.

  15. Por Dentro do Jetpack Compose (Edição em Português do Brasil)

    O Jetpack Compose é o futuro da UI do Android. Domine como ele funciona internamente e torne-se um desenvolvedor mais eficiente com ele. Você também achará útil mesmo se não for um desenvolvedor Android. Este livro fornece todos os detalhes para entender como o Compose compiler e o runtime funcionam, e como criar uma biblioteca cliente usando-os.