Skill Profile

DDD Tactical Patterns

Entities, Value Objects, Aggregates, Repositories, Domain Events, Specifications

Architecture & System Design Domain-Driven Design

Roles

5

where this skill appears

Levels

4

structured growth path

Mandatory requirements

12

the other 4 optional

Domain

Architecture & System Design

Group

Domain-Driven Design

Last updated

3/17/2026

How to Use

Choose your current level and compare expectations. The items below show what to cover to advance to the next level.

What is Expected at Each Level

The table shows how skill depth grows from Junior to Principal. Click a row to see details.

Role Required Description
Backend Developer (C#/.NET) Understands DDD tactical patterns in C#/.NET: Entity, Value Object, Repository with EF Core. Applies Ubiquitous Language in code using domain-specific naming. Implements Repository pattern with IRepository interfaces and specification pattern.
Backend Developer (Java/Kotlin) Understands DDD tactical patterns in Java/Spring: Entity, Value Object, Repository with Spring Data JPA. Applies Ubiquitous Language using domain-driven package structure. Implements Repository pattern with JPA repositories and custom queries.
Backend Developer (Python) Understands DDD tactical patterns in Python: Entity, Value Object, Repository with SQLAlchemy/Django ORM. Applies Ubiquitous Language through domain module naming. Implements Repository pattern using Abstract Base Classes and dataclasses for Value Objects.
Technical Lead Applies DDD Tactical Patterns when designing components. Understands trade-offs. Participates in architectural discussions.
Role Required Description
Backend Developer (C#/.NET) Required Applies DDD tactical patterns in C#/.NET: Aggregates with invariant enforcement, Domain Events via MediatR/MassTransit, Specification pattern. Designs aggregate boundaries aligned with transaction consistency. Implements rich domain models with EF Core value conversions.
Backend Developer (Java/Kotlin) Required Applies DDD tactical patterns in Java/Spring: Aggregates with JPA entity lifecycle, Domain Events via Spring Events/Axon, Specification pattern. Designs aggregate roots with optimistic locking and event-driven side effects. Implements rich domain models avoiding anemic anti-pattern.
Backend Developer (Python) Required Applies DDD tactical patterns in Python: Aggregates with SQLAlchemy unit-of-work, Domain Events via event bus, Specification pattern with filter objects. Designs aggregate boundaries using Python protocols. Balances rich domain model with Pythonic simplicity.
Solutions Architect Required Designs system architecture using DDD tactical patterns aligned with business domains. Makes ADR decisions on aggregate boundaries, event sourcing trade-offs, and CQRS applicability. Evaluates non-functional requirements impact on domain model design.
Technical Lead Required Designs codebase architecture with DDD tactical patterns. Establishes aggregate design guidelines, domain event contracts, and repository abstractions. Conducts architectural reviews ensuring proper separation of domain and infrastructure layers.
Role Required Description
Backend Developer (C#/.NET) Required Designs DDD architecture for the domain. Defines Bounded Contexts and Context Maps. Implements Anti-corruption Layer for legacy integration. Trains team on DDD. Balances DDD complexity with pragmatism.
Backend Developer (Java/Kotlin) Required Designs DDD architecture for Java/Spring domains with Bounded Contexts, Context Maps, and Anti-corruption Layers for legacy integration. Trains team on Axon Framework, event sourcing patterns, and aggregate design. Balances DDD complexity with delivery pragmatism.
Backend Developer (Python) Required Designs DDD architecture for Python domains with Bounded Contexts and Context Maps. Implements Anti-corruption Layer for legacy system integration using adapters and ports. Trains team on domain modeling with Python, balancing DDD rigor with Pythonic pragmatism.
Solutions Architect Required Defines product architectural strategy with DDD Tactical Patterns. Establishes architecture guidelines. Conducts architecture reviews.
Technical Lead Required Defines the product's architectural strategy with DDD Tactical Patterns. Establishes architecture guidelines. Conducts architecture reviews.
Role Required Description
Solutions Architect Required Defines organizational DDD architectural strategy. Designs reference architectures with tactical pattern catalogs and decision frameworks. Establishes architecture governance for domain-driven system design across multiple product teams.
Technical Lead Required Defines organization's DDD adoption strategy and reference architectures. Establishes architecture governance with pattern libraries, aggregate design guidelines, and domain modeling workshops. Shapes enterprise-wide domain-driven development culture.

Community

👁 Watch ✏️ Suggest Change Sign in to suggest changes
📋 Proposals
No proposals yet for DDD Tactical Patterns
Loading comments...