Domain
Desktop Development
Skill Profile
MVVM: Model-View-ViewModel, data binding, commands, DI in desktop applications
Roles
3
where this skill appears
Levels
5
structured growth path
Mandatory requirements
15
the other 0 optional
Desktop Development
Desktop Patterns
3/17/2026
Choose your current level and compare expectations. The items below show what to cover to advance to the next level.
The table shows how skill depth grows from Junior to Principal. Click a row to see details.
| Role | Required | Description |
|---|---|---|
| Desktop Developer (.NET WPF/WinUI/MAUI) | Required | Understands MVVM in WPF/WinUI context. Uses CommunityToolkit.Mvvm with ObservableObject and RelayCommand. Implements DataBinding through {Binding} and {x:Bind}. Separates View and ViewModel. |
| Desktop Developer (Electron/Tauri) | Required | Understands MVVM/MVC in the context of Electron + React. Separates components into View and ViewModel (hooks/stores). Uses React Context for state management. Implements data binding through props and state. |
| Desktop Developer (Qt/C++) | Required | Understands the fundamentals of MVVM Pattern. Applies basic practices in daily work. Follows recommendations from the team and documentation. |
| Role | Required | Description |
|---|---|---|
| Desktop Developer (.NET WPF/WinUI/MAUI) | Required | Applies MVVM with ObservableValidator for validation. Uses IMessenger (WeakReferenceMessenger) for inter-ViewModel communication. Organizes navigation through INavigationService. Implements async commands. |
| Desktop Developer (Electron/Tauri) | Required | Applies state management as ViewModel layer. Organizes navigation through React Router. Implements separation of concerns: IPC layer, business logic, UI components. Tests ViewModel separately. |
| Desktop Developer (Qt/C++) | Required | Applies MVVM with Command pattern through Qt. Uses QAbstractListModel for ViewModel, implements filtering through QSortFilterProxyModel. Organizes navigation through StackView and Router. |
| Role | Required | Description |
|---|---|---|
| Desktop Developer (.NET WPF/WinUI/MAUI) | Required | Designs scalable MVVM architecture for enterprise WPF/WinUI. Uses Source Generators for boilerplate reduction. Implements DI through Microsoft.Extensions.DependencyInjection. Applies Mediator pattern. |
| Desktop Developer (Electron/Tauri) | Required | Designs scalable Electron architecture with Clean Architecture layers. Implements IPC abstraction layer. Applies dependency injection through TSyringe/InversifyJS. Uses mediator for inter-module communication. |
| Desktop Developer (Qt/C++) | Required | Designs scalable MVVM architecture for large Qt applications. Uses Qt Quick Compiler for optimization. Implements DI container for ViewModel, applies Event Bus for inter-component communication. |
| Role | Required | Description |
|---|---|---|
| Desktop Developer (.NET WPF/WinUI/MAUI) | Required | Defines MVVM standards for .NET desktop team. Establishes coding guidelines, conducts architecture review. Mentors on MVVM patterns in WPF/WinUI. |
| Desktop Developer (Electron/Tauri) | Required | Defines architectural patterns for the Electron team. Establishes coding guidelines for separation of concerns. Conducts architecture review. |
| Desktop Developer (Qt/C++) | Required | Defines MVVM standards for the Qt team. Establishes coding guidelines for View/ViewModel separation. Conducts architecture review, mentors on MVVM patterns in Qt. |
| Role | Required | Description |
|---|---|---|
| Desktop Developer (.NET WPF/WinUI/MAUI) | Required | Shapes UI architecture standards for .NET desktop organization. Evaluates MVVM vs MVU (Comet/Fabulous) for different projects. Defines enterprise UI patterns. |
| Desktop Developer (Electron/Tauri) | Required | Shapes architectural standards for the organization's Electron development. Evaluates architectural patterns for complex desktop. Defines enterprise architecture guidelines. |
| Desktop Developer (Qt/C++) | Required | Shapes architectural patterns for desktop UI at the organizational level. Evaluates MVVM vs MVC vs MVU for various Qt projects. Defines enterprise UI architecture standards. |