Get in Touch
 Duration 35 hours

Course Outline

Transitioning from Language Proficiency to Solution Design

  • Advanced C# features and their impact on system design.
  • Reconstructing design intent from legacy codebases.

Requirements Analysis and Domain Modeling

  • Defining use cases, user stories, and acceptance criteria.
  • Building domain models and establishing a ubiquitous language.

Core Software Design Principles

  • Applying SOLID principles within .NET solutions.
  • Managing coupling, cohesion, and dependency flow.

Design Patterns in .NET Applications

  • Selecting appropriate creational, structural, and behavioral patterns.
  • Identifying patterns and anti-patterns in existing code.

Architectural Styles and Technical Decision-Making

  • Comparing layered, hexagonal, and clean architecture approaches.
  • Documenting architecture decisions and analyzing trade-offs.

Structuring the Solution

  • Organizing solutions and projects for large-scale codebases.
  • Choosing between modular monoliths and service-oriented boundaries.

Modern C# for Maintainable Code

  • Leveraging pattern matching, records, and nullable reference types.
  • Utilizing generics, LINQ, and functional composition.

Exception Handling, Logging, and Observability

  • Establishing exception strategies and error contracts.
  • Implementing structured logging, correlation, and health checks.

Reflection, Attributes, and Metaprogramming

  • Applying attribute-driven design and reflection use cases.
  • Using source generators and compile-time code generation.

ASP.NET Core Fundamentals

  • Understanding the hosting model, dependency injection, and configuration.
  • Navigating the request pipeline, middleware, and filters.

RESTful API Design

  • Modeling resources and applying HTTP semantics.
  • Handling versioning, validation, and error responses.
  • Defining API contracts using OpenAPI.

Securing .NET Applications

  • Implementing authentication and authorization via OpenID Connect.
  • Managing policy-based authorization and secrets.

Threat Modeling and Secure Design

  • Applying STRIDE modeling and defining trust boundaries.
  • Conducting secure design reviews before coding begins.

Data Access with Entity Framework Core

  • Modeling entities and their relationships.
  • Managing DbContext lifetime and migration strategies.

Query Performance and Data Architecture

  • Choosing loading strategies and avoiding eager loading pitfalls.
  • Handling transactions, concurrency tokens, and bypassing EF when necessary.

Concurrency and Asynchronous Programming

  • Mastering Tasks, the TPL, and common async/await pitfalls.
  • Implementing synchronization, cancellation, and thread safety.

Performance Optimization

  • Profiling and benchmarking using BenchmarkDotNet.
  • Optimizing memory usage, allocations, and garbage collection.
  • Developing caching strategies and conducting load tests.

Multi-Layer Testing Strategy

  • Defining boundaries for unit, integration, and end-to-end tests.
  • Designing testable architectures and utilizing test doubles.

Deployment and Operational Readiness

  • Managing containers, configuration, and CI/CD pipelines.
  • Ensuring production diagnostics and release safety.

Capstone: Design Review and Implementation

  • Reviewing the architecture of a case study application.
  • Implementing and refactoring a specific feature slice.

Requirements

  • Practical experience with C# programming
  • Solid understanding of object-oriented programming concepts
  • Familiarity with SQL and relational database fundamentals

Target Audience

  • .NET Developers
  • Software Engineers and Technical Leads
  • Developers transitioning into application design roles

Custom Corporate Training

Training solutions designed exclusively for businesses.

  • Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
  • Flexible Schedule: Dates and times adapted to your team's agenda.
  • Format: Online (live), In-company (at your offices), or Hybrid.
Investment

Price per private group, online live training, starting from 8000 € + VAT*

Contact us for an exact quote and to hear our latest promotions

Testimonials (4)

Provisional Upcoming Courses (Contact Us For More Information)

Related Categories