
В этой статье мы рассмотрим список привычек и советов, которые могут помочь разработчикам стать лучшими версиями самих себя — как в личном, так и в техническом плане — и преуспеть в своей роли.
Вот некоторые важные привычки и вещи, которые нужно знать, когда вы будете работать над тем, чтобы стать старшим разработчиком.
1. Сосредоточьтесь на том, чтобы стать Т-образным разработчиком
Знайте много вещей и хорошо разбирайтесь в некоторых из них.

Я много лет занимался внутренней разработкой с использованием Java. Да, я могу выполнить эту работу в React или Terraform, но я не эксперт ни в одном из них.
2. Положитесь на документацию, а не на сайты вопросов и ответов
В первые дни моей карьеры разработчика я в значительной степени полагался на сайты вопросов и ответов, такие как Stack Overflow, чтобы найти ответы.
Однако со временем я переключился на подход, ориентированный на документацию.
3. Выбирайте качество, а не скорость и количество — и сосредоточьтесь на простоте
Сдвиньте фокус с скорости и количества на качество и следуйте передовым методам разработки программного обеспечения, таким как SOLID, KISS и DRY.
«Простота есть основа утонченности.» — Леонардо да Винчи
Всегда прилагайте усилия, чтобы писать чрезвычайно простой код, который легко читать, понимать и поддерживать.
4. Всегда проверяйте
Опытный разработчик знает о важности тестирования и всегда будет его отстаивать.
«Весь кодекс виновен, пока не будет доказана его невиновность». — анонимный
Модульное тестирование косвенно требует написания кода, который можно тестировать — другими словами, кода, который слабо связан и очень связан.
5. Делайте вклад в счастье разработчиков и помогайте младшим разработчикам
Возьмите на себя инициативу по улучшению качества кодовой базы и внесите свой вклад в счастье других разработчиков — например, добавьте инструмент покрытия кода или линтер; автоматизировать утомительный ручной процесс, такой как развертывание или резервное копирование; докеризовать сложные процессы; исправить тесты, которые периодически выходят из строя; и т.п.
Как старший разработчик, работая с младшими разработчиками, используйте свои знания и опыт, чтобы помочь им стать лучшими разработчиками.
6. Организуйте встречи один на один.Отправляйте и получайте обратную связь
Один на один (1: 1) — это неформальная повторяющаяся встреча, обычно длящаяся 30-45 минут. Обычно это происходит раз в две недели или ежемесячно с гибкой повесткой дня или без нее.
Эту встречу можно провести в любой обстановке и использовать для обратной связи; синхронизировать; и поговорить о работе, жизни, проблемах на работе и так далее.
Примечание. Следует отметить, что предоставление отзыва — это деликатный процесс, и важно знать, как получатель желает получить обратную связь.
7. Участвуйте в выпусках продуктов
В некоторых компаниях выпуск продукта на 100% автоматизирован с помощью конвейера CI / CD, а в других местах это либо полуавтоматический, либо ручной процесс.
Если там, где вы работаете, процессы выпуска, исправления или отката выполняются вручную или полуавтоматически, проявите интерес к участию в этой ритмике.
8. Присоединяйтесь к группе интервью.
В зависимости от того, как ваша компания проводит собеседования, по возможности войдите в эту группу для собеседований.
На собеседовании можно многому научиться. Дать интервью непросто. Убедитесь, что собеседник расслаблен, находит ответы на ваши вопросы и имеет возможность узнать вас и компанию. Оставьте собеседника с большим и положительным опытом.
9. Задокументируйте полезные знания и выводы
Можно многое задокументировать — например, результаты вашего всплеска или исследования темы, того, как работает услуга или продукт, или все, что другие разработчики могут найти полезными или восполнить пробел в знаниях.
Документирование может быть утомительной работой, но она играет решающую роль, когда присоединяется новый член команды.
10. Делайте лучшие обзоры кода
При просмотре запроса на включение не забывайте проявлять сочувствие к автору за его тяжелую работу и всегда оставляйте полезные и содержательные комментарии к обзору.
11. Примите ошибки и лучше пишите коммиты Git
Приветствуем возможности исследовать, понимать и исправлять ошибки. Помимо обучения и развития навыков решения проблем, вы получите признание и уважение со стороны сверстников.
Как разработчик, выведите свои коммиты Git на новый уровень, организовав свои изменения в значимые коммиты, подавив избыточные коммиты перед слиянием и написав содержательные сообщения о коммитах.
12. Рефакторинг кода там, где это возможно
Всегда есть место для рефакторинга и улучшения качества кода. Например, удалите мертвый или неиспользуемый код и библиотеки, обновите устаревшие зависимости, выполните рефакторинг кода, который нарушает стандарты кодирования, пересмотрите задачи в коде и сделайте код легким для чтения и понимания.
Никакие усилия по повышению качества кодовой базы не являются напрасными.
13. Участвуйте в проектах с открытым исходным кодом и ведите блог.
Участие в проектах с открытым исходным кодом не является обязательным требованием для какой-либо должности, но помогает вам стать лучшим разработчиком. В статье «Как внести свой вклад в развитие открытого исходного кода» рассказывается, как начать работу, и приводится список причин и преимуществ для этого.
Как и в случае с открытым исходным кодом, ведение блога не требуется для какой-либо роли, но это форма обмена знаниями и показатель вашей способности достаточно хорошо объяснять темы и при необходимости наставлять других разработчиков.
14. Лучшее общение и активное слушание
Для старшего разработчика важно иметь возможность легко доносить свои идеи и эффективно объяснять темы как технической, так и нетехнической аудитории.

Помимо лучшего общения, всегда практикуйте активное слушание и проявляйте неподдельный интерес к обсуждаемой теме. По возможности избегайте использования телефона или ноутбука, а если вы используете компьютер для заметок, сообщите об этом участникам заранее.
15. Межкомандное сотрудничество и сфера влияния
Работайте над проектами, которые предполагают сотрудничество с разработчиками из других команд, поскольку это демонстрирует вашу командную работу и способность преодолевать межгрупповые препятствия, а также насколько велика ваша сфера влияния.