Вы хороший разработчик или плохой? Дело в том, что большинство из нас — «средние разработчики». Я тоже средний разработчик. Но я стараюсь совершенствовать свои знания и навыки.
Итак, я искала, что делает разработчика хорошим или плохим, и как мы можем узнать об этом. Недавно я написала об этом статью. Статья называлась «Признаки того, что вы плохой программист».
Сегодня мы поговорим о признаках хороших и замечательных программистов. Эта статья вдохновлена длинной статьей Дэрила Сантоса с GitHub. Я обобщила и выбрала некоторые признаки, которые показались мне важными. Итак, давайте перейдем к фактам.
Признаки хорошего программиста
1. Сначала пробуете или экспериментируете
Вместо того, чтобы спрашивать senior-программиста, хорошие программисты сначала пробуют сами. Это помогает им узнать что-то новое, а также готовит их к решению новых проблем в будущем.
Симптомы:
- Имеете собственные пет проекты
- Думаете об альтернативных решениях, когда сталкиваетесь с проблемой.
Как приобрести эту черту:
- Не бойтесь потерпеть неудачу.
- Найдите время для небольших экспериментов.
- Вознаградите себя за самостоятельное решение проблем.
2. Эмоциональная отстраненность от кода
Давайте углубимся в это. Код не ваша невеста или ребенок. Пожалуйста, не говорите мне, что это ваше детище! Мне становится плохо каждый раз, когда я это слышу. Не все, что выходит из вас, является вашим ребенком.
Дело в том, что поскольку код — это не ваш ребенок, вам не нужно эмоционально привязываться к своему коду и защищать его там, где это необходимы изменения.
Код — это просто байты. Измените его или используйте повторно, но не привязывайтесь к нему. Хорошие разработчики не привязываются к своему коду эмоционально.
Симптомы:
- Готовы выбросить месяцы работы, чтобы принять лучший код другого разработчика.
- Не занимаете оборонительную позицию, когда начальник говорит, что ваш код нужно обновить.
- Почти не привязаны к коду, который закомментирован.
Как приобрести эту черту:
- Время от времени читайте и используйте чужой код.
- Если вы начинаете новый проект, иногда начинайте с нуля, если считаете, что можете добиться большего успеха (в большинстве случаев вы на самом деле можете).
- Если вы действительно привязаны к своему коду, делайте то, что вы делаете в токсичных отношениях. Удалите код и напишите его с нуля.
3. Восторженный ремонтник
Хорошие программисты любят что-то исправлять. Например, вы получили проект от какого-то другого программиста и обнаружили, что он/она где-то прописали какие-то значения в коде.
Большинство программистов упустят это из виду это, но хорошие программисты этого не сделают. В проекте так много можно исправить. Они хотят сделать лучше каждую часть кода.
Симптомы:
- Не верите спецификациям на слово и глубоко понимаете требования.
- Всегда ищете лучшее решение в Интернете.
- Прежде чем добавлять новую функцию, проверяете, можно ли изменить существующую для выполнения обеих задач или полностью заменить ее более совершенным методом.
Как приобрести эту черту:
- Всегда старайтесь понять реальную проблему в ситуации. Чем больше вы понимаете, тем лучшее решение вы можете найти. Многие программисты не понимают проблемы и начинают программировать без стратегии. На полпути они понимают, что должны отказаться от кода, но не могут или не делают этого.
- Выбирайте эффективную версию кода.
- Используйте встроенную функцию, если она доступна.
4. Учите
Я никогда не видела хорошего разработчика с дешевой установкой, что он не должен учить других. Преподавание не только благородная добродетель, но и помогает лучше и глубже понять тему.
Симптомы:
- Ведете блог о своей работе или на тему разработки.
- Иногда отвечаете на StackOverflow.
- Может быть канал на YouTube.
- Комментариев больше, чем необходимо для коллег-разработчиков.
- Помогаете другим программистам, когда они застряли в проблеме.
Как приобрести эту черту:
- Попробуйте больше поговорить о проблеме с коллегой или другом на работе.
- Если кто-то сталкивается с проблемой, и вы знаете решение, помогите ему.
- Начните вести блог или создайте видеоурок для теста. Вы также можете зарабатывать деньги на этом.
5. Стремление к совершенству
Совершенство и одержимость не одно и то же, хотя они довольно близки. В этой статье я уже говорил о привязанности или одержимости собственным кодом. Но совершенство другое. Разработчики-перфекционисты всегда сосредотачиваются на производительности, архитектуре и других красивых вещах.
Симптомы:
- Предпочитаете увольнения компромиссу.
- Неуважение к срокам поставки.
- Меньше фокусируетесь на продвижении, деньгах.
- Любовь к фильмам Стэнли Кубрика 😆
Как приобрести эту черту:
- Гордитесь своей работой.
- Если вы влюблены в программиста, время от времени показывайте ему/ей свой код. 😄
6. Жажда знаний
Разработчики могут потреблять знания под давлением или для заработка. Хорошая мотивация — деньги или продвижение. Но это не должно быть страхом или давлением.
Разработчики, которые учатся по собственному желанию, — лучшие. Потому что потреблять знания — это искусство, и голод не утолить давлением.
Симптомы:
- Можете перечислить все стандартные библиотеки C.
- Неуважение к срокам доставки.
- Меньше фокусируетесь на продвижении, деньгах.
- Любовь к фильмам Стэнли Кубрика 😆
Как приобрести эту черту:
- Время от времени общайтесь с хорошими программистами.
- Ходите на семинары, посещайте мероприятия, связанные с программированием.
- Посмотрите несколько фильмов о взломе.
7. Думаете кодом
Хороший и увлеченный программист сам становится программой и думает как программа. Иногда уточняя мелочи и проверяя все в логике.
Симптомы:
- В непринужденной беседе быстрые метафоры исходят из программных конструкций.
- Слишком много используете «if-else» в реальных ситуациях.
- Меньше здравого смысла в реальных сценариях.
- «Социальная сеть» — любимый фильм.
Как приобрести эту черту:
- Не запоминайте вещи, а понимайте их.
- Изучите некоторую структуры данных и алгоритмы и поймите корень решения.
8. Когда находишься в Риме, поступай, как поступают римляне
Однажды моему коллеге пришлось (он так думал!) уйти с работы, потому что наш босс дал ему новый проект, который требовал от него изучения Flutter, а он был нативным Android—разработчиком.
Я всегда считала, что программист — это логика, структура и решение проблем. Языки и фреймворки — это только инструменты, но программист — это нечто большее.
Симптомы:
- Не ввязываетесь в «языковые войны».
- Не стоит слишком сильно любить определенный фреймворк.
- Знаете более одного языка/фреймворка.
- Любите архитектуру больше, чем просто решение проблем.
Как приобрести эту черту:
- Научитесь мыслить логически, а не решать что-либо вслепую.
- Любите проблемы.
- Не пропускайте проблему, для решения которой требуется небольшое усилие.
Вывод
Помимо этих, есть еще множество признаков того, что вы хороший или фантастический программист.
Существует популярная теория, которая гласит, что если вы хотите стать мастером в чем-то, вы должны потратить 10 000 часов, чтобы учиться, практиковаться и работать над этим.
Это означает, что быть хорошим в чем-то — это не 100-метровый забег. Это марафон. Вы должны быть терпеливы и страстны. Но первое, что нужно сделать, это попробовать. Вы должны попробовать, и вы должны знать, как добиться в этом успеха.
Но полезно знать, как стать хорошим в чем-то, потому что это сэкономит вам много времени.