My personal notes on software engineering, collected from experience and synthesized from the reading materials I’ve consumed.

Core Engineering Practices

Fundamental approaches to building quality software.

Software Design & Architecture

System-level design decisions and architectural patterns.

  • System Design - Architecture, APIs, data, and system design principles
  • Delivery - Delivery processes, team patterns, and workflows

Delivery & Operations

Getting software into production and keeping it running.

Technology & Tools

Specific technologies, frameworks, and development tools.

Professional Development

Growing as an engineer and working effectively with others.

Resources

External Resources

Engineering Blogs

Tools & Utilities

Standards & Patterns

  • Reading List - Books, articles, and talks that have influenced my thinking