Тотальная запись рекрутов в адепты ИТ-движения бьет все мыслимые и немыслимые рекорды. И за последние несколько лет только ленивый не попробовал войти в эту реку. Кодер, разработчик, программист: названий у профессии много, а суть одна – написание инструкций с использованием определенного набора семантики, которые впоследствии будут преобразованы машиной в нужный функционал. Очевидно, что каждый, кто себя так называет, имеет разный уровень набора личных качеств и подготовленности. Но как отличить зрелого профессионального специалиста от посредственного «вайтишника»? Давайте попробуем отделить зерна от плевел и вывести несколько общих признаков, по которым можно определить неопытного программиста. Поехали!
1. Отсутствие понимания концепций и методологий
Разработка программы сродни написанию романа. Общая цель, творческий замысел и стиль важнее, чем отдельные абзацы и главы. Однако многие новички, сосредоточившись на написании кода, никогда не задумываются, соответствует ли он парадигмам программирования и методологии, которым они должны следовать (правильные имена переменных, точное приведение типов, четкие определения функций с общими параметрами и т. д.). Да, синтаксически код может быть правильным, но суть и понимание упущены. Начинающие программисты часто забывают, что программирование — это не просто правильное использование языка, а нечто большее. У него более широкая миссия. Им еще предстоит усвоить, что техника подчиняется подходу, а не наоборот.
Опытные же программисты всегда понимают общую картину предстоящей работы и заранее готовятся к непредвиденным обстоятельствам. Они не живут в песочницах. Они начинают программировать с твердым пониманием того, что данный поток кода — это всего лишь один из возможных путей выполнения.
2. Бесконтрольный копипаст
Самым большим камнем преткновения на пути к тому, чтобы стать хорошим программистом сегодня, является коварная культура копипаста кода из открытых источников. Эта привычка убивает креативность, а вместе с ней и способность учиться, обдумывая поставленные задачи. Хотя опытные разработчики тоже иногда используют такой подход, но они достаточно мудры, чтобы делать это только для сравнения своего решения с альтернативным, а не для плагиата.
Неопытные разработчики часто грешат написанием лишних комментариев. И здесь необходимо запомнить несколько простых правил их написания:
- Комментарии должны добавлять ценность или описывать исходную логику, а не разъяснять синтаксис.
- Если код хорошо написан, ему не понадобится комментарий для рассказа о работе каждой строки.
- Комментарии не должны быть беспорядочными.
- Комментарии должны давать новую информацию, иначе это лишний элемент в коде, который зачастую просто игнорируется.
- Сложная строка кода не нуждается в комментариях, ее нужно реорганизовать или разбить на более мелкие компоненты.
- Между кодом и комментариями должна быть очевидная связь.
Хочешь стать опытным программистом?
Стань супермегаопытным программистом на курсах Proglib Academy со скидкой 35% до 1 апреля!
- Математика для Data Science
- Базовые модели ML и приложения
- Алгоритмы и структуры данных
- Основы программирования на Python
- Основы IT для непрограммистов
- Frontend Basic: принцип работы современного веба
3. Имеют проблемы с коммуникацией
Малоопытные кодеры нередко бывают эгоистичными и высокомерными, что сильно подрывает моральный дух любой команды. Высокомерие у таких личностей, как правило, бывает из-за плохо развитых коммуникативных навыков. Они прерывают на полуслове своих старших коллег, пытаясь заставить их почувствовать себя незначительными, и не прислушиваются к их советам.
4. Берутся за все задачи сразу
Молодые кодеры, не имеющие достаточного опыта, не знакомы с принципом «разделяй и властвуй». Им часто не удаётся разбить сложные задачи на более мелкие подзадачи, и в целом у них слабое представление о том, как эффективно выполнять поставленные задания и определить, когда они могут быть считаться завершенными.
Получив задание, они сразу же приступают к написанию кода, не полностью разобравшись с ним и не уточнив, правильно ли они все поняли.
Они редко просят помощи, пока не сделают работу полностью, и из-за этого порой им нужно переделывать большие фрагменты программы.
5. Не учатся на своих ошибках
Фидбэк от ментора — это одно из наиболее эффективных средств для развития разработчика программного обеспечения. Ведь только через другого человека можно заметить недостатки в своем коде и получить предложения по улучшению, о которых вы даже не задумывались. Программист-интеллектуал умеет использовать такую обратную связь для повышения своей продуктивности.
Опытность или неопытность разработчика легко определить по его реакции на фидбэк. Если программист испытывает обиду из-за комментариев о своей работе, это явный сигнал его незрелости. И сколько бы он лет ни работал в ИТ, из-за такого отношения ему не достичь значительного прогресса.
6. Неспособность воспринимать критику
Неопытные кодеры склонны сопротивляться критике и принимать ее на свой счет. Им трудно согласиться с другой точкой зрения. Это естественный процесс получения опыта для новичков. И иногда может потребоваться немалое время, чтобы неофит мог понять, что переход на следующую ступень потребует от него более гибкого взгляда на вещи. Самое важное при столкновении с критикой — это сместить фокус с кода на решение и сделать то, что лучше с точки зрения приложения.
Хорошо, если кусок кода, над которым вы трудились, работает, но лучше, когда этот код хорошо вписывается в общую архитектуру программы, он модульный и многократно используемый.
7. Нежелание обучаться
Способность к обучению напрямую зависит от желания неопытного разработчика понимать структуру приложения, его компоненты и взаимодействие между ними. При этом имеет значение тип личности разработчика и его заинтересованность в решении проблемы.
Заключение
Портрет идеального программиста: спокоен, собран, терпелив, пишет чистый код, видит более широкую картину мира, может быстро разобраться в чужой программе и определить ее качество, продумывает решение проблемы, прежде чем начать кодить, и имеет развитое чутье к программированию.
Комментарии