---
# System prepended metadata

title: 'Learning facilities matrix, following the meeting on Learning paths design for Reserve: .NET upskill'

---

# Learning facilities matrix, following the meeting on Learning paths design for Reserve: .NET upskill

This document describes ways for developing competencies for .NET software engineers who are in Reserve and are not assigned to any project. In such cases, it's proposed to either concentrate on self-learning

The matrix is split by competencies which correspond to IntelliGrowth  job competencies.
## .NET 

### C# 

Read:
- CLR via C# - http://sd.blackball.lv/library/CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
- .NET architecture - https://github.com/sidristij/dotnetbook
- C# Typesystem - https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/types/
- Generics - https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/generics/
- C# interop - https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/interop/
- Roslyn compiler overview - https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/

Watch:
- Pluralsight course learning path on C# - https://www.pluralsight.com/paths/csharp
- Making .NET applications faster - https://www.pluralsight.com/courses/making-dotnet-applications-faster
- .NET microservices https://www.pluralsight.com/paths/net-microservices
- Azure for .NET - https://www.pluralsight.com/paths/net-developer-on-microsoft-azure

Certifications:

### ASP.NET

Read:
- ASP.NET patterns - https://github.com/davidfowl/AspNetCoreDiagnosticScenarios
- ASP.NET fundamentials - https://docs.microsoft.com/en-us/aspnet/core/fundamentals/?view=aspnetcore-5.0&tabs=windows
- ASP.NET fundamentials - https://www.telerik.com/blogs/understanding-asp-net-core-initialization

Watch:
- ASP.NET Core learning path - https://www.pluralsight.com/paths/aspnet-core
- Security in ASP.NET - https://www.pluralsight.com/paths/securing-aspnet-and-aspnet-core-applications
- Getting Started with ASP.NET Core SignalR - https://app.pluralsight.com/library/courses/aspdotnet-core-signalr-getting-started/table-of-contents

Certifications:

### Entity Framework

Read:
- EF internal architecture and terminology - https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/ef/overview
- EF Core overview - https://docs.microsoft.com/en-us/ef/core/
- Dapper overview - https://medium.com/dapper-net/dapper-net-tutorial-summary-79125c8ecdb2

Watch:
- Learning path on Entity Framework Core - https://www.pluralsight.com/paths/entity-framework-core
- Dapper - https://www.pluralsight.com/courses/getting-started-dapper

Certifications:

### LINQ

Read:
- LINQ overview - https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/linq/
Watch:
- LINQ Fundamentals - https://www.pluralsight.com/courses/linq-fundamentals-csharp-6 https://docs.microsoft.com/en-us/dotnet/csharp/linq/

Certifications:

### Roslyn

Read:
- https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/
- https://github.com/dotnet/roslyn
Watch:
- Building Code Analyzers with the new C# compiler platform (Roslyn) - Filip W - https://www.youtube.com/watch?v=ghnY4S8unMM
- The Power of Roslyn - Kasey Uhlenhuth - https://www.youtube.com/watch?v=nXljhGDokqA

Certifications:

### TPL

Read:
- TPL concepts explained - https://docs.microsoft.com/en-us/dotnet/standard/parallel-processing-and-concurrency
- Task vs Thread - https://stackoverflow.com/questions/13429129/task-vs-thread-differences
- PLINQ - https://docs.microsoft.com/en-us/dotnet/standard/parallel-programming/introduction-to-plinq
- Parallel programming with .NET - https://docs.microsoft.com/en-us/previous-versions/msp-n-p/ff963553(v=pandp.10)
Watch:
- Getting Started with Asynchronous Programming in .NET https://www.pluralsight.com/courses/getting-started-with-asynchronous-programming-dotnet
- Async/Await workout https://www.youtube.com/watch?v=eV45ZgXU1Mk
Certifications:

## General Software Engineering Skills

### Code quality

Read:
- SonarQube overview https://livebook.manning.com/book/sonarqube-in-action/chapter-1/40
- Setup SonarQube for .NET project - https://medium.com/@thiagoloureiro/code-analysis-with-sonarqube-docker-net-core-aee521ee8931
- Ways to improve code quality for project - https://codingsans.com/blog/code-quality

Watch:

Certifications:

### CI/CD Practices

Read: 

- https://www.infoworld.com/article/3271126/what-is-cicd-continuous-integration-and-continuous-delivery-explained.html
- https://www.digitalocean.com/community/tutorials/an-introduction-to-ci-cd-best-practices
- https://www.netapp.com/devops-solutions/what-is-devops/
- DevOps & feedback - https://devops.com/faster-feedback/#:~:text=According%20to%20Goldberg%2C%20context%20in,improvements%20work%20in%20production%20context.&text=These%20more%20rapid%20assessment%20cycles,business%20value%20offered%20by%20developers.

Watch:
- Best practices for securing CI/CD pipeline - Victoria Almazova  - https://www.youtube.com/watch?v=ZqQ5gFB2Ty4
- Modern Continuous Integration with Azure Pipelines - Edward Thomson - https://www.youtube.com/watch?v=uTv8K21scGQ
- From zero to CD in 60 minutes - Glenn F. Henriksen - https://www.youtube.com/watch?v=D4_1LU9jljk
Certifications:

### Code review

Read:
- https://stackoverflow.blog/2019/09/30/how-to-make-good-code-reviews-better/
- https://medium.com/palantir/code-review-best-practices-19e02780015f
- https://google.github.io/eng-practices/review/reviewer/
Watch:
- Code Review Etiquettes 101 - Janani Subbiah - https://www.youtube.com/watch?v=Z0j1m7qwk3M

Certifications:

### Math

Read:
- Course on Linear algebra and related concepts - https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/
- Trigonometry basics - https://www.skillsyouneed.com/num/trigonometry.html
Watch:
- Trigonometry basics - https://www.youtube.com/watch?v=PUB0TaZ7bhA

Certifications:

### Refactoring

Read:
- Martin Fowler - Refactoring - http://silab.fon.bg.ac.rs/wp-content/uploads/2016/10/Refactoring-Improving-the-Design-of-Existing-Code-Addison-Wesley-Professional-1999.pdf

Watch:
- Refactoring to Immutability - Kevlin Henney - https://www.youtube.com/watch?v=APUCMSPiNh4 

Certifications:

### Unit-testing

Read:
- best practices - https://docs.microsoft.com/en-us/dotnet/core/testing/unit-testing-best-practices
- best practices - https://stackify.com/unit-testing-basics-best-practices/

Watch:
- The lazy programmer's guide to writing thousands of tests - Scott Wlaschin - https://www.youtube.com/watch?v=IYzDFHx6QPY
- End-to-End Automated Testing in a Microservices Architecture - Emily Bache - https://www.youtube.com/watch?v=IYzDFHx6QPY
- Simplified Unit Testing with the Entity Framework Core InMemory Provider - Jason Taylor - https://www.youtube.com/watch?v=ddrR440JtiA
- TDD in C# - https://www.pluralsight.com/courses/csharp-test-driven-development

Certifications:

### Version Control Systems (VCS)

Read:
- trunk based development
- gitflow - https://trunkbaseddevelopment.com/
- git best practices - https://sourcelevel.io/blog/7-git-best-practices-to-start-using-in-your-next-commit
- merge vs rebase - https://www.atlassian.com/git/tutorials/merging-vs-rebasing
- advanced git tutorials - https://www.atlassian.com/git/tutorials/advanced-overview

Watch:

Certifications:

## Core management

### Developing People

Read:
Watch:
Certifications:

### Motivating and Communicating

Read:
Watch:
Certifications:

### Setting Objectives and Planning

Read:
Watch:
Certifications:


## Foreign Languages

### English language

Read:
Watch:
Certifications:

## Soft skills

### Client Orientation

Read:
Watch:
Certifications:

### Cognitive skills

Read:
Watch:
Certifications:

### Collaboration. Teamwork. Conflicts & Stress management

Read:
Watch:
Certifications:

### Communication

Read:
Watch:
Certifications:

### Initiative, Influence & Leadership

Read:
Watch:
Certifications:

### Personal Effectiveness

Read:
Watch:
Certifications:

## Software Architecture

### GRASP

Read:
- http://www.kamilgrzybek.com/design/grasp-explained/
- https://home.cs.colorado.edu/~kena/classes/5448/f12/presentation-materials/rao.pdf
- Coupling vs cohesion - https://stackoverflow.com/questions/3085285/difference-between-cohesion-and-coupling

Watch:

Certifications:

### Object oriented design

Read:
- CQRS & ES & DDD - https://cqrs.files.wordpress.com/2010/11/cqrs_documents.pdf
- DDD applied - http://www.zankavtaskin.com/2014/12/applied-domain-driven-design-ddd-part-0.html
- Aggregates + Event Sourcing distilled - https://blog.jayway.com/2013/03/08/aggregates-event-sourcing-distilled/
- MVC vs MVVM vs MVP - https://medium.com/@ankit.sinhal/mvc-mvp-and-mvvm-design-pattern-6e169567bbad
- GoF - http://www.w3sdesign.com/GoF_Design_Patterns_Reference0100.pdf
- DI vs DIp vs IoC - https://softwareengineering.stackexchange.com/questions/94616/understanding-the-dip-di-ioc-theory
- Does the ActiveRecord pattern follow/encourage the SOLID design principles? https://softwareengineering.stackexchange.com/questions/119352/does-the-activerecord-pattern-follow-encourage-the-solid-design-principles
- Patterns of Enterprise Application Architecture http://ce.sharif.edu/courses/97-98/2/ce418-1/resources/root/Books/Patterns%20of%20Enterprise%20Application%20Architecture%20-%20Martin%20Fowler.pdf
- messaging patterns - https://docs.microsoft.com/en-us/azure/architecture/patterns/category/messaging
- Enterprise patterns https://docs.microsoft.com/en-us/azure/architecture/patterns/index-patterns
- Patterns for microservices - https://dzone.com/articles/design-patterns-for-microservices

Watch:
- Microservices Architectural Design Patterns Playbook - https://app.pluralsight.com/library/courses/microservices-architectural-design-patterns-playbook/table-of-contents
- DDD skill path - https://app.pluralsight.com/paths/skill/domain-driven-design
Certifications:

### SOLID

Read:
- SOLID explained https://itnext.io/solid-principles-explanation-and-examples-715b975dcad4

Watch:
- SOLID explained - https://www.youtube.com/watch?v=rtmFCcjEgEw
- Playlist on patterns https://www.youtube.com/watch?v=dhnsegiPXoo&list=PLLWMQd6PeGY3ob0Ga6vn1czFZfW6e-FLr
- SOLID https://channel9.msdn.com/Events/TechEd/NorthAmerica/2014/DEV-B315
- SOLID https://www.youtube.com/watch?v=agkWYPUcLpg
Certifications:

### UML Modeling

Read:
- https://www.geeksforgeeks.org/unified-modeling-language-uml-introduction/ and all further articles in the section

Watch:
- Introduction to UML - https://www.pluralsight.com/courses/uml-introduction 

Certifications:

## Software Engineering Management

### Agile Software Development

Read:
- https://agilemanifesto.org/

Watch:
- Agile is a Dirty Word https://www.youtube.com/watch?v=rdr4RMAAYwA
- Agile Software Architecture (https://www.youtube.com/watch?v=3YCIw3gewFE)

Certifications:


