Will Percey - Knowledge BaseVersion: 2.0.0
Architecture & Patterns
Software architecture and design patterns including structural, behavioral, creational, DDD, microservices, and distributed systems patterns.
Comprehensive testing patterns for unit tests, integration tests, performance testing, simulation, and quality assurance strategies.
Architecture frameworks (C4, TOGAF, ArchiMate), diagram tools (PlantUML, Mermaid, UML), architecture views, ADRs, and quality attributes.
AI agent design patterns including reflection, planning, tool use, multi-agent collaboration, and autonomous workflow orchestration.
Fault tolerance, rate limiting, load control, graceful degradation, and recovery patterns for building resilient distributed systems.
Gang of Four behavioral design patterns including event-driven patterns, state management, strategy selection, and command handling.
Thread-based and message-based concurrency patterns for parallel processing, async operations, and multi-threaded applications.
Data access, transaction management, and query patterns including Repository, Unit of Work, and ORM-related design patterns.
Communication, data management, resilience, and cross-cutting patterns for building distributed microservice architectures.
Architecture patterns, redundancy models, database HA, cluster configurations, and SLA calculations for building highly available systems.
Three pillars (logs, metrics, traces), golden signals, monitoring types, SLI/SLO/SLA definitions, and best practices for comprehensive system observability.
Forecasting methodologies, scalability testing, capacity metrics, autoscaling strategies, and performance tuning for right-sizing infrastructure and handling growth.
Data storage patterns, processing architectures (Lambda/Kappa), data governance, data modeling approaches, and lifecycle management for scalable data platforms.
RESTful design principles, API standards (OpenAPI), security (OAuth, rate limiting), API management, and governance for consistent, scalable APIs.
Deployment patterns (blue-green, canary, rolling), CI/CD practices, release management, environment management, and infrastructure as code for reliable deployments.
Tenant isolation models, data partitioning strategies, identity & access management, resource isolation, lifecycle management, and monitoring for SaaS applications.
Integration styles, message routing, transformations, ESB platforms, message endpoints, and reliability patterns for connecting distributed enterprise systems.
Strategic design concepts, context mapping, tactical patterns (entities, aggregates), application architecture (CQRS, event sourcing), and DDD implementation practices.
Principles of chaos engineering, failure injection techniques, chaos tools (Chaos Monkey, Gremlin), experiment design, GameDays, and organizational adoption strategies.
Feature transformation, selection, extraction techniques, feature stores, and engineering patterns for ML model development.
Data labeling strategies, annotation workflows, quality control, active learning, and crowd-sourcing patterns for ML datasets.