Как разработчику расти?
Этот вопрос возникает в комментариях чаще других.
Я сейчас готовлю более подробный материал на эту тему, но пока хочу поделиться одной простой моделью, которая помогает лучше понять развитие в профессии.
Мне нравится аналогия с игровыми видами спорта. Там развитие обычно строится вокруг трёх вещей.
1. Теория
Это понимание того, как устроена система.
В разработке это:
— архитектура
— паттерны
— понимание технологий
— знание инструментов и сервисов
Без теории можно писать код, но сложно строить устойчивые системы.
2. Практика
Это то, что нарабатывает «программистские мышцы».
Большая часть роста происходит именно здесь.
Причём полезна не только работа в основном проекте. Хорошо прокачивают:
— небольшие скрипты
— автоматизация
— пет-проекты
— эксперименты с новыми инструментами
Но особенно сильно развивают:
— решение сложных задач
— рефакторинг существующего кода
3. Скиллы
Это наработанные навыки решения конкретных задач.
Со временем многие вещи начинают делаться быстро и почти автоматически.
Если говорить про Flutter, то ключевые навыки обычно связаны с тремя областями:
— работа с данными
— управление состоянием
— верстка интерфейсов
Частая проблема в том, что разработчики развивают только одну из этих частей.
Кто-то много читает про архитектуру, но мало пишет код.
Кто-то постоянно пишет код, но не разбирается в системных решениях.
На практике рост начинается тогда, когда теория, практика и прикладные навыки развиваются одновременно.
Post #77
979
- 👍 11