Домен
Основы программирования
Профиль навыка
Инкапсуляция, наследование, полиморфизм, SOLID, DRY, KISS, YAGNI
Ролей
70
где встречается этот навык
Грейдов
5
сформированная дорожка роста
Обязательных требований
155
ещё 191 — необязательные
Основы программирования
ООП и паттерны проектирования
17.03.2026
Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.
Таблица показывает, как меняется глубина владения навыком от Junior до Principal.
| Роль | Обязательность | Описание |
|---|---|---|
| 1С Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием 1С:Предприятие. Следует рекомендациям senior-разработчиков при решении задач. | |
| AI Product Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/TypeScript. Следует рекомендациям senior-разработчиков при решении задач. | |
| Analytics Engineer | Знакомится с основами объектно-ориентированного программирования для структурирования аналитического кода. Понимает концепции инкапсуляции, наследования и полиморфизма применительно к организации data-моделей и трансформаций. | |
| Android Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Kotlin. Следует рекомендациям senior-разработчиков при решении задач. | |
| Application Security Engineer | Понимает базовые концепции ООП в Python/Go: классы, интерфейсы, инкапсуляция. Применяет простые принципы SOLID при написании инструментов сканирования безопасности. Следует командным паттернам структуры модулей сканера уязвимостей и дизайна классов генерации отчётов. | |
| AR/VR Developer | Обязателен | Применяет ООП-принципы (инкапсуляция, наследование, полиморфизм) в C# для Unity. Создаёт компонентную архитектуру для AR/VR-объектов. Понимает SOLID принципы. |
| Backend Developer (C#/.NET) | Обязателен | Понимает базовые концепции ООП в C#: классы, интерфейсы, наследование, инкапсуляция. Применяет простые принципы SOLID, следуя конвенциям .NET-проекта. Следует командным паттернам дизайна классов сервисов/репозиториев и настройки внедрения зависимостей. |
| Backend Developer (Elixir) | Понимает принципы ООП в контексте Elixir: хотя Elixir — функциональный язык, понимает полиморфизм через protocols, инкапсуляцию через modules. Сравнивает с ООП-подходами. | |
| Backend Developer (Go) | Обязателен | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Go. Следует рекомендациям senior-разработчиков при решении задач. |
| Backend Developer (Java/Kotlin) | Обязателен | Понимает базовые концепции ООП в Java: классы, интерфейсы, абстрактные классы, инкапсуляция. Применяет простые принципы SOLID, следуя структуре Spring-проекта. Следует командным паттернам дизайна классов сервисов/контроллеров/репозиториев и аннотаций Spring DI. |
| Backend Developer (Node.js) | Обязателен | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач. |
| Backend Developer (PHP) | Обязателен | Создаёт классы с инкапсуляцией, наследованием и полиморфизмом. Понимает интерфейсы и абстрактные классы. Следует принципу единой ответственности в своём коде. Использует type hints и return types. |
| Backend Developer (Python) | Обязателен | Понимает инкапсуляцию, наследование, полиморфизм в Python. Создаёт классы с __init__, свойствами и методами. Знает принципы SOLID на базовом уровне. Использует property декораторы и dunder-методы (__str__, __repr__). |
| Backend Developer (Rust) | Обязателен | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Rust. Следует рекомендациям senior-разработчиков при решении задач. |
| Backend Developer (Scala) | Обязателен | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач. |
| BI Analyst | Понимает базовые принципы ООП для написания структурированного Python-кода в аналитических скриптах. Знает концепции классов и модулей для организации reusable аналитического кода. Создаёт простые классы для инкапсуляции логики обработки данных и генерации отчётов. | |
| Blockchain Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Solidity/Rust/Go. Следует рекомендациям senior-разработчиков при решении задач. | |
| Cloud Engineer | Применяет ООП при написании cloud-automation скриптов: классы для ресурсов, наследование для типов инстансов. Понимает инкапсуляцию конфигурации и полиморфизм провайдеров. | |
| Compiler Engineer | Знает базовые концепции oop principles для compiler engineer и умеет применять их в типовых задачах. Использует стандартные инструменты и следует установленным практикам команды. Понимает когда и почему применяется данный подход. | |
| Computer Vision Engineer | Понимает базовые концепции ООП в Python: классы, наследование, абстрактные методы. Применяет простые принципы SOLID при структурировании кода CV-пайплайна. Следует командным паттернам классов обработки изображений и дизайна обёрток инференса моделей в проектах PyTorch/OpenCV. | |
| Data Analyst | Знает базовые принципы ООП — инкапсуляцию, наследование и полиморфизм — и применяет их при написании простых классов для обработки данных. Понимает разницу между классами и объектами. | |
| Data Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/SQL. Следует рекомендациям senior-разработчиков при решении задач. | |
| Data Scientist | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/R. Следует рекомендациям senior-разработчиков при решении задач. | |
| Database Engineer / DBA | Знает основные принципы ООП: инкапсуляция, наследование, полиморфизм. Применяет базовые паттерны при написании скриптов автоматизации для управления базами данных. | |
| Desktop Developer (.NET WPF/WinUI/MAUI) | Понимает ООП в: классы, интерфейсы, наследование, полиморфизм. Использует abstract/virtual/override. Знает разницу между class и record. Применяет инкапсуляцию через properties и init-only setters. | |
| Desktop Developer (Electron/Tauri) | Понимает ООП в TypeScript: классы, интерфейсы, дженерики, access modifiers. Использует dependency injection на базовом уровне. Применяет абстракции через interfaces для service layer. | |
| Desktop Developer (Qt/C++) | Понимает ООП в контексте Qt: наследование от QObject, Q_OBJECT макрос, виртуальные методы. Использует инкапсуляцию через Q_PROPERTY с getter/setter. Знает правила Rule of Five в C++. | |
| DevOps Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/Bash/Go. Следует рекомендациям senior-разработчиков при решении задач. | |
| DevSecOps Engineer | Понимает базовые принципы ООП: инкапсуляцию, наследование и полиморфизм. Применяет их при написании security-утилит и обёрток для работы с секретами и сертификатами в DevSecOps-инструментах. | |
| Embedded Developer | Понимает базовые принципы ООП в контексте embedded C++: инкапсуляция через access modifiers, простое наследование для драйверов. | |
| Flutter Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Dart. Следует рекомендациям senior-разработчиков при решении задач. | |
| Frontend Developer (Angular) | Обязателен | Понимает базовые концепции ООП в TypeScript: классы, интерфейсы, декораторы, дженерики. Применяет простые принципы SOLID, следуя архитектуре Angular-проекта. Следует командным паттернам структуры классов компонентов/сервисов и использования Angular DI. |
| Frontend Developer (React) | Понимает базовые принципы ООП: инкапсуляция, наследование, полиморфизм применительно к React-разработке. Использует классы и интерфейсы TypeScript для типизации пропсов и состояния компонентов. | |
| Frontend Developer (Svelte) | Понимает базовые принципы ООП и применяет инкапсуляцию при создании Svelte-компонентов. Знает разницу между классами и объектами в контексте TypeScript для Svelte-проектов. | |
| Frontend Developer (Vue) | Понимает базовые концепции ООП — классы, наследование, инкапсуляцию — и их проявление в JavaScript/TypeScript. Использует классы Vue-компонентов и понимает принцип композиции vs наследования. | |
| Fullstack Developer | Обязателен | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием TypeScript/Python. Следует рекомендациям senior-разработчиков при решении задач. |
| Game Designer | Понимает базовые принципы ООП: инкапсуляцию, наследование и полиморфизм в контексте игровых объектов. Умеет создавать простые иерархии классов для игровых сущностей: персонажи, предметы, способности. Читает и понимает объектно-ориентированный код игровых систем. | |
| Game QA Engineer | Применяет ООП в test automation: Page Object pattern, test class hierarchy, encapsulation test data. Организует test code. | |
| Game Server Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием C++/Go/C#. Следует рекомендациям senior-разработчиков при решении задач. | |
| Infrastructure Engineer | Понимает базовые принципы ООП и их применение в инфраструктурном коде. Использует классы и наследование при написании утилит автоматизации на Python для управления инфраструктурой. | |
| iOS Developer | Понимает базовые концепции ООП в Swift: классы, структуры, протоколы, расширения. Применяет простые принципы SOLID, следуя архитектуре iOS-проекта. Следует командным паттернам протокольно-ориентированного дизайна и структуры view model в MVVM. | |
| IoT Engineer | Знает основные принципы ООП: инкапсуляция, наследование, полиморфизм. Применяет базовые паттерны при написании драйверов и абстракций оборудования в IoT-проектах. | |
| Language Tooling Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием TypeScript/Rust. Следует рекомендациям senior-разработчиков при решении задач. | |
| LLM Engineer | Понимает базовые концепции ООП в Python: классы, наследование, протоколы. Применяет простые принципы SOLID при структурировании компонентов LLM-пайплайна. Следует командным паттернам классов шаблонов промптов и дизайна обёрток цепочек/агентов в проектах на LangChain. | |
| ML Engineer | Обязателен | Понимает базовые концепции ООП в Python: классы, наследование, абстрактные базовые классы, инкапсуляция. Применяет простые принципы SOLID при структурировании кода ML-пайплайнов. Следует командным паттернам классов-обёрток моделей и организации модулей обработки данных. |
| MLOps Engineer | Понимает базовые концепции ООП в Python: классы, наследование, data classes. Применяет простые принципы SOLID при структурировании кода ML-инфраструктуры. Следует командным паттернам классов шагов пайплайна и дизайна клиентов реестра моделей. | |
| Network Engineer | Понимает базовые концепции ООП — инкапсуляцию, наследование, полиморфизм. Применяет их при написании Python-скриптов для автоматизации сетевых задач и работы с Netmiko/NAPALM. | |
| NLP Engineer | Понимает базовые концепции ООП в Python: классы, наследование, миксины, инкапсуляция. Применяет простые принципы SOLID при структурировании компонентов NLP-пайплайна. Следует командным паттернам классов-обёрток токенизаторов/моделей и дизайна модулей обработки текста. | |
| Penetration Testing Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/Bash. Следует рекомендациям senior-разработчиков при решении задач. | |
| Performance Testing Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/Java. Следует рекомендациям senior-разработчиков при решении задач. | |
| Platform Engineer | Применяет ООП при написании platform-кода: классы для resource abstractions, interfaces для provider plugins. Понимает инкапсуляцию конфигурации. | |
| Product Manager | Понимает базовые принципы ООП для осмысленного общения с инженерами о структуре кодовой базы. Знает концепции модульности и инкапсуляции для понимания архитектурных решений команды. Использует базовые знания для написания технически корректных product requirements. | |
| QA Automation Engineer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Python/Java/TypeScript. Следует рекомендациям senior-разработчиков при решении задач. | |
| QA Engineer (Manual) | Понимает базовые принципы ООП для чтения кода тестируемых приложений и создания осмысленных баг-репортов. Знает концепции классов, объектов и наследования для понимания архитектуры тестируемой системы. Может прочитать стектрейс и определить класс, в котором произошла ошибка. | |
| QA Security Engineer | Понимает OOP для написания security-тестов: наследование base test classes, инкапсуляция test helpers, использование interfaces для mock-объектов. | |
| React Native Developer | Понимает базовые концепции ООП в TypeScript: классы, интерфейсы, композиция типов. Применяет простые принципы SOLID, следуя структуре React Native-проекта. Следует командным паттернам абстракций сервисов на основе хуков и дизайна мостов нативных модулей. | |
| Release Engineer | Понимает базовые концепции ООП — наследование, инкапсуляцию и полиморфизм. Применяет эти принципы при написании скриптов автоматизации релизных процессов, обеспечивая читаемость и структурированность кода. | |
| Security Analyst | Понимает базовые принципы ООП и их применение в security-инструментах. Использует объектно-ориентированный подход при написании скриптов для автоматизации аудитов безопасности. | |
| Site Reliability Engineer (SRE) | Понимает базовые концепции ООП в Python/Go: классы, интерфейсы, композиция структур. Применяет простые принципы SOLID при написании инструментов операционной автоматизации. Следует командным паттернам классов клиентов мониторинга и структуры модулей автоматизации runbook. | |
| Smart Contract Developer | Применяет ООП для blockchain: contract inheritance в Solidity, interface patterns. Понимает contract composability. | |
| Systems Programmer (C/C++) | Понимает ООП в контексте системного программирования: vtable overhead, object layout в C++. Знает когда ООП уместно, а когда нет. | |
| Technical Product Manager | Понимает базовые принципы ООП на уровне, достаточном для чтения технических спецификаций и UML-диаграмм. Способен участвовать в обсуждении архитектуры модулей продукта с разработчиками. | |
| Technical Writer | Понимает базовые принципы ООП для корректного описания классов, интерфейсов и иерархий в API-документации. Знает термины инкапсуляции, наследования и полиморфизма для точного использования в технических текстах. Создаёт простые UML-диаграммы для визуализации объектных моделей в документации. | |
| Telecom Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием C++/Java/Python. Следует рекомендациям senior-разработчиков при решении задач. | |
| Unity Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием C#. Следует рекомендациям senior-разработчиков при решении задач. | |
| Unreal Engine Developer | Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием C++/Blueprints. Следует рекомендациям senior-разработчиков при решении задач. | |
| XR Unity Developer | Обязателен | Применяет ООП в C# для Unity XR: классы, наследование, интерфейсы, полиморфизм. Понимает SOLID. Создаёт компонентную архитектуру для XR-объектов. |
| Роль | Обязательность | Описание |
|---|---|---|
| 1С Developer | Самостоятельно применяет принципы ООП в разработке 1С:Предприятие: корректное использование модулей объектов, наследование через механизмы расширения БСП, инкапсуляция в подсистемах конфигурации. Понимает компромиссы SOLID при проектировании модулей управляемых форм и интерфейсов общих модулей. | |
| AI Product Engineer | Самостоятельно применяет ООП/SOLID в кодовых базах AI-продуктов: чистые слои абстракции между model serving и бизнес-логикой, разделение интерфейсов для компонентов ML-пайплайна, инверсия зависимостей для сменных бэкендов моделей. Понимает компромиссы между ООП-паттернами и функциональными подходами в ML-коде. | |
| Analytics Engineer | Применяет принципы ООП для создания переиспользуемых аналитических компонентов — классов-трансформеров, валидаторов и data-коннекторов. Использует SOLID-принципы для организации кода dbt-моделей и аналитических пайплайнов. | |
| Android Developer | Самостоятельно применяет ООП/SOLID в Android-разработке: правильное разделение ViewModel/Repository, внедрение зависимостей через интерфейсы с Hilt/Dagger, единственная ответственность в Compose UI-компонентах. Понимает компромиссы между наследованием и композицией для UI-паттернов Android. | |
| Application Security Engineer | Самостоятельно применяет ООП/SOLID в разработке инструментов безопасности: инкапсулированные модули сканеров, плагины детекторов уязвимостей на основе интерфейсов, единственная ответственность в движках правил безопасности. Понимает компромиссы между ООП-паттернами для расширяемых фреймворков безопасности. | |
| AR/VR Developer | Обязателен | Проектирует ООП-архитектуру для XR-систем. Использует interface-based design для кросс-платформенной совместимости. Применяет принцип composition over inheritance для XR-компонентов. |
| Backend Developer (C#/.NET) | Обязателен | Самостоятельно применяет ООП/SOLID в C#/.NET: правильные интерфейсные контракты для сервисов, абстрактные базовые классы для общего поведения, внедрение зависимостей через встроенный DI-контейнер. Понимает компромиссы между наследованием и полиморфизмом на основе интерфейсов в архитектурных паттернах .NET. |
| Backend Developer (Elixir) | Применяет ООП-концепции через Elixir abstractions: Protocols для полиморфизма, Behaviours для интерфейсов, GenServer как объект с состоянием. Проектирует module boundaries. | |
| Backend Developer (Go) | Обязателен | Самостоятельно применяет принципы SOLID в Go: контракты сервисов на основе интерфейсов, композиция вместо наследования через встраивание структур, единственная ответственность в слоях handler/service/repository. Понимает Go-специфичные компромиссы — неявные интерфейсы, принцип «принимай интерфейсы, возвращай структуры», дизайн маленьких интерфейсов. |
| Backend Developer (Java/Kotlin) | Обязателен | Самостоятельно применяет ООП/SOLID в Java/Spring: правильные контракты сервисов на основе интерфейсов, Spring DI для инверсии зависимостей, абстрактные классы для общего доменного поведения. Понимает компромиссы между иерархиями наследования и паттернами композиции в корпоративной Java-архитектуре. |
| Backend Developer (Node.js) | Обязателен | Самостоятельно применяет ООП/SOLID в Node.js/TypeScript: правильные иерархии классов для сервисов, разделение интерфейсов через TypeScript interfaces, паттерны внедрения зависимостей (ручные или через NestJS DI). Понимает компромиссы между классовым ООП и функциональными паттернами в экосистеме Node.js. |
| Backend Developer (PHP) | Обязателен | Применяет SOLID на практике: выделяет интерфейсы, использует композицию вместо наследования, соблюдает LSP. Проектирует иерархии классов для бизнес-домена. Пишет код с low coupling и high cohesion. |
| Backend Developer (Python) | Обязателен | Применяет SOLID в повседневной разработке. Использует абстрактные классы (ABC) и Protocol для определения интерфейсов. Понимает composition over inheritance. Применяет dependency injection через конструктор. Использует миксины правильно. |
| Backend Developer (Rust) | Обязателен | Самостоятельно применяет принципы SOLID в Rust: полиморфизм на основе trait вместо наследования, единственная ответственность в дизайне модулей/крейтов, инверсия зависимостей через trait objects и дженерики. Понимает Rust-специфичные ООП-компромиссы — композиция вместо наследования, правила когерентности trait, zero-cost абстракции. |
| Backend Developer (Scala) | Обязателен | Самостоятельно применяет ООП/SOLID в Scala: правильная композиция trait и линеаризация миксинов, дизайн case class для неизменяемых данных, sealed trait иерархии для алгебраических типов данных. Понимает компромиссы между ООП и ФП подходами в Scala — когда использовать классы vs type classes, объекты vs функции. |
| BI Analyst | Применяет ООП-принципы для создания модульных ETL-компонентов и аналитических библиотек. Проектирует классы-трансформеры с чётким разделением ответственности для data pipeline. Использует наследование и полиморфизм для создания гибких коннекторов к различным источникам данных. | |
| Blockchain Developer | Самостоятельно применяет ООП/SOLID в блокчейн-разработке: правильные иерархии наследования контрактов, разделение интерфейсов для стандартов токенов (ERC-20/721/1155), инкапсуляция переменных состояния с контролем доступа. Понимает компромиссы между наследованием и композицией в дизайне смарт-контрактов. | |
| Cloud Engineer | Использует ООП для Infrastructure as Code: абстрактные классы Pulumi/CDK, наследование для environment-специфичных конфигураций. Применяет SOLID при проектировании cloud-модулей. | |
| Compiler Engineer | Уверенно применяет oop principles для compiler engineer при решении нестандартных задач. Самостоятельно выбирает оптимальный подход и инструменты. Анализирует trade-offs и предлагает улучшения существующих решений. | |
| Computer Vision Engineer | Самостоятельно применяет ООП/SOLID в коде CV-пайплайнов: правильная абстракция для этапов предобработки изображений, интерфейсные бэкенды инференса моделей, единственная ответственность в модулях аугментации данных. Понимает компромиссы между классовым дизайном пайплайна и функциональными трансформациями в PyTorch/OpenCV. | |
| Data Analyst | Применяет принципы SOLID при проектировании аналитических модулей и ETL-компонентов. Использует паттерны наследования и композиции для создания расширяемых классов обработки данных. | |
| Data Engineer | Самостоятельно применяет ООП/SOLID в коде дата-пайплайнов: правильная абстракция для ETL-этапов, интерфейсный дизайн коннекторов для источников данных, единственная ответственность в модулях трансформаций. Понимает компромиссы между ООП-паттернами и декларативными подходами в кодовых базах Spark/Airflow. | |
| Data Scientist | Самостоятельно применяет ООП/SOLID в ML-исследовательском коде: правильный дизайн классов для экспериментальных пайплайнов, инкапсулированные обёртки моделей с чистыми интерфейсами, единственная ответственность в модулях feature engineering. Понимает компромиссы между ООП-структурой и быстрым прототипированием в workflow из ноутбука в продакшен. | |
| Database Engineer / DBA | Применяет ООП при разработке инструментов DBA: классы-обёртки для подключений к БД, абстракции для различных СУБД (PostgreSQL/MySQL/Oracle), паттерны для миграционных скриптов. | |
| Desktop Developer (.NET WPF/WinUI/MAUI) | Проектирует классы по SOLID в контексте WPF/WinUI. Использует dependency injection через constructor injection. Применяет интерфейсы для testability. Понимает pattern matching с is/switch expressions. | |
| Desktop Developer (Electron/Tauri) | Проектирует классы по SOLID в TypeScript. Использует DI через constructor injection (TSyringe/InversifyJS). Применяет composition over inheritance. Понимает mixins в TypeScript. | |
| Desktop Developer (Qt/C++) | Проектирует иерархии классов с учётом Qt ownership model (parent-child). Использует абстрактные интерфейсы для DI. Применяет Q_INTERFACES для runtime type introspection. Понимает mixin через multiple inheritance. | |
| DevOps Engineer | Самостоятельно применяет ООП/SOLID в коде автоматизации и инструментов: правильные иерархии классов для стратегий деплоя, плагинные системы на основе интерфейсов для CI/CD-инструментов, единственная ответственность в модулях автоматизации инфраструктуры. Понимает компромиссы между ООП-паттернами и скриптовыми подходами для DevOps-инструментария. | |
| DevSecOps Engineer | Применяет SOLID-принципы при разработке security-модулей: плагины для сканеров, адаптеры для vault-систем. Использует паттерны Strategy и Factory для поддержки различных security-провайдеров. | |
| Embedded Developer | Применяет ООП для embedded: абстрактные интерфейсы драйверов, dependency injection для тестируемости, SOLID с учётом ограничений MCU. | |
| Engineering Manager | Самостоятельно оценивает применение ООП/SOLID в код-ревью команды и архитектурных обсуждениях. Определяет правильное использование паттернов проектирования, уровней абстракции и управления зависимостями. Обсуждает компромиссы ООП с командой на дизайн-ревью и обеспечивает консистентность стандартов кодирования. | |
| Flutter Developer | Самостоятельно применяет ООП/SOLID во Flutter/Dart: правильная композиция виджетов вместо наследования, разделение интерфейсов для паттернов репозитория, инверсия зависимостей с Provider/Riverpod/GetIt. Понимает компромиссы между переиспользованием через mixin и композицией в деревьях виджетов Flutter. | |
| Frontend Developer (Angular) | Обязателен | Самостоятельно применяет ООП/SOLID в Angular/TypeScript: правильная инкапсуляция сервисов с DI, разделение интерфейсов для контрактов компонентов, единственная ответственность в директивах и пайпах. Понимает компромиссы между классовой архитектурой Angular и реактивным программированием с RxJS. |
| Frontend Developer (React) | Применяет принципы SOLID при проектировании React-компонентов и сервисов. Использует паттерны composition over inheritance, Dependency Injection для создания слабосвязанной архитектуры фронтенда. | |
| Frontend Developer (Svelte) | Применяет принципы SOLID при проектировании архитектуры Svelte-приложений, использует композицию и наследование для stores и утилит. Создаёт абстракции для переиспользуемой логики. | |
| Frontend Developer (Vue) | Применяет принципы SOLID при проектировании Vue-приложений — single responsibility для компонентов, dependency injection через provide/inject, интерфейсы для типизации сервисов и хранилищ. | |
| Fullstack Developer | Обязателен | Самостоятельно применяет ООП/SOLID на фронтенде и бэкенде: правильные абстракции сервисов, разделяемые между слоями, контракты API на основе интерфейсов, единственная ответственность и в UI-компонентах, и в серверных обработчиках. Понимает компромиссы между ООП и функциональными паттернами по всему стеку. |
| Game Designer | Применяет SOLID-принципы при проектировании игровых систем: инвентарь, боевая система, AI. Выбирает между наследованием и композицией для моделирования игровых сущностей и поведений. Проектирует расширяемые системы с использованием интерфейсов и абстрактных классов. | |
| Game QA Engineer | Использует ООП для test frameworks: abstract base test classes, strategy pattern для test scenarios, builder для test data. | |
| Game Server Developer | Самостоятельно применяет ООП/SOLID в архитектуре игрового сервера: паттерны композиции entity-component, дизайн игровых систем на основе интерфейсов, единственная ответственность в обработчиках сетевых сообщений. Понимает компромиссы между глубокими иерархиями наследования и ECS-композицией для моделирования игровых сущностей. | |
| Infrastructure Engineer | Применяет SOLID-принципы при разработке инфраструктурных инструментов: модульные провайдеры, абстракции ресурсов. Использует паттерны ООП для создания переиспользуемых компонентов автоматизации. | |
| iOS Developer | Самостоятельно применяет ООП/SOLID в Swift/iOS: протокольно-ориентированное программирование вместо наследования классов, правильные границы архитектуры MVVM/TCA, внедрение зависимостей через конформность протоколам. Понимает компромиссы между расширениями протоколов и наследованием классов в паттернах проектирования Swift. | |
| IoT Engineer | Применяет принципы ООП для проектирования слоёв абстракции оборудования (HAL) в IoT: интерфейсы датчиков, паттерн Strategy для протоколов связи, фабрики драйверов устройств. | |
| Language Tooling Engineer | Самостоятельно применяет ООП/SOLID в коде компиляторов/инструментов: правильные иерархии узлов AST с паттерном visitor, интерфейсный дизайн проходов для этапов компиляции, единственная ответственность в модулях парсера/анализатора/эмиттера. Понимает компромиссы между ООП-паттернами и алгебраическими типами данных для дизайна языковых инструментов. | |
| LLM Engineer | Самостоятельно применяет ООП/SOLID в коде LLM-пайплайнов: правильная абстракция для шаблонов промптов и компонентов цепочек, интерфейсные бэкенды провайдеров моделей, единственная ответственность в модулях retrieval/generation/evaluation. Понимает компромиссы между ООП-паттернами и функциональной композицией в кодовых базах LangChain/LlamaIndex. | |
| ML Engineer | Обязателен | Применяет ООП для структурирования ML-кода: абстрактные классы для моделей, стратегии для feature engineering. Использует паттерны для переиспользования ML-компонентов. Пишет кастомные sklearn transformers. |
| MLOps Engineer | Самостоятельно применяет ООП/SOLID в MLOps-инструментарии: правильная абстракция для клиентов реестра моделей, интерфейсные коннекторы feature store, единственная ответственность в модулях пайплайна обучения/serving/мониторинга. Понимает компромиссы между ООП-паттернами и декларативными конфигурационными подходами в коде ML-инфраструктуры. | |
| Network Engineer | Проектирует классы и иерархии для сетевых абстракций — устройства, интерфейсы, протоколы. Использует паттерны ООП для создания расширяемых библиотек работы с разнородным оборудованием. | |
| NLP Engineer | Самостоятельно проектирует ООП-архитектуру NLP-компонентов: абстрактные классы для pipeline stages, Strategy pattern для выбора NLP-моделей, Factory pattern для создания preprocessors. | |
| Penetration Testing Engineer | Самостоятельно применяет ООП/SOLID в инструментах пентеста: правильная абстракция для модулей эксплойтов, плагины сканеров на основе интерфейсов, единственная ответственность в компонентах генерации и доставки полезной нагрузки. Понимает компромиссы между ООП-паттернами для расширяемых фреймворков безопасности и быстрой разработкой эксплойтов. | |
| Performance Testing Engineer | Самостоятельно применяет ООП/SOLID во фреймворках нагрузочного тестирования: правильная абстракция для сценариев виртуальных пользователей, обработчики протоколов на основе интерфейсов, единственная ответственность в фидерах данных и коллекторах результатов. Понимает компромиссы между ООП-паттернами и DSL-подходами в дизайне инструментов нагрузочного тестирования. | |
| Platform Engineer | Использует ООП для platform-разработки: abstract base classes для operators, interface segregation для plugins, composition для pipeline stages. | |
| Product Manager | Использует понимание ООП для оценки архитектурных решений и их влияния на продуктовую гибкость. Оценивает modularity и extensibility архитектуры для планирования будущих продуктовых фич. Включает architectural considerations в product roadmap с обоснованием бизнес-ценности. | |
| QA Automation Engineer | Самостоятельно применяет ООП/SOLID во фреймворках автоматизации тестирования: правильные иерархии Page Object Model, абстракции драйверов на основе интерфейсов, единственная ответственность в тестовых хелперах и assertions. Понимает компромиссы между глубоким наследованием в page objects и композиционным дизайном тестов. | |
| QA Engineer (Manual) | Использует знание ООП для анализа тестируемого кода и проектирования тест-кейсов по классам и методам. Понимает паттерны проектирования для определения точек интеграции и потенциальных проблем. Создаёт чек-листы тестирования на основе анализа интерфейсов и иерархий классов. | |
| QA Security Engineer | Применяет OOP в security-автоматизации: Page Object для security UI-тестов, Strategy pattern для разных типов сканирования, Factory для создания test payloads. | |
| React Native Developer | Самостоятельно применяет ООП/SOLID в React Native: правильная композиция хуков и абстракция сервисов, интерфейсные мосты нативных модулей, единственная ответственность в экранных компонентах и логике навигации. Понимает компромиссы между классовыми компонентами и функциональными/хук-паттернами в React Native. | |
| Release Engineer | Проектирует классы и модули для инструментов релизного пайплайна с учётом принципов SOLID. Создаёт абстракции для различных стратегий деплоя, обеспечивая расширяемость системы. | |
| Security Analyst | Проектирует модульные security-инструменты с применением SOLID-принципов. Создаёт абстракции для различных типов сканеров и анализаторов уязвимостей в объектной модели. | |
| Site Reliability Engineer (SRE) | Самостоятельно применяет ООП/SOLID в SRE-инструментарии и автоматизации: правильная абстракция для клиентов мониторинга, бэкенды алертинга на основе интерфейсов, единственная ответственность в модулях автоматизации runbook. Понимает компромиссы между ООП-паттернами и скриптовыми подходами для операционного инструментария. | |
| Smart Contract Developer | Использует ООП patterns: upgradeable contracts, proxy patterns, diamond pattern. Проектирует modular contracts. | |
| Systems Programmer (C/C++) | Применяет ООП для systems code: CRTP для static polymorphism, mixin через templates, type erasure. Минимизирует runtime overhead. | |
| Technical Lead | Самостоятельно оценивает применение ООП/SOLID в код-ревью команды: определяет правильные границы абстракций, ревьюит решения наследование vs композиция, обеспечивает инверсию зависимостей в архитектуре сервисов. Обсуждает компромиссы паттернов проектирования с командой и поддерживает стандарты кодирования. | |
| Technical Product Manager | Использует понимание ООП для оценки технических решений команды — модульность кода, расширяемость системы, стоимость добавления новых фич. Понимает когда архитектура тормозит развитие продукта. | |
| Technical Writer | Документирует сложные объектные модели с описанием паттернов, интерфейсов и взаимосвязей классов. Создаёт архитектурные руководства по использованию ООП-принципов в SDK и библиотеках проекта. Разрабатывает примеры кода, демонстрирующие правильное применение SOLID-принципов для разработчиков. | |
| Telecom Developer | Самостоятельно применяет ООП/SOLID в телеком-ПО: правильная абстракция для конечных автоматов протоколов, реализации кодеков на основе интерфейсов, единственная ответственность в модулях обработки вызовов и сигнализации. Понимает компромиссы между ООП-паттернами и performance-критичным дизайном C/C++ в телеком-системах. | |
| Unity Developer | Самостоятельно применяет ООП/SOLID в Unity/C#: правильная композиция MonoBehaviour вместо глубокого наследования, локаторы сервисов на основе интерфейсов, единственная ответственность в компонентах игровых систем. Понимает компромиссы между классическими ООП-паттернами и компонентной архитектурой Unity со ScriptableObjects. | |
| Unreal Engine Developer | Самостоятельно применяет ООП/SOLID в Unreal Engine/C++: правильные иерархии наследования UObject/AActor, игровые системы на основе интерфейсов (UInterface), единственная ответственность в компонентах и подсистемах. Понимает компромиссы между глубокой иерархией классов Unreal и композицией с ActorComponents. | |
| XR Unity Developer | Обязателен | Проектирует ООП-архитектуру Unity XR-систем: interface-based design, ScriptableObject-паттерны. Применяет composition over inheritance для XR-компонентов. |
| Роль | Обязательность | Описание |
|---|---|---|
| 1С Developer | Обязателен | Применяет ООП/SOLID в архитектуре 1С:Предприятие: правильная декомпозиция модулей с использованием иерархии объектов конфигурации, single responsibility в модулях обработки, управление зависимостями между подсистемами. Проектирует расширяемые архитектуры учётных модулей с использованием платформо-специфичных ООП-паттернов. |
| AI Product Engineer | Обязателен | Применяет ООП/SOLID в архитектуре AI-продуктов: чистые абстракции для интерфейсов моделей, strategy pattern для сменяемых ML-алгоритмов, dependency injection для сборки компонентов пайплайна. Проектирует расширяемые архитектуры ML-систем, позволяющие легкую замену моделей и A/B-тестирование. |
| Analytics Engineer | Проектирует объектно-ориентированные фреймворки для аналитических пайплайнов с абстрактными классами трансформаций и стратегиями загрузки. Создаёт расширяемые библиотеки для типовых аналитических операций с полиморфным поведением. | |
| Android Developer | Обязателен | Применяет ООП/SOLID в архитектуре Android: чистое разделение с паттернами MVVM/MVI, interface segregation для контрактов репозиториев, dependency injection с Hilt/Dagger. Проектирует модульные Android-приложения с правильными слоями абстракции для тестируемости, платформо-специфичных реализаций и независимости feature-модулей. |
| Application Security Engineer | Обязателен | Применяет ООП/SOLID в архитектуре security-инструментов: strategy pattern для подключаемых security-сканеров, template method для процессов оценки, чистые абстракции для провайдеров данных уязвимостей. Проектирует расширяемые security-фреймворки, позволяющие добавлять новые проверки без модификации ядра логики сканирования. |
| AR/VR Developer | Обязателен | Проектирует масштабные ООП-системы для XR. Балансирует между ООП и data-oriented подходами для оптимальной производительности. Разрабатывает API для XR-библиотек. |
| Backend Developer (C#/.NET) | Обязателен | Применяет ООП/SOLID в .NET-архитектуре: чистое разделение слоёв с dependency inversion, interface segregation для контрактов сервисов, правильное использование абстракций C# (abstract classes, interfaces, generics). Проектирует реализации Domain-Driven Design с использованием C# records, value objects и aggregate roots. |
| Backend Developer (Elixir) | Проектирует системы используя ООП-паттерны в функциональном стиле: protocol hierarchies, behaviour contracts, supervision trees как object lifecycle management. | |
| Backend Developer (Go) | Обязателен | Применяет принципы SOLID в композиционном дизайне Go: interface segregation с маленькими сфокусированными интерфейсами, dependency inversion через constructor injection, single responsibility в организации пакетов. Проектирует чистые Go-архитектуры с использованием композиции вместо наследования, embedding для переиспользования поведения и паттернов удовлетворения интерфейсов. |
| Backend Developer (Java/Kotlin) | Обязателен | Применяет ООП/SOLID в Java/Spring-архитектуре: правильное управление жизненным циклом Spring Bean с DI, interface-based контракты сервисов, template method для переиспользуемой бизнес-логики. Проектирует чистые гексагональные/луковые архитектуры с использованием sealed interfaces Java, records для value objects и модульной системы для контроля границ. |
| Backend Developer (Node.js) | Обязателен | Применяет ООП/SOLID в Node.js/TypeScript-архитектуре: dependency injection с контейнерами Inversify/NestJS, interface segregation с TypeScript-интерфейсами, open/closed principle через композицию middleware. Проектирует чистые архитектуры, используя структурную типизацию TypeScript для гибких абстракций. |
| Backend Developer (PHP) | Обязателен | Проектирует доменные модели по DDD: Entities, Value Objects, Aggregates. Применяет принципы GRASP для распределения ответственности. Рефакторит legacy-код к чистой объектной модели без потери функциональности. |
| Backend Developer (Python) | Обязателен | Проектирует доменные модели с использованием DDD-подхода. Применяет metaclasses и descriptors для framework-level задач. Создаёт гибкие API с использованием абстракций. Рефакторит legacy-код с нарушениями SOLID без breaking changes. |
| Backend Developer (Rust) | Обязателен | Применяет принципы SOLID в trait-based дизайне Rust: interface segregation с сфокусированными traits, dependency inversion через trait bounds и дженерики, single responsibility в организации модулей. Проектирует чистые Rust-архитектуры с использованием trait objects для рантайм-полиморфизма, associated types для compile-time абстракции и newtype pattern для доменного моделирования. |
| Backend Developer (Scala) | Обязателен | Применяет ООП/SOLID в сочетании с функциональным дизайном в Scala: type class pattern для ad-hoc полиморфизма, cake pattern/ZIO layers для dependency injection, sealed trait иерархии для исчерпывающего pattern matching. Проектирует архитектуры, балансирующие ООП-инкапсуляцию с функциональной чистотой с использованием эффект-систем. |
| BI Analyst | Проектирует объектную архитектуру аналитических фреймворков и ETL-библиотек компании. Применяет SOLID-принципы для создания расширяемых data processing pipeline. Создаёт абстрактные базовые классы для стандартизации работы с различными BI-инструментами и хранилищами. | |
| Blockchain Developer | Обязателен | Применяет ООП/SOLID в архитектуре блокчейна: чистый дизайн интерфейсов контрактов по interface segregation, factory patterns для стандартов токенов, strategy pattern для абстракции механизмов консенсуса. Проектирует модульные блокчейн-системы с правильным разделением между слоями протокола, сети и управления состоянием. |
| Cloud Engineer | Проектирует object-oriented IaC фреймворки: CDK constructs hierarchy, Pulumi component resources. Применяет паттерны Factory и Strategy для multi-cloud абстракций. | |
| Compiler Engineer | Экспертно применяет oop principles для compiler engineer для проектирования сложных систем. Оптимизирует существующие решения и предотвращает архитектурные ошибки. Проводит code review и обучает коллег лучшим практикам. | |
| Computer Vision Engineer | Обязателен | Применяет ООП/SOLID в архитектуре CV-систем: strategy pattern для сменяемых бэкендов моделей, абстрактные интерфейсы пайплайнов для стадий пре-/постобработки, dependency injection для провайдеров датасетов/аугментации. Проектирует расширяемые CV-фреймворки, позволяющие добавлять новые архитектуры моделей без изменения кода пайплайна. |
| Data Analyst | Проектирует иерархии классов для сложных аналитических фреймворков с учётом принципов открытости/закрытости. Применяет абстракции и интерфейсы для создания гибких пайплайнов обработки данных. | |
| Data Engineer | Обязателен | Применяет ООП/SOLID в архитектуре дата-платформы: абстрактные интерфейсы для коннекторов к источникам данных, strategy pattern для выбора движка трансформаций, template method для стандартизированных стадий пайплайна. Проектирует расширяемые дата-фреймворки, поддерживающие добавление новых источников данных и трансформаций без модификации ядра логики пайплайна. |
| Data Scientist | Обязателен | Применяет ООП/SOLID в архитектуре ML-систем: абстрактные интерфейсы моделей для фреймворка экспериментов, strategy pattern для оптимизации гиперпараметров, чистые абстракции для загрузки/трансформации данных. Проектирует переиспользуемые фреймворки ML-экспериментов, позволяющие консистентно сравнивать различные архитектуры моделей. |
| Database Engineer / DBA | Проектирует объектные модели для DBA-инструментов: иерархии классов для различных типов СУБД, стратегии подключения, полиморфные обработчики для мониторинга разных хранилищ данных. | |
| Desktop Developer (.NET WPF/WinUI/MAUI) | Обязателен | Применяет SOLID в enterprise .NET desktop. Проектирует с ISP (Interface Segregation), использует Source Generators для метапрограммирования. Применяет composition over inheritance в WPF/WinUI. Менторит по ООП. |
| Desktop Developer (Electron/Tauri) | Обязателен | Применяет SOLID architecture. Проектирует abstract layers между main/renderer. Использует TypeScript decorators для cross-cutting concerns. Менторит по ООП в TypeScript. |
| Desktop Developer (Qt/C++) | Обязателен | Применяет SOLID в архитектуре Qt-приложений. Проектирует abstractions с Qt Meta-Object System. Использует CRTP и Policy-based design для zero-cost абстракций в C++. Менторит по ООП-принципам. |
| DevOps Engineer | Обязателен | Применяет ООП/SOLID в DevOps-инструментарии: абстрактные интерфейсы для абстракции облачных провайдеров, strategy pattern для стратегий деплоя (blue-green, canary), template method для стандартизированных стадий пайплайна. Проектирует расширяемые фреймворки автоматизации по dependency inversion для тестируемого кода инфраструктуры. |
| DevSecOps Engineer | Проектирует расширяемые security-фреймворки с применением ООП-принципов для поддержки множества policy engines. Создаёт модульные архитектуры сканеров с plugin-системой для различных типов уязвимостей. | |
| Embedded Developer | Проектирует ООП-архитектуру firmware с zero-cost abstractions. Применяет CRTP вместо виртуальных функций, обеспечивает testability. | |
| Engineering Manager | Обязателен | Оценивает применение ООП/SOLID в архитектурных решениях команды. Обеспечивает правильное использование паттернов проектирования в системных дизайнах. Ревьюит архитектурные предложения на чистоту абстракций и управление зависимостями. Фасилитирует командные обсуждения компромиссов между сложностью паттернов проектирования и прагматичной простотой. |
| Flutter Developer | Обязателен | Применяет ООП/SOLID в архитектуре Flutter/Dart: чистое разделение с паттернами BLoC/Riverpod, interface segregation для контрактов репозиториев, dependency injection для абстракции сервисного слоя. Проектирует модульные Flutter-приложения с правильной композицией виджетов, абстракциями platform channels и независимостью feature-модулей. |
| Frontend Developer (Angular) | Обязателен | Применяет ООП/SOLID в архитектуре Angular: dependency injection с DI-системой Angular, interface segregation для контрактов сервисов, single responsibility для дизайна компонентов. Проектирует модульные Angular-приложения с правильным использованием модулей, lazy loading и чистым разделением между smart и presentational компонентами. |
| Frontend Developer (React) | Проектирует архитектуру React-приложений с грамотным применением ООП-принципов: абстракции для data layer, стратегии для бизнес-логики. Балансирует функциональный и объектно-ориентированный подходы. | |
| Frontend Developer (Svelte) | Проектирует архитектуру сложных Svelte-приложений с грамотным применением ООП-паттернов в сервисном слое. Балансирует объектно-ориентированный и реактивный подходы для оптимальной архитектуры. | |
| Frontend Developer (Vue) | Проектирует архитектуру Vue-приложений с грамотным применением ООП — абстрактные базовые классы для сервисов, паттерн Repository для работы с данными, чёткое разделение доменной логики. | |
| Fullstack Developer | Обязателен | Применяет ООП/SOLID по всему стеку: консистентные паттерны абстракций между фронтенд-сервисами и бэкенд-слоями, общие интерфейсные контракты для API-коммуникации, dependency inversion для тестируемых кросс-стековых модулей. Проектирует чистые архитектуры, поддерживающие принципы SOLID через границы стека. |
| Game Designer | Проектирует сложные объектные модели для игровых фреймворков и движков. Комбинирует ООП с ECS-подходом для оптимального баланса производительности и архитектурной чистоты. Рефакторит устаревшие игровые системы с применением паттернов GRASP и чистой архитектуры. | |
| Game QA Engineer | Проектирует OOP-based test architecture: extensible test framework, plugin system, cross-platform test abstractions. | |
| Game Server Developer | Обязателен | Применяет ООП/SOLID в архитектуре игровых серверов: component pattern для композиции поведения сущностей, абстрактные интерфейсы для слоёв сетевого транспорта, strategy pattern для движков игровых правил. Проектирует расширяемые мультиплеерные фреймворки с чистым разделением между игровой логикой, сетью и персистентностью. |
| Infrastructure Engineer | Проектирует расширяемые инфраструктурные фреймворки с применением ООП: plugin-системы для провайдеров облаков. Создаёт абстрактные интерфейсы для унификации работы с различными cloud-платформами. | |
| iOS Developer | Обязателен | Применяет ООП/SOLID в архитектуре iOS/Swift: protocol-oriented дизайн для чистых абстракций, dependency injection для тестируемых view models, interface segregation с сфокусированными протоколами. Проектирует модульные iOS-приложения с использованием Swift packages с правильным контролем границ между фичами, доменным и инфраструктурным слоями. |
| IoT Engineer | Проектирует объектно-ориентированные архитектуры для IoT-платформ: иерархии устройств с полиморфизмом, модульные firmware-фреймворки с инверсией зависимостей, plugin-системы. | |
| Language Tooling Engineer | Обязателен | Применяет ООП/SOLID в архитектуре компилятора: visitor pattern для обхода AST, abstract factory для создания узлов синтаксиса, strategy pattern для бэкендов кодогенерации. Проектирует расширяемые пайплайны компилятора с чистым разделением между фазами парсинга, семантического анализа и кодогенерации. |
| LLM Engineer | Обязателен | Применяет ООП/SOLID в архитектуре LLM-приложений: strategy pattern для сменяемых провайдеров моделей, chain of responsibility для пайплайнов обработки промптов, абстрактные интерфейсы для компонентов эмбеддингов и retrieval. Проектирует расширяемые LLM-фреймворки, поддерживающие мульти-модельную оркестрацию. |
| ML Engineer | Обязателен | Проектирует ML-фреймворки с использованием SOLID. Создаёт расширяемые абстракции для training loops, model registry, experiment tracking. Применяет composition over inheritance для ML-компонентов. |
| MLOps Engineer | Обязателен | Применяет ООП/SOLID в архитектуре MLOps: абстрактные интерфейсы для бэкендов обучения/serving моделей, strategy pattern для стратегий деплоя, template method для стандартизированных стадий ML-пайплайна. Проектирует расширяемые MLOps-фреймворки, поддерживающие множество ML-фреймворков и целей деплоя. |
| Network Engineer | Разрабатывает фреймворки автоматизации сети с применением SOLID-принципов. Создаёт абстрактные модели сетевых устройств, позволяющие единообразно работать с оборудованием разных вендоров. | |
| NLP Engineer | Проектирует масштабируемую ООП-архитектуру NLP-систем. Применяет SOLID принципы, паттерны проектирования для extensible NLP-pipeline. Обеспечивает testability через dependency injection. | |
| Penetration Testing Engineer | Обязателен | Применяет ООП/SOLID в архитектуре security-инструментов: абстрактные интерфейсы сканеров для подключаемых проверок уязвимостей, strategy pattern для выбора техник эксплуатации, template method для стандартизации рабочего процесса оценки. Проектирует модульные фреймворки пентеста с чистым разделением между разведкой, эксплуатацией и отчётностью. |
| Performance Testing Engineer | Обязателен | Применяет ООП/SOLID в архитектуре фреймворков нагрузочного тестирования: абстрактные интерфейсы протоколов для мультипротокольной поддержки, strategy pattern для алгоритмов генерации нагрузки, template method для стандартизированных тестовых сценариев. Проектирует расширяемые фреймворки нагрузочного тестирования, поддерживающие множество протоколов и бэкендов анализа. |
| Platform Engineer | Проектирует object-oriented platform components: CDK construct libraries, operator frameworks, plugin architectures. Применяет SOLID для extensible platform. | |
| Product Manager | Проектирует продуктовые требования с учётом архитектурных принципов: modularity, extensibility, reusability. Оценивает impact архитектурных решений на long-term product evolution и technical debt. Определяет balance между architectural perfection и delivery speed в product planning. | |
| QA Automation Engineer | Обязателен | Применяет ООП/SOLID в архитектуре тестовых фреймворков: page object pattern с правильными слоями абстракции, strategy pattern для различных драйверов браузеров/платформ, factory method для генерации тестовых данных. Проектирует расширяемые фреймворки автоматизации тестирования с чистым разделением между логикой тестов, инфраструктурой и отчётностью. |
| QA Engineer (Manual) | Анализирует объектную модель приложения для разработки комплексной стратегии тестирования. Проектирует тестовые сценарии с учётом SOLID-принципов и потенциальных нарушений инкапсуляции. Определяет приоритеты тестирования на основе анализа coupling и cohesion в архитектуре. | |
| QA Security Engineer | Обязателен | Проектирует security testing framework: абстракции для разных scanner backends, plugin-архитектура для custom checks, Builder pattern для complex attack scenarios. |
| React Native Developer | Обязателен | Применяет ООП/SOLID в архитектуре React Native: чистые абстракции для интерфейсов нативных модулей, dependency inversion для платформо-специфичных реализаций, interface segregation для контрактов сервисного слоя. Проектирует модульные кросс-платформенные архитектуры с правильным разделением между общей бизнес-логикой и платформо-специфичным UI/поведением. |
| Release Engineer | Разрабатывает архитектуру релизных инструментов с глубоким применением паттернов ООП. Оптимизирует иерархии классов для поддержки различных окружений и стратегий развёртывания. | |
| Security Analyst | Разрабатывает расширяемую архитектуру security-платформы с паттернами ООП. Проектирует иерархии классов для моделирования угроз, уязвимостей и правил compliance. | |
| Site Reliability Engineer (SRE) | Обязателен | Применяет ООП/SOLID в архитектуре SRE-инструментов: абстрактные интерфейсы для бэкендов мониторинга, strategy pattern для маршрутизации алертов, template method для стандартизированной автоматизации runbook. Проектирует расширяемые фреймворки observability с чистым разделением между слоями сбора данных, обработки и алертинга. |
| Smart Contract Developer | Проектирует contract architecture: composable protocols, library design, upgrade mechanisms. | |
| Solutions Architect | Обязателен | Применяет ООП/SOLID на уровне архитектуры решений: чистые интерфейсы bounded context в DDD, dependency inversion между модулями системы, open/closed principle для расширяемых точек интеграции. Проектирует кросс-системные архитектуры, поддерживающие принципы SOLID на макроуровне с правильными anti-corruption layers. |
| Systems Programmer (C/C++) | Проектирует системные API с zero-cost ООП: policy-based design, tag dispatch, concept-based polymorphism (C++20 concepts). | |
| Technical Lead | Обязателен | Применяет ООП/SOLID в архитектурных решениях команды: контролирует чистые границы абстракций в системных дизайнах, ревьюит код на правильное управление зависимостями и дизайн интерфейсов, менторит по компромиссам паттернов проектирования. Направляет команду в прагматичном применении принципов SOLID, избегая over-engineering. |
| Technical Product Manager | Применяет знание ООП-принципов для принятия продуктовых решений — декомпозиция монолита, проектирование расширяемых API, оценка стоимости поддержки обратной совместимости. | |
| Technical Writer | Проектирует стандарты документирования объектных моделей и архитектурных решений в ООП-проектах. Создаёт глубокие технические руководства по применению паттернов проектирования в контексте продукта. Разрабатывает интерактивные визуализации архитектуры и class diagrams для developer portal. | |
| Telecom Developer | Обязателен | Применяет ООП/SOLID в архитектуре телеком-систем: абстрактные интерфейсы обработчиков протоколов, strategy pattern для выбора кодеков, factory method для создания объектов сессий. Проектирует расширяемые телеком-фреймворки с чистым разделением между слоями сигнальных протоколов, обработкой медиа и логикой управления вызовами. |
| Unity Developer | Обязателен | Применяет ООП/SOLID в архитектуре игр на Unity: component pattern с чистым разделением MonoBehaviour, interface-based service locators, фабрики scriptable objects для игровых данных. Проектирует расширяемые системы Unity с правильным разделением между игровой логикой, UI и engine-специфичным кодом с использованием assembly definitions. |
| Unreal Engine Developer | Обязателен | Применяет ООП/SOLID в архитектуре Unreal Engine: правильный дизайн иерархии UObject/AActor, interface classes (UInterface) для чистых границ абстракций, component pattern для переиспользуемого геймплейного поведения. Проектирует расширяемые игровые системы с использованием модульной системы UE с чистым разделением между геймплеем, UI и интеграцией с движком. |
| XR Unity Developer | Обязателен | Проектирует масштабные ООП-системы для XR. Балансирует ООП и DOD для оптимальной Unity XR performance. Разрабатывает API для Unity XR-пакетов. |
| Роль | Обязательность | Описание |
|---|---|---|
| 1С Developer | Обязателен | Определяет стандарты ООП/SOLID для команды 1С: принципы декомпозиции модулей конфигурации, паттерны расширения БСП, гайдлайны архитектуры модулей управляемых форм. Проводит ревью дизайна модулей объектов и решений о границах подсистем в проектах 1С:Предприятие. |
| AI Product Engineer | Обязателен | Определяет стандарты ООП/SOLID для команды AI-продукта: гайдлайны абстрактных слоёв ML-пайплайна, интерфейсные контракты model serving, паттерны архитектуры экспериментального кода. Проводит ревью решений по иерархии классов, балансируя гибкость исследований и сопровождаемость продакшена. |
| Analytics Engineer | Определяет стандарты применения ООП-принципов в аналитической разработке, обеспечивает модульность и тестируемость кода. Формирует архитектурные паттерны для команды аналитических инженеров с балансом простоты и расширяемости. | |
| Android Developer | Обязателен | Обеспечивает соблюдение SOLID-принципов в Android-кодовой базе: single responsibility для ViewModel и UseCase, open-closed через абстракции Repository, interface segregation для контрактов между модулями. Проводит архитектурные ревью с фокусом на принципы ООП, выстраивает стандарты наследования и композиции для Kotlin-классов в команде. |
| Application Security Engineer | Обязателен | Определяет стандарты использования Принципы ООП и SOLID на уровне команды/продукта. Проводит архитектурные review. Формирует best practices и обучающие материалы для всей команды. |
| AR/VR Developer | Обязателен | Определяет архитектурные подходы для XR-проектов. Проводит ревью архитектуры на соответствие SOLID. Менторит по проектированию. |
| Backend Developer (C#/.NET) | Обязателен | Определяет ООП-стандарты для .NET-команды: records для immutability, interfaces для DI, sealed classes для performance. Обучает SOLID и DDD-моделированию. Проводит design review. |
| Backend Developer (Elixir) | Определяет стандарты применения ООП-концепций в Elixir: когда Protocols vs Behaviours, module design patterns. Обучает команду правильному балансу ООП и FP подходов. | |
| Backend Developer (Go) | Обязателен | Обучает команду идиоматичному Go-подходу к проектированию: композиция через встраивание структур, маленькие интерфейсы (io.Reader, io.Writer), принцип разделения интерфейсов. Ревьюит код на предмет чрезмерных абстракций и нарушения SOLID в контексте Go. |
| Backend Developer (Java/Kotlin) | Обязателен | Определяет стандарты ООП для Java-команды: coding guidelines, ADR, использование records и sealed classes. Обучает разработчиков SOLID и DDD-моделированию. Проводит design review новых модулей. |
| Backend Developer (Node.js) | Обязателен | Определяет OOP-стандарты для Node.js: TypeScript class patterns, interfaces для DI, abstract classes для base services. Обучает SOLID в контексте NestJS. Проводит design review. |
| Backend Developer (PHP) | Обязателен | Определяет стандарты ООП для команды: coding guidelines, architectural decision records. Обучает разработчиков правильному применению принципов. Проводит design review новых модулей. |
| Backend Developer (Python) | Обязателен | Формирует стандарты проектирования для команды. Проводит архитектурные review с фокусом на SOLID. Проектирует extensible frameworks и plugin-системы. Обучает команду правильному применению ООП-принципов в Python. |
| Backend Developer (Rust) | Обязателен | Трансформирует ООП-подходы в идиоматический Rust: composition over inheritance через trait composition, полиморфизм через enum dispatch и trait objects. Определяет стандарты использования generics с trait bounds vs dynamic dispatch для команды. |
| Backend Developer (Scala) | Обязателен | Формирует командные стандарты по сочетанию ООП и ФП в Scala: использование sealed trait-иерархий, case class для доменных моделей, trait mixin для композиции. Ревьюит архитектуру модулей на соответствие SOLID-принципам с учётом Scala-специфики — ADT, implicit-ов и type class-ов. |
| BI Analyst | Определяет архитектурные стандарты ООП-дизайна для всех аналитических скриптов и библиотек команды. Ревьюит код аналитиков на соответствие принципам clean code и модульного проектирования. Обучает BI-аналитиков применению ООП для написания поддерживаемого аналитического кода. | |
| Blockchain Developer | Обязателен | Определяет стандарты использования Принципы ООП и SOLID на уровне команды/продукта. Проводит архитектурные review. Формирует best practices и обучающие материалы для всей команды. |
| Cloud Engineer | Определяет ООП-стандарты для cloud infrastructure кода: CDK construct library design, reusable patterns. Обучает команду правильному применению ООП в контексте IaC. | |
| Compiler Engineer | Устанавливает стандарты применения oop principles для compiler engineer в команде и принимает архитектурные решения. Определяет технический roadmap с учётом данного навыка. Менторит senior инженеров и влияет на практики смежных команд. | |
| Computer Vision Engineer | Обязателен | Определяет стандарты ООП/SOLID для CV-команды: гайдлайны абстракции пайплайна обработки изображений, интерфейсные контракты бэкендов инференса, архитектура модулей аугментации данных. Проводит ревью решений по дизайну классов в системах обработки CV реального времени. |
| Data Analyst | Определяет архитектурные стандарты использования ООП в аналитических проектах команды, проводит ревью дизайна классов. Обучает команду правильному применению принципов ООП в контексте data engineering. | |
| Data Engineer | Обязателен | Определяет стандарты структуры pipeline-кода: абстрактные классы для ETL-компонентов, Strategy pattern для разных источников данных, Factory для reader/writer. Обучает команду применению SOLID в data engineering. |
| Data Scientist | Обязателен | Определяет стандарты ООП/SOLID для ML-исследовательской команды: архитектура классов экспериментальных пайплайнов, интерфейсные контракты обёрток моделей, гайдлайны дизайна модулей feature engineering. Проводит ревью, балансируя строгость ООП и скорость итерации исследований. |
| Database Engineer / DBA | Определяет архитектурные стандарты для DBA-инструментария: паттерны абстракции СУБД, принципы расширяемости для новых систем хранения, code review критерии для скриптов автоматизации. | |
| Desktop Developer (.NET WPF/WinUI/MAUI) | Обязателен | Определяет ООП-стандарты для .NET desktop команды. Проводит design review. Формирует coding guidelines для composition, DI, interface design. |
| Desktop Developer (Electron/Tauri) | Обязателен | Определяет ООП-стандарты для Electron-команды. Проводит design review. Формирует TypeScript coding guidelines. |
| Desktop Developer (Qt/C++) | Обязателен | Определяет ООП-стандарты для Qt-команды. Проводит design review с фокусом на SOLID и Qt-специфику. Формирует coding guidelines для наследования и композиции в Qt. |
| DevOps Engineer | Обязателен | Проектирует модульные библиотеки автоматизации с применением SOLID-принципов. Создаёт расширяемые плагины для CI/CD-систем, использует паттерны Strategy и Factory для конфигурирования инфраструктурных компонентов. Обеспечивает переиспользуемость кода между командами. |
| DevSecOps Engineer | Определяет архитектурные паттерны для security-инструментария организации с фокусом на расширяемость и переиспользование. Ревьюирует дизайн security-компонентов на соответствие принципам чистого кода и SOLID. | |
| Embedded Developer | Определяет ООП-стандарты для embedded C++ команды. Формирует guidelines по использованию полиморфизма на ресурсоограниченных платформах. | |
| Engineering Manager | Обязателен | Определяет стандарты компетенций ООП/SOLID для инженерных команд: процессы ревью паттернов проектирования, критерии architectural fitness functions, рубрики технических собеседований по навыкам ООП. Фасилитирует кросс-командный обмен знаниями о принципах дизайна и практиках рефакторинга. |
| Flutter Developer | Обязателен | Определяет стандарты ООП/SOLID для Flutter-команды: гайдлайны композиции виджетов, паттерны архитектуры state management, интерфейсные контракты слоёв репозиторий/сервис. Проводит ревью иерархий классов Dart и использования mixin в кросс-платформенных Flutter-проектах. |
| Frontend Developer (Angular) | Обязателен | Обеспечивает соблюдение SOLID-принципов в Angular-кодовой базе: Single Responsibility для компонентов и сервисов, Interface Segregation через абстрактные классы и InjectionToken, Open/Closed через DI-провайдеры. |
| Frontend Developer (React) | Определяет архитектурные стандарты применения ООП в React-проектах организации. Обучает команду правильному использованию абстракций и SOLID-принципов в контексте современного фронтенда. | |
| Frontend Developer (Svelte) | Определяет архитектурные стандарты использования ООП в Svelte-проектах команды, проводит ревью дизайна. Обучает команду правильному сочетанию ООП и реактивного программирования. | |
| Frontend Developer (Vue) | Определяет архитектурные стандарты применения ООП во Vue-проектах команды. Балансирует между ООП и функциональным подходом Composition API, проводит ревью архитектурных решений. | |
| Fullstack Developer | Обязателен | Проектирует доменные модели fullstack-приложений, применяя SOLID и DDD: сервисный слой с чистой архитектурой на бэкенде, композиция и инверсия зависимостей на фронтенде. Обеспечивает единую доменную логику через shared-пакеты между клиентом и сервером. |
| Game Designer | Определяет архитектурные стандарты ООП-дизайна для всей кодовой базы игрового проекта. Ревьюит классовые иерархии команды на соответствие принципам SOLID и игровым паттернам. Обучает разработчиков правильному применению ООП в контексте высокопроизводительных игр. | |
| Game QA Engineer | Определяет ООП-стандарты для QA: test code architecture, design patterns, code organization guidelines. | |
| Game Server Developer | Обязателен | Определяет стандарты ООП/SOLID для команды игровых серверов: гайдлайны архитектуры entity-component-system, интерфейсные контракты игровых систем, паттерны абстракции сетевых обработчиков. Проводит ревью решений наследование vs композиция в моделировании игровых сущностей. |
| Infrastructure Engineer | Определяет архитектурные стандарты для инфраструктурного кода организации с акцентом на модульность и переиспользование. Ревьюирует дизайн инфраструктурных инструментов на соответствие принципам чистой архитектуры. | |
| iOS Developer | Обязателен | Применяет принципы SOLID в iOS-разработке с акцентом на протокол-ориентированный подход Swift. Проектирует иерархии классов UIKit и протоколы SwiftUI с учётом композиции вместо наследования. Использует дженерики, ассоциированные типы и opaque return types для создания гибких абстракций с сохранением типобезопасности |
| IoT Engineer | Определяет архитектурные стандарты ООП для IoT-команды: баланс между абстракцией и производительностью на embedded, паттерны для ресурсно-ограниченных устройств, code review критерии. | |
| Language Tooling Engineer | Обязателен | Определяет стандарты ООП/SOLID для команды языкового инструментария: гайдлайны иерархий узлов AST, интерфейсные контракты проходов компилятора, стандарты реализации паттерна visitor. Проводит ревью решений по дизайну классов в компонентах парсера, анализатора и кодогенерации. |
| LLM Engineer | Обязателен | Определяет стандарты ООП/SOLID для LLM-команды: гайдлайны иерархий классов цепочек/агентов, интерфейсные контракты провайдеров моделей, паттерны архитектуры модулей retrieval. Проводит ревью дизайна абстракций в компонентах LLM-пайплайна. |
| ML Engineer | Обязателен | Формирует архитектурные стандарты ООП для ML-кодовой базы. Проводит code review с фокусом на правильные абстракции. Обучает команду проектированию ML-фреймворков. |
| MLOps Engineer | Обязателен | Формирует командные стандарты проектирования ML-компонентов: абстракции для DataLoader, Transformer, Model через наследование и интерфейсы. Ревьюит архитектуру Python-модулей на соответствие SOLID — единая ответственность для этапов пайплайна, инверсия зависимостей для подключаемых бэкендов хранилищ и трекеров экспериментов. |
| Network Engineer | Определяет архитектурные паттерны ООП для сетевых платформ команды. Проводит ревью дизайна классов, обеспечивая расширяемость и тестируемость модулей автоматизации инфраструктуры. | |
| NLP Engineer | Определяет OOP-стандарты для NLP-команды. Формирует архитектурные паттерны, проводит design review и обучает команду применению ООП принципов в контексте ML/NLP разработки. | |
| Penetration Testing Engineer | Обязателен | Определяет стандарты ООП/SOLID для команды security-тестирования: гайдлайны архитектуры модулей эксплойтов, интерфейсные контракты плагинов сканера, дизайн классов фреймворка полезной нагрузки. Проводит ревью решений ООП, балансируя расширяемость инструментов и скорость разработки эксплойтов. |
| Performance Testing Engineer | Обязателен | Определяет стандарты кода performance tests: modular test scripts, reusable components (Page Objects для load tests), abstract base classes для разных протоколов. |
| Platform Engineer | Определяет ООП-стандарты platform-кода: construct design patterns, plugin interface contracts, code organization. Обучает команду architectural patterns. | |
| Product Manager | Определяет архитектурные принципы для продуктовой платформы на уровне проекта. Координирует с architecture team alignment между техническими и продуктовыми решениями. Стандартизирует подход к включению architectural work в product planning. | |
| QA Automation Engineer | Обязателен | Определяет стандарты ООП/SOLID для команды автоматизации тестирования: гайдлайны архитектуры Page Object Model, интерфейсные контракты тестового фреймворка, паттерны дизайна классов фикстур/фабрик. Проводит ревью решений ООП тестового кода для сопровождаемости и поддержки параллельного выполнения. |
| QA Engineer (Manual) | Определяет стандарты тестирования ООП-приложений для всей QA-команды проекта. Координирует взаимодействие с разработчиками для обеспечения testability архитектуры на уровне проекта. Внедряет практики анализа архитектуры при планировании тестирования новых функций. | |
| QA Security Engineer | Обязателен | Определяет архитектурные стандарты security tooling: модульный дизайн scanners, extensible frameworks для custom security rules. Обучает команду design patterns. |
| React Native Developer | Обязателен | Определяет стандарты применения SOLID и ООП в React Native проектах — Single Responsibility для хуков и сервисов, Dependency Inversion для абстракции платформозависимого кода. Ревьюит архитектуру на соблюдение принципов при интеграции native-модулей iOS/Android. |
| Release Engineer | Определяет архитектурные стандарты применения ООП в инфраструктурном коде команды. Проводит ревью и обучает инженеров правильному проектированию объектных моделей для CI/CD систем. | |
| Security Analyst | Устанавливает стандарты объектного проектирования для security-инструментов команды. Проводит ревью архитектуры аналитических систем и обучает инженеров принципам чистого кода. | |
| Site Reliability Engineer (SRE) | Обязателен | Определяет стандарты кода SRE-инструментария: модульные health checks, abstract provider interfaces для multi-cloud. Обучает команду паттернам для infrastructure automation (Strategy для разных облаков, Template для runbooks). |
| Smart Contract Developer | Определяет architectural стандарты: contract design patterns, upgrade governance, composability guidelines. | |
| Solutions Architect | Обязателен | Определяет стандарты ООП/SOLID на уровне архитектуры решений: гайдлайны абстракции доменных моделей, принципы интерфейсных контрактов между сервисами, паттерны дизайна классов ограниченных контекстов. Проводит кросс-командные ревью архитектурных решений с системным влиянием на ООП. |
| Systems Programmer (C/C++) | Определяет ООП guidelines для systems-команды. Формирует стандарты: когда использовать virtual vs CRTP vs concepts. | |
| Technical Lead | Обязателен | Определяет стандарты ООП/SOLID для инженерной команды: гайдлайны использования паттернов проектирования, процессы архитектурного ревью иерархий классов, стратегии рефакторинга legacy-кода. Проводит ревью, обеспечивая консистентное применение принципов SOLID во всех проектах команды. |
| Technical Product Manager | Участвует в архитектурных решениях, обосновывая продуктовые требования к модульности и расширяемости. Обеспечивает что архитектура поддерживает планируемый roadmap на 2-3 квартала вперёд. | |
| Technical Writer | Определяет стандарты архитектурной документации для всех ООП-проектов организации. Координирует создание единого glossary терминов объектного проектирования для всех команд. Внедряет автоматическую генерацию документации из аннотированного ООП-кода. | |
| Telecom Developer | Обязателен | Определяет стандарты ООП/SOLID для телеком-команды: гайдлайны иерархий классов конечных автоматов протоколов, интерфейсные контракты кодеков, паттерны архитектуры модулей сигнализации. Проводит ревью решений по дизайну классов в carrier-grade телеком-системах реального времени. |
| Unity Developer | Обязателен | Определяет стандарты ООП/SOLID для Unity-команды: гайдлайны композиции MonoBehaviour, паттерны использования ScriptableObject, интерфейсные контракты игровых систем. Проводит ревью решений компонентной архитектуры и глубины наследования в Unity/C#-проектах. |
| Unreal Engine Developer | Обязателен | Определяет стандарты ООП/SOLID для Unreal-команды: гайдлайны иерархий UObject/AActor, паттерны использования UInterface, стандарты композиции ActorComponent. Проводит ревью решений по наследованию классов в проектах Unreal Engine на C++ и Blueprint. |
| XR Unity Developer | Обязателен | Определяет архитектурные подходы для Unity XR-проектов. Проводит architectural review. Менторит. |
| Роль | Обязательность | Описание |
|---|---|---|
| 1С Developer | Обязателен | Определяет организационную ООП-стратегию для экосистемы 1С: корпоративные стандарты архитектуры конфигураций, кросс-командный governance дизайна модулей, модель зрелости SOLID-практик на уровне платформы. Формирует техническое видение объектно-ориентированного дизайна в ландшафте 1С. |
| AI Product Engineer | Обязателен | Определяет организационную ООП-стратегию для AI/ML: корпоративные стандарты архитектуры ML-пайплайнов, кросс-командный governance абстрактных слоёв, стандартизация интерфейсов model serving. Принимает стратегические решения по архитектуре ML-кода, балансируя скорость исследований и качество продакшена. |
| Analytics Engineer | Формирует корпоративные стандарты проектирования аналитического кода на основе ООП-принципов для масштабных data-платформ. Определяет архитектурные паттерны, обеспечивающие эволюцию аналитических систем предприятия. | |
| Android Developer | Обязателен | Формирует ООП-культуру Android-разработки на уровне организации: стандарты проектирования классов, правила использования sealed-классов и value-классов Kotlin, политики абстракции между слоями архитектуры. Разрабатывает обучающие программы по объектно-ориентированному дизайну в контексте мобильных архитектур, менторит лидов по сложным иерархиям типов. |
| Application Security Engineer | Обязателен | Определяет стратегию применения Принципы ООП и SOLID на уровне организации. Принимает решения о подходах и инструментах. Менторит lead-разработчиков и формирует technical vision. |
| AR/VR Developer | Обязателен | Формирует архитектурную культуру для XR-разработки. Определяет баланс между ООП и ECS/DOD в XR-проектах. |
| Backend Developer (C#/.NET) | Обязателен | Формирует объектную модель .NET-платформы. Определяет где ООП оптимально, а где лучше функциональный подход (F#-style, LINQ). Проектирует shared kernel и domain events между сервисами. |
| Backend Developer (Elixir) | Формирует архитектурную стратегию: как ООП-паттерны трансформируются в Elixir/OTP ecosystem, interop с ООП-языками, design guidelines для mixed-paradigm систем. | |
| Backend Developer (Go) | Обязателен | Определяет архитектурные принципы проектирования Go-кодовой базы организации: стандарты композиции, правила определения интерфейсов, политики инкапсуляции через internal-пакеты. Обеспечивает единообразие подхода к структурному проектированию. |
| Backend Developer (Java/Kotlin) | Обязателен | Формирует объектную модель Java-платформы. Определяет, где ООП оптимально (domain layer), а где лучше функциональный подход (data pipelines). Проектирует shared kernel и domain events между сервисами. |
| Backend Developer (Node.js) | Обязателен | Формирует объектную модель Node.js платформы. Определяет где OOP (NestJS) оптимально, а где FP (pure functions, composition) предпочтительнее. Проектирует shared modules между сервисами. |
| Backend Developer (PHP) | Обязателен | Формирует объектную модель на уровне платформы. Определяет, где ООП оптимально, а где лучше функциональный или процедурный подход. Проектирует shared kernel между сервисами. |
| Backend Developer (Python) | Обязателен | Определяет архитектурные стандарты ООП на уровне компании. Выбирает между ООП и функциональным подходом для разных задач. Проектирует domain models для сложных бизнес-доменов. Менторит senior и lead разработчиков. |
| Backend Developer (Rust) | Обязателен | Формирует архитектурную философию моделирования доменов на Rust, сочетая алгебраические типы данных, typestate-паттерны и sealed traits. Определяет когда использовать trait objects (dyn Trait), generics (impl Trait) и enum dispatch для оптимального баланса производительности и гибкости. |
| Backend Developer (Scala) | Обязателен | Определяет стратегию моделирования доменной области для Scala-платформы: баланс между ООП-наследованием и алгебраическими типами данных. Принимает решения о структуре модулей, границах bounded context в Akka-кластерах и способах выражения бизнес-инвариантов через систему типов Scala. |
| BI Analyst | Формирует корпоративные стандарты разработки аналитического ПО с применением ООП-принципов. Определяет архитектуру переиспользуемых аналитических компонентов для всех команд компании. Публикует best practices проектирования аналитических систем с использованием ООП. | |
| Blockchain Developer | Обязателен | Определяет стратегию применения Принципы ООП и SOLID на уровне организации. Принимает решения о подходах и инструментах. Менторит lead-разработчиков и формирует technical vision. |
| Cloud Engineer | Формирует архитектурную стратегию ООП для cloud-платформы: multi-level construct libraries, cross-team reusable abstractions. Определяет когда ООП vs декларативный подход оптимален. | |
| Compiler Engineer | Формирует стратегию применения oop principles для compiler engineer на уровне организации. Определяет best practices и влияет на выбор технологий за пределами своей команды. Является признанным экспертом в данной области. | |
| Computer Vision Engineer | Обязателен | Определяет организационную ООП-стратегию для компьютерного зрения: корпоративные стандарты архитектуры CV-пайплайнов, кросс-командный governance абстракций инференса, фреймворки дизайна модулей обработки изображений. Принимает стратегические решения об инвестициях в архитектуру CV-кода. |
| Data Analyst | Формирует стратегию объектно-ориентированного проектирования для аналитической платформы организации. Балансирует использование ООП и функционального подхода в зависимости от задач обработки данных. | |
| Data Engineer | Обязателен | Формирует архитектурную модель data-платформы: plugin-система для connectors, абстракции для data sources/sinks. Определяет где OOP оправдано, а где функциональный стиль (PySpark transformations) предпочтительнее. |
| Data Scientist | Обязателен | Определяет организационную ООП-стратегию для ML-исследований: корпоративные стандарты архитектуры экспериментальных пайплайнов, кросс-командный governance абстракций моделей, фреймворки дизайна кода от исследований до продакшена. Принимает стратегические решения по архитектуре ML-кода, балансируя скорость инноваций и сопровождаемость. |
| Database Engineer / DBA | Формирует архитектурное видение инструментальной экосистемы DBA: единая объектная модель для мультивендорного окружения, стандарты разработки плагинов для поддержки новых СУБД. | |
| Desktop Developer (.NET WPF/WinUI/MAUI) | Обязателен | Формирует ООП-стандарты для .NET desktop организации. Определяет баланс ООП, FP (LINQ, pattern matching) и data-oriented design. Консультирует архитекторов. |
| Desktop Developer (Electron/Tauri) | Обязателен | Формирует ООП-стандарты для Electron desktop организации. Определяет баланс ООП и FP в TypeScript. Консультирует архитекторов. |
| Desktop Developer (Qt/C++) | Обязателен | Формирует ООП-стандарты на уровне организации. Определяет баланс между ООП и другими парадигмами (FP, data-oriented) для desktop. Консультирует архитекторов по проектированию. |
| DevOps Engineer | Обязателен | Определяет архитектурные паттерны для всего DevOps-инструментария организации. Разрабатывает фреймворки на основе принципов ООП для унификации подходов к автоматизации: абстрактные провайдеры облаков, фабрики пайплайнов, стратегии деплоя. Менторит архитекторов в применении SOLID к IaC. |
| DevSecOps Engineer | Формирует принципы проектирования security-платформы организации, балансируя гибкость архитектуры с производительностью. Определяет стандарты модульности для экосистемы DevSecOps-инструментов с поддержкой плагинов. | |
| Embedded Developer | Определяет enterprise ООП-подход для embedded. Формирует шаблоны проектирования firmware с балансом абстракции и производительности. | |
| Engineering Manager | Обязателен | Определяет организационную стратегию компетенций ООП: корпоративная модель зрелости паттернов проектирования, кросс-командный governance архитектуры кода, фреймворки оценки SOLID-практик. Принимает стратегические решения об инвестициях в инструменты архитектуры и программы engineering excellence. |
| Flutter Developer | Обязателен | Определяет организационную ООП-стратегию для мобильной разработки: корпоративные стандарты архитектуры Flutter/Dart, governance кросс-платформенной композиции виджетов, фреймворки зрелости дизайна мобильного кода. Принимает стратегические решения о паттернах мобильной архитектуры и инвестициях в инструменты. |
| Frontend Developer (Angular) | Обязателен | Определяет баланс между ООП и функциональным подходом в Angular: абстрактные сервисы для бизнес-логики, функциональные guards/resolvers/interceptors, композиция через inject()-функцию вместо наследования. |
| Frontend Developer (React) | Формирует стратегию архитектурных паттернов для React-экосистемы организации. Определяет оптимальный баланс между ООП и функциональными подходами для масштабируемых фронтенд-приложений. | |
| Frontend Developer (Svelte) | Формирует стратегию архитектурных паттернов для Svelte-платформы организации. Определяет баланс между ООП, функциональным и реактивным подходами для различных типов приложений. | |
| Frontend Developer (Vue) | Формирует подходы к объектному моделированию во фронтенд-экосистеме организации. Разрабатывает архитектурные паттерны, совмещающие ООП с реактивностью Vue для масштабных приложений. | |
| Fullstack Developer | Обязателен | Определяет архитектурные принципы ООП для fullstack-команд организации. Создаёт стандарты моделирования предметной области с единой терминологией от БД до UI. Проектирует фреймворки для переиспользования бизнес-логики между серверными и клиентскими приложениями. |
| Game Designer | Формирует корпоративные стандарты объектного проектирования для линейки игровых продуктов студии. Определяет баланс между ООП и data-oriented design на уровне архитектуры движка. Публикует исследования и гайдлайны по эволюции ООП-подходов в game development. | |
| Game QA Engineer | Формирует test architecture стратегию: scalable test framework design, reusable components, testing architecture governance. | |
| Game Server Developer | Обязателен | Определяет организационную ООП-стратегию для игровой инфраструктуры: корпоративные стандарты архитектуры игровых движков, governance моделирования сущностей между тайтлами, фреймворки принятия решений ECS vs ООП. Принимает стратегические решения об инвестициях в архитектуру игрового кода по всем тайтлам. |
| Infrastructure Engineer | Формирует принципы проектирования инфраструктурной платформы организации с платформенным подходом. Определяет стандарты модульности для экосистемы IaC-инструментов с поддержкой расширений и кастомизации. | |
| iOS Developer | Обязателен | Определяет стандарты объектно-ориентированного и протокол-ориентированного проектирования для крупных iOS-проектов. Разрабатывает базовые протоколы и расширения, формирующие фундамент архитектуры приложения. Обучает команду правильному балансу между классами, структурами и перечислениями в Swift для оптимальной производительности и читаемости |
| IoT Engineer | Формирует архитектурное видение ООП-практик для IoT-экосистемы: единые абстракции устройств для гетерогенных платформ, стандарты проектирования переносимого embedded-кода. | |
| Language Tooling Engineer | Обязателен | Определяет организационную ООП-стратегию для языкового инструментария: корпоративные стандарты архитектуры компиляторов, governance дизайна AST между инструментами, фреймворки иерархий классов пайплайна компиляции. Принимает стратегические решения об инвестициях в архитектуру тулчейна. |
| LLM Engineer | Обязателен | Определяет организационную ООП-стратегию для LLM-систем: корпоративные стандарты архитектуры пайплайнов промптов, кросс-командный governance дизайна цепочек/агентов, фреймворки абстракции провайдеров моделей. Принимает стратегические решения по архитектуре LLM-кода и инвестициям в инструменты. |
| ML Engineer | Обязателен | Определяет архитектурную стратегию ML-платформы. Проектирует API ML-платформы с учётом расширяемости. Влияет на open-source ML-фреймворки. |
| MLOps Engineer | Обязателен | Определяет стратегию объектного моделирования для MLOps-платформы: абстракции уровня SDK для взаимодействия с Model Registry, Feature Store и Experiment Tracker. Проектирует расширяемые иерархии классов для поддержки различных ML-фреймворков (PyTorch, TensorFlow, XGBoost) через единый интерфейс деплоя и мониторинга моделей. |
| Network Engineer | Формирует стандарты объектного моделирования сетевой инфраструктуры на уровне организации. Разрабатывает reference-архитектуры для Network-as-Code платформ с учётом долгосрочной эволюции. | |
| NLP Engineer | Формирует enterprise ООП-стандарты для NLP-платформы. Определяет архитектурные принципы, domain model и shared abstractions для всех NLP-сервисов организации. | |
| Penetration Testing Engineer | Обязателен | Определяет организационную ООП-стратегию для security-тестирования: корпоративные стандарты архитектуры фреймворков эксплойтов, кросс-командный governance плагинов сканера, модель зрелости дизайна классов инструментов безопасности. Принимает стратегические решения об инвестициях в архитектуру инструментов безопасности. |
| Performance Testing Engineer | Обязателен | Проектирует performance testing framework: plugin architecture для protocol support, strategy pattern для load profiles, extensible reporting. Определяет architecture decisions. |
| Platform Engineer | Формирует архитектурную стратегию: OOP patterns для platform layers, extensibility framework, plugin ecosystem design. Определяет architectural principles. | |
| Product Manager | Формирует корпоративную стратегию alignment между product architecture и business strategy. Определяет индустриальные стандарты product-architecture co-evolution для enterprise. Публикует исследования по влиянию архитектурных инвестиций на product agility. | |
| QA Automation Engineer | Обязателен | Определяет организационную ООП-стратегию для test engineering: корпоративные стандарты архитектуры тестовых фреймворков, кросс-командный governance дизайна POM, программы зрелости качества тестового кода. Принимает стратегические решения об инвестициях в архитектуру автоматизации тестирования. |
| QA Engineer (Manual) | Формирует методологию QA-анализа объектно-ориентированных архитектур на корпоративном уровне. Определяет стандарты testability requirements для ООП-проектов на этапе архитектурного ревью. Публикует исследования по эффективности тестирования в зависимости от ООП-архитектуры. | |
| QA Security Engineer | Обязателен | Проектирует архитектуру security testing платформы: plugin ecosystem, shared vulnerability models, integration layer для SAST/DAST/SCA. Определяет стратегию extensibility. |
| React Native Developer | Обязателен | Формирует организационные стандарты объектно-ориентированного проектирования в мобильной разработке. Определяет баланс между ООП и функциональным подходом в React Native. Проектирует SDK и библиотеки компонентов с применением SOLID для переиспользования между командами. |
| Release Engineer | Формирует стратегию применения ООП-принципов на уровне всей организации для инфраструктурного кода. Создаёт фреймворки и библиотеки, задающие стандарты объектного проектирования релизных систем. | |
| Security Analyst | Определяет архитектурные принципы применения ООП в security-платформе организации. Создаёт фреймворки для моделирования угроз и автоматизации compliance с единым объектным дизайном. | |
| Site Reliability Engineer (SRE) | Обязателен | Проектирует архитектуру SRE-платформы: plugin-система для monitoring backends, абстракции для incident management. Определяет где код оправдан vs declarative configs (Terraform, K8s manifests). |
| Smart Contract Developer | Формирует contract architecture стратегию: protocol design principles, composability governance. | |
| Solutions Architect | Обязателен | Определяет организационную ООП-стратегию на уровне корпоративной архитектуры: стандарты governance доменных моделей, кросс-командные принципы интерфейсных контрактов, фреймворки зрелости дизайна ограниченных контекстов. Принимает стратегические решения о паттернах архитектуры с организационным влиянием. |
| Systems Programmer (C/C++) | Определяет enterprise OOP стратегию для системного ПО. Формирует design philosophy для performance-critical C++/Rust. | |
| Technical Lead | Обязателен | Определяет организационную ООП-стратегию на уровне технического лидерства: governance корпоративных паттернов проектирования, кросс-командная оценка зрелости SOLID, программы excellence архитектуры кода. Принимает стратегические решения об инвестициях в инструменты рефакторинга и формирует инженерную культуру чистого дизайна. |
| Technical Product Manager | Формирует требования к архитектуре продуктовой платформы с учётом долгосрочной стратегии. Балансирует между модульностью, скоростью разработки и техническим долгом на уровне организации. | |
| Technical Writer | Формирует корпоративные стандарты документирования объектно-ориентированных архитектур на уровне компании. Определяет best practices визуализации и описания сложных ООП-систем в технической документации. Публикует исследования по автоматизации документирования объектных моделей. | |
| Telecom Developer | Обязателен | Определяет организационную ООП-стратегию для телеком-систем: стандарты архитектуры carrier-grade стеков протоколов, кросс-командный governance модулей сигнализации, фреймворки дизайна классов систем реального времени. Принимает стратегические решения об инвестициях в архитектуру телеком-ПО. |
| Unity Developer | Обязателен | Определяет организационную ООП-стратегию для Unity-разработки: корпоративные стандарты архитектуры MonoBehaviour, governance дизайна компонентов между проектами, фреймворки зрелости использования ScriptableObject. Принимает стратегические решения по архитектуре Unity C#-кода по всем игровым проектам. |
| Unreal Engine Developer | Обязателен | Определяет организационную ООП-стратегию для Unreal-разработки: корпоративные стандарты иерархий UObject, governance ActorComponent между проектами, фреймворки принятия архитектурных решений Blueprint vs C++. Принимает стратегические решения об инвестициях в архитектуру кода Unreal Engine. |
| XR Unity Developer | Обязателен | Формирует архитектурную культуру XR-разработки. Определяет баланс OOP/ECS в Unity XR. |