| layout | default |
|---|---|
| title | Articles |
| permalink | /articles/ |
This section will contain technical articles covering software architecture, cloud-native engineering, Microsoft Azure and modern software development practices.
The articles will be based on lessons learned while developing the reference projects featured throughout this portfolio, with an emphasis on practical implementation rather than theoretical concepts.
The following articles are planned.
A practical introduction to Event Sourcing, including why it is used, where it fits and how it differs from traditional CRUD applications.
An exploration of Command Query Responsibility Segregation (CQRS), including common misconceptions, implementation patterns and when the additional complexity is justified.
Design considerations for building scalable cloud-native applications using Azure Platform as a Service (PaaS), including asynchronous messaging, independent services and resilient communication.
Applying Domain-Driven Design to create maintainable software through rich domain models, aggregates, value objects and bounded contexts.
Using Azure Cosmos DB to implement an Event Store, including partitioning strategies, optimistic concurrency and event stream design.
Designing denormalised read models to support CQRS and Event Sourcing while maintaining high query performance.
Designing systems around events rather than synchronous service calls, improving scalability, resilience and system decoupling.
Provisioning Azure infrastructure using Bicep templates to achieve repeatable, version-controlled deployments.
Building reliable Continuous Integration and Continuous Deployment pipelines for cloud-native applications.
Using Application Insights, Log Analytics and structured logging to improve visibility into complex distributed applications.
Best practices for building secure, maintainable and scalable REST APIs using ASP.NET Core.
A collection of architectural patterns, trade-offs and lessons learned from building enterprise software over the past two decades.
Additional topics planned for future publication include:
- Microsoft Azure
- Microservices
- Platform Engineering
- DevSecOps
- Software Architecture
- Secure Application Design
- Technical Leadership
- Engineering Culture
- Artificial Intelligence in Software Development
This portfolio is continually evolving as the reference projects mature.
New articles will be published alongside significant project milestones, providing additional technical insight into the architectural decisions, implementation techniques and engineering practices used throughout each project.