Contents
- 1 People
- 1.0 Introduction to Part 1: People
- 1.1 Software engineering values
- 1.2 Team topologies and organizational design
- 1.3 Roles, career ladders, and growth
- 1.4 Ways of working
- 1.5 Decision-making and governance
- 1.6 Decision records
- 1.7 Engineering standards and exceptions
- 1.8 Hiring, interviewing, and onboarding
- 1.9 Distributed and remote work
- 1.10 Engineering effectiveness and developer productivity
- 1.11 Engineering management
- 1.12 Diversity, equity, inclusion, and belonging
- 1.13 Mentoring, coaching, and knowledge sharing
- 2 Software Programming
- 2.0 Introduction to Part 2: Software Programming
- 2.1 Coding standards and style
- 2.2 Software design principles
- 2.3 APIs and interface design
- 2.4 Testing strategy
- 2.5 Code review and collaboration
- 2.6 Version control and source management
- 2.7 Documentation
- 2.8 Software requirements
- 2.9 Software construction
- 2.10 Software configuration management
- 2.11 Software quality
- 2.12 Software models and methods
- 2.13 Computing, mathematical, and engineering foundations
- 2.14 Project and repository structure
- 2.15 Debugging and troubleshooting
- 2.16 Performance engineering
- 2.17 Concurrency and parallelism
- 2.18 Dependency and supply-chain management
- 2.19 Refactoring and technical debt
- 2.20 Error handling and resilience patterns
- 2.21 Type systems and static analysis
- 3 Systems
- 3.0 Introduction to Part 3: Systems
- 3.1 Architecture fundamentals
- 3.2 Architectural styles and patterns
- 3.3 Distributed systems
- 3.4 Data architecture and storage
- 3.5 Scalability, performance, and resilience
- 3.6 Legacy modernization
- 3.7 Software maintenance
- 3.8 Interoperability and open standards
- 3.9 Systems engineering
- 3.10 Embedded and real-time systems
- 3.11 Cloud architecture
- 3.12 Event-driven architecture and messaging
- 3.13 Networking and connectivity
- 3.14 Multi-tenancy and SaaS architecture
- 3.15 Caching and content delivery
- 3.16 API gateways and service mesh
- 3.17 Search and information retrieval
- 4 Security
- 4.0 Introduction to Part 4: Security
- 4.1 Security foundations and culture
- 4.2 Application security
- 4.3 Infrastructure and cloud security
- 4.4 Security operations
- 4.5 Privacy and data protection
- 4.6 Compliance and governance
- 4.7 Identity and access management
- 4.8 Cryptography and key management
- 4.9 Secure software development lifecycle
- 4.10 Penetration testing and red teaming
- 5 UI/UX Design
- 5.0 Introduction to Part 5: UI/UX Design
- 5.1 UX foundations
- 5.2 UI design and design systems
- 5.3 Accessibility
- 5.4 Content and communication design
- 5.5 Internationalization and localization
- 5.6 Frontend engineering
- 5.7 Mobile application development
- 5.8 Design research and usability testing
- 5.9 Service design
- 5.10 Data visualization design
- 6 Artificial Intelligence
- 6.0 Introduction to Part 6: Artificial Intelligence
- 6.1 AI strategy and readiness
- 6.2 Machine learning engineering (MLOps)
- 6.3 Generative AI and LLM applications
- 6.4 AI-assisted software development
- 6.5 Responsible and trustworthy AI
- 6.6 AI infrastructure and operations
- 6.7 AI agents and agentic systems
- 6.8 AI evaluation and testing
- 6.9 Prompt engineering and context design
- 7 Data, Analytics, and Insight
- 7.0 Introduction to Part 7: Data, Analytics, and Insight
- 7.1 Data strategy and governance
- 7.2 Data engineering
- 7.3 Analytics and business intelligence
- 7.4 Product analytics and experimentation
- 7.5 Decision science and data-informed culture
- 7.6 Real-time and streaming data
- 7.7 Data modeling and the semantic layer
- 7.8 Data quality and observability
- 7.9 Master data and reference data management
- 8 Automation
- 8.0 Introduction to Part 8: Automation
- 8.1 CI/CD and delivery
- 8.2 Infrastructure as code and configuration
- 8.3 Containers, orchestration, and cloud-native
- 8.4 Platform engineering and developer experience
- 8.5 Test and process automation
- 8.6 Release management and progressive delivery
- 8.7 Build systems and artifact management
- 9 Operations, Reliability, and Observability
- 9.0 Introduction to Part 9: Operations, Reliability, and Observability
- 9.1 Site reliability engineering
- 9.2 Observability and telemetry
- 9.3 Incident management
- 9.4 Cost, sustainability, and green software
- 9.5 Disaster recovery and business continuity
- 9.6 Chaos engineering and resilience testing
- 9.7 Capacity planning and demand forecasting
- 9.8 On-call and operational readiness
- 10 Project/Product/Programme Management
- 10.0 Introduction to Part 10: Project/Product/Program Management
- 10.1 Portfolio and program management
- 10.2 Risk, audit, and assurance
- 10.3 Procurement, open source, and licensing
- 10.4 Sustaining large and long-lived systems
- 10.5 Ethics, accountability, and public interest
- 10.6 Project management
- 10.7 Agile
- 10.8 Maturity models
- 10.9 Innovation partnership
- 10.10 Software engineering economics
- 10.11 Digital sovereignty
- 10.12 Open source vs closed source
- 10.13 Interorganization collaboration
- 10.14 Product management and discovery
- 10.15 Estimation and forecasting
- 10.16 Stakeholder management and communication
- 10.17 Organizational change management
- 10.18 Open source program office (OSPO) and upstream contribution
- 11 Flow: Discovery and Delivery Pipelines
- 12 Appendices