Матрица компетенций студента-разработчика (версия 0.2)

Категория Подкатегория Навык Тип Самооценка (1-5) Частота (1-5) Уверенность (1-5) Дата Примечание
Computer Science Структуры данных Базовые структуры: массивы, списки, стек, очередь, словарь. Понимание отличий и применения Хард
Понимание принципа работы хеш-таблиц и коллизий Хард
Базовое понимание деревьев (для иерархий, индексов БД) Хард
Аргументированный выбор структуры данных под задачу Софт
Анализ сложности (время доступа, использование памяти) Софт
Алгоритмы Линейный и бинарный поиск. Понимание основных сортировок Хард
Понимание нотации Big O (O(1), O(n), O(log n), O(n²)) Хард
Оптимизационное мышление (оценка эффективности) Софт
Декомпозиция задачи на алгоритмические шаги Софт
Архитектура & Паттерны Понимание и применение принципов SOLID Хард
Знание базовых паттернов (Фабрика, Репозиторий, Наблюдатель) Хард
Порождающие паттерны: Singleton, Builder, Prototype Хард
Структурные паттерны: Adapter, Decorator, Facade Хард
Поведенческие паттерны: Strategy, Command, Iterator Хард
Паттерны корпоративных приложений: Unit of Work, Identity Map Хард
Абстрактное мышление и применение известных шаблонов Софт
Язык C# и .NET Основы C# Синтаксис: переменные, операторы, управляющие конструкции Хард
ООП: создание классов, инкапсуляция, наследование, полиморфизм Хард
Работа с исключениями (try-catch-finally, пользовательские исключения) Хард
Читаемость кода (соглашения об именовании) Софт
Продвинутые возможности C# LINQ (запросы и методы расширений) Хард
Асинхронность (async/await, Task) Хард
Рефлексия, атрибуты Хард
Generics, ковариантность и контравариантность Хард
Оптимизация (память, производительность) Софт
GUI (WPF / Avalonia) XAML: базовая разметка, панели компоновки (StackPanel, Grid) Хард
Data Binding (привязка к свойствам ViewModel, режимы) Хард
Команды (ICommand, ReactiveCommand) Хард
Стили, триггеры, шаблоны элементов управления Хард
Навигация между окнами/страницами Хард
UX-мышление и разделение логики (MVVM) Софт
Доступ к данным в .NET ADO.NET (SqlConnection, SqlCommand, SqlDataReader) Хард
Dapper (установка, Query<T>, Execute) Хард
Entity Framework Core (DbContext, миграции, LINQ-запросы) Хард
Выбор инструмента под задачу (Dapper vs EF Core) Софт
Тестирование Написание юнит-тестов (xUnit/NUnit) Хард
Использование mock-объектов (Moq, NSubstitute) Хард
Интеграционное тестирование Хард
TDD (разработка через тестирование) Софт
ASP.NET Core Создание Web API (контроллеры, маршрутизация) Хард
Middleware и конвейер обработки запросов Хард
Внедрение зависимостей (DI) Хард
Аутентификация и авторизация (JWT, Identity) Хард
Работа с базами данных через EF Core в ASP.NET Хард
Razor Pages / MVC Хард
Документирование в C# XML-комментарии для публичных API (summary, param, returns) Хард
Генерация документации (DocFX) Хард
Документирование REST API (Swagger/OpenAPI в ASP.NET Core) Хард
Базы данных: SQL & СУБД Основы SQL DDL (CREATE/ALTER TABLE, ключи) Хард
DML (SELECT с JOIN, GROUP BY; INSERT, UPDATE, DELETE) Хард
Транзакции (ACID, BEGIN, COMMIT, ROLLBACK) Хард
Индексы, анализ плана запроса (EXPLAIN) Хард
Мышление множествами (составление запросов) Софт
PostgreSQL Особенности типов данных (JSONB, массивы) Хард
Полнотекстовый поиск (tsvector, tsquery) Хард
Расширения (PostGIS, pgcrypto) Хард
Настройка производительности (VACUUM, ANALYZE) Хард
Документирование схемы (комментарии к таблицам и колонкам) Софт
MySQL Особенности хранения (InnoDB vs MyISAM) Хард
Репликация и партиционирование Хард
Оптимизация запросов (EXPLAIN в MySQL) Хард
Документирование схемы Софт
SQLite Встраиваемая БД, особенности использования Хард
Работа с SQLite в мобильных и десктопных приложениях Хард
Веб-разработка HTML/CSS Семантическая вёрстка, доступность Хард
Flexbox и Grid Layout Хард
Адаптивная вёрстка (медиа-запросы) Хард
Препроцессоры (Sass, Less) Хард
JavaScript Основы синтаксиса, типы данных, функции Хард
DOM-манипуляции и события Хард
Асинхронность (Promise, async/await) Хард
Fetch API и работа с REST Хард
Модули (ES6 modules) Хард
Документирование JavaScript (JSDoc: @param, @returns, @throws) Хард
Генерация документации (JSDoc, TypeDoc для TypeScript) Хард
PHP Основы синтаксиса, работа с формами Хард
Сессии и куки Хард
Подключение к БД (MySQLi, PDO) Хард
Основы ООП в PHP Хард
Документирование PHP (PHPDoc: @param, @return, @throws) Хард
Инструменты: phpDocumentor, Doxygen Хард
Мобильная разработка Android (Kotlin) Основы языка Kotlin (синтаксис, null safety, корутины) Хард
Android SDK (Activity, Fragment, жизненный цикл) Хард
Jetpack Compose (composable-функции, state, модификаторы) Хард
Навигация в Compose Хард
Архитектурные компоненты (ViewModel, LiveData/Flow) Хард
Работа с сетью (Retrofit, Kotlin Serialization) Хард
Базы данных (Room) Хард
DI (Dagger, Hilt) Хард
Тестирование на Android Хард
Документирование Kotlin (KDoc, Dokka) Хард
Контейнеризация Docker Основные команды (docker run, build, push) Хард
Создание Dockerfile, оптимизация слоёв Хард
Docker Compose (запуск многоконтейнерных приложений) Хард
Сетевое взаимодействие контейнеров Хард
Volumes и работа с данными Хард
CI/CD интеграция (GitLab CI, GitHub Actions) Софт
Документирование Docker-образов (docker inspect, labels) Софт
Инструменты: Git Базовые команды init, clone, add, commit, push, pull Хард
Ветвление и слияние (branch, merge, разрешение конфликтов) Хард
Осмысленные коммиты (понятные сообщения) Софт
Командная работа (работа с общим репозиторием, pull requests) Софт
Взаимодействие в команде Навыки коммуникации Участие в код-ревью: давать конструктивную обратную связь Софт
Участие в код-ревью: принимать замечания и анализировать Софт
Совместная разработка в Git (ветки, мерж-реквесты) Софт
Ясная устная и письменная коммуникация Софт
Работа по Agile/Scrum: роли, стендапы, оценка задач Софт
Менторство и обмен знаниями Софт
Профессиональные практики Общие практики Отладка (точки останова, пошаговое выполнение) Хард
Профилирование и оптимизация производительности Хард
Проактивность (самостоятельный поиск и исправление ошибок) Софт
Восприятие обратной связи и работа над собой Софт
Документирование кода (общие принципы) и создание инструкций Софт
🎨 Цветовая схема:Категория — базовый цвет, подкатегория — градиентный сдвиг, навыки — оттенки с узором для soft. При наведении на категорию подсвечивается вся группа. Данные сохраняются в браузере.

Легенда цветов

Категория Базовый цвет Hard-скилл (пример) Soft-скилл (пример)
Computer Science
Язык C# и .NET
Базы данных: SQL & СУБД
Веб-разработка
Мобильная разработка
Контейнеризация
Инструменты: Git
Взаимодействие в команде
Профессиональные практики