Домен
Основы программирования
Профиль навыка
Этот навык определяет ожидания по ролям и уровням.
Ролей
3
где встречается этот навык
Грейдов
5
сформированная дорожка роста
Обязательных требований
0
ещё 15 — необязательные
Основы программирования
Чистый код и рефакторинг
22.02.2026
Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.
Таблица показывает, как меняется глубина владения навыком от Junior до Principal.
| Роль | Обязательность | Описание |
|---|---|---|
| Blockchain Developer | Следует принципам чистого кода при разработке blockchain-компонентов: осмысленные имена переменных, небольшие функции, единая ответственность. Использует линтеры и форматтеры для Go/Rust/TypeScript. | |
| Smart Contract Developer | Следует принципам чистого кода в Solidity: осмысленные имена, небольшие функции, NatSpec документация. Использует solhint и prettier-solidity для форматирования. Пишет readable модификаторы. | |
| Systems Programmer (C/C++) | Понимает принципы чистого кода: осмысленные имена переменных, короткие функции, минимум комментариев. Следует code style guide проекта ядра при написании простых модулей. |
| Роль | Обязательность | Описание |
|---|---|---|
| Blockchain Developer | Применяет clean code practices при разработке инфраструктуры: разделение слоёв сети, консенсуса и хранения. Проводит рефакторинг legacy-кода с сохранением backward compatibility протоколов. | |
| Smart Contract Developer | Применяет clean code практики для smart contract систем: чёткое разделение concerns между контрактами, consistent naming conventions, readable require messages. Рефакторит legacy контракты. | |
| Systems Programmer (C/C++) | Применяет clean code в системном программировании: разделение ответственности модулей, последовательная обработка ошибок (error codes), понятные абстракции для аппаратного взаимодействия. |
| Роль | Обязательность | Описание |
|---|---|---|
| Blockchain Developer | Проектирует чистую архитектуру для blockchain-ноды: чёткие boundaries между модулями, dependency injection, абстракции над storage и networking. Менторит команду по принципам clean architecture. | |
| Smart Contract Developer | Проектирует чистую архитектуру для контрактных систем: interface segregation, abstract contracts, library patterns. Менторит команду по principles of clean Solidity code и maintainability. | |
| Systems Programmer (C/C++) | Проектирует чистые системные API с предсказуемыми контрактами. Обеспечивает единообразие стиля в ядерных подсистемах, применяет defensive programming и contract-based design. |
| Роль | Обязательность | Описание |
|---|---|---|
| Blockchain Developer | Формирует стандарты чистого кода для blockchain-организации. Внедряет automated quality gates и architectural fitness functions. Проводит architecture review критических компонентов. | |
| Smart Contract Developer | Формирует clean code стандарты для smart contract организации. Внедряет automated quality gates: NatSpec coverage, complexity metrics. Проводит architecture review для maintainability. | |
| Systems Programmer (C/C++) | Определяет clean code стандарты для системной разработки. Формирует guidelines по именованию в ядре, обработке ошибок, документированию hardware-зависимого кода для всей команды. |
| Роль | Обязательность | Описание |
|---|---|---|
| Blockchain Developer | Определяет enterprise-стратегию качества кода для blockchain-платформы. Формирует culture of craftsmanship и continuous refactoring. Публикует best practices для open-source blockchain проектов. | |
| Smart Contract Developer | Определяет enterprise стратегию качества Solidity-кода. Формирует culture of code craftsmanship в smart contract разработке. Публикует best practices для readable и maintainable контрактов. | |
| Systems Programmer (C/C++) | Формирует enterprise clean code культуру для системного подразделения. Определяет метрики качества кода (cyclomatic complexity, code coverage), менторит lead-ов по code quality. |