7 проявлений неопытности программиста, вас завербовали?

HTTP
7 проявлений неопытности программиста, вас завербовали?

Знание этих показателей убережет вас от повторения тех же ошибок в вашей карьере программиста.

Опыт работы в индустрии программного обеспечения напрямую связан с количеством лет, которые вы проработали в отрасли. Это предложение в определенной степени верно, но количество лет, которые вы проработали на этой работе, не обязательно означает, что вы приобрели столько же лет опыта работы, как говорится в поговорке: «Мы думали, что работаем десять лет, На самом деле стаж работы всего один год, но он повторяется в течение девяти лет».

Есть люди, которые проработали много лет, но ведут себя как новички в отрасли. Они почти не изучают основы разработки программного обеспечения. Если не считать некоторого роста в первые несколько лет, в последние годы наблюдается застой, и они не понимают, почему.

В то же время я работал с разработчиками с опытом работы всего несколько лет, которые продемонстрировали удивительный потенциал роста. У них правильный настрой и они знают, как избежать некомпетентного поведения.

В зависимости от определенных привычек разработчиков совершенно очевидно, кто более профессионален, а кто более любитель. Давайте углубимся в 7 моделей поведения программистов-любителей, о которых должен знать каждый программист.Эти ошибки могут помешать нашему профессиональному развитию.

1. Зафиксируйте много кода за раз

Вспомните, встречали ли вы когда-нибудь кого-нибудь, кто коммитил сразу много кода, и вам не хотелось делать за него код-ревью. Да, это делают непрофессиональные разработчики. Они будут включать изменения в несколько модулей в один запрос на проверку кода и будут призывать вас уделять приоритетное внимание проверке их кода. Да можно ли торопиться?Назад еще нужно решить проблему конфликтов кода. Эта проблема есть и у многих старших разработчиков, они не делают никаких коммитов при разработке фичи, а коммитят все изменения только после того, как функция будет полностью завершена, поэтому любые комментарии в код-ревью повлекут за собой много изменений.

Когда я сталкиваюсь с таким запросом на проверку кода, первое, что я делаю, — это прошу коммиттера разделить его на более мелкие запросы по функциональным модулям. Я рассмотрю только первый запрос функции в задачах (система управления задачами), а затем передам его коммиттеру. Если у меня будет время, я свяжусь с коммиттером для живого обзора кода.

что ты можешь сделать:

  • Делайте небольшие коммиты кода. Хорошей практикой является выполнение коммитов кода каждый рабочий день.
  • Не отправляйте код, который не компилируется или приведет к сбою сборки.

2. Код плохо написан

Неопытные разработчики не пишут красивый код, они пишут беспорядочный код, разбросанный по частям кодовой базы.

Когда вы пытаетесь прочитать такой код, создается впечатление, что вы находитесь в лабиринте. Вы постепенно забываете, с чего начали, что искать и что делает этот код.

Опытные разработчики знают, как устроен код. Если разрабатываемая функция не очевидна, вам сначала нужно записать свое понимание требований на бумаге и нарисовать блок-схему (упрощенный вариант спецификации требований спецификации), а также составить в уме полное представление об этом коде. Не начинайте программировать, пока вы не разобрались, как его модифицировать.

Если вы не будете следовать приведенным выше правилам, вам будет очень больно просматривать готовый код. Если вам нужно исправить проблемы или добавить функции в будущем, это также станет очень сложным.

что ты можешь сделать:

  • Прежде чем писать код, необходимо иметь четкое представление о функциях, которые вы хотите реализовать. Чтобы четко понять требования, нужно задать как можно больше вопросов.
  • Сохраняйте свой код кратким и элегантным. Другие члены команды могут прочитать код и понять, для чего он предназначен.

3. Выполняйте несколько задач одновременно

Неопытные разработчики не знают, когда начинать задачу, как ее продвигать и когда заканчивать. Они пытаются обрабатывать несколько задач параллельно. Они не знают, как разбить большую задачу на маленькие модули, которые упростят реализацию.

Получив задание, они не сразу подтверждают требования с начальством, а сразу начинают программировать, и во время выполнения задания не будут общаться с начальством о ходе выполнения задания. Они дадут вам обратную связь только тогда, когда задача будет выполнена. В этот момент вы можете только надеяться, что они сделают то, что вы хотите.

Другим проявлением неопытности разработчиков является многозадачность: они будут совмещать несколько дел одновременно, например: реализовывать несколько функций, которые не слишком связаны между собой, решать проблемы производственной среды, помогать другим коллегам в работе и т. д.

В конечном счете, от них нет эффективного выхода. Несмотря на то, что их отношение и намерения были хорошими, последствия для всей команды были катастрофическими, они тратили много времени и заставляли команду работать день и ночь.

что ты можешь сделать:

  • Сосредоточьтесь на выполнении небольших задач. Разбивайте поступающие задачи на мелкие части, определяйте приоритеты требований и выполняйте их небольшими частями.
  • Возьмите квест и начните новый квест после его завершения.

4. Высокомерие

Высокомерие смертельно опасно для неопытных разработчиков. Высокомерие может привести к тому, что они не смогут принять критику и советы от других. Когда вы комментируете их код или утверждения, они решат, что вы ставите под сомнение их компетентность.

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

Это не только новички на самом деле — некоторые разработчики с многолетним стажем проявляют эту наглость, отчасти из-за личной удовлетворенности профессиональными достижениями, а отчасти из-за отсутствия у них возможности поработать с великими людьми, немного понаблюдать за небом.

Кроме того, высокомерное поведение с другой стороны доказывает, что такие разработчики действительно неопытны. Такое поведение может создать массу препятствий для их карьерного роста, ведь никто не любит работать с высокомерным человеком. Когда рост замедляется, они ищут причины не в себе, а больше обвиняют других.

что ты можешь сделать:

  • Будьте скромны на пути вперед. Вежливое обращение с людьми поможет вам далеко продвинуться в карьере разработчика программного обеспечения.
  • Относитесь ко всем с уважением. После разногласий, когда вы выражаете свое мнение, уважайте другого человека независимо от его статуса.

5. Неспособность учиться на прошлых ошибках

Я всегда считал, что механизмы обратной связи — мощный инструмент для разработчиков программного обеспечения. Отзывы других позволяют нам понять, каковы наши слабые стороны и как их улучшить. Умный разработчик понимает, как использовать отзывы других для собственного роста.

Вы можете сказать, неопытен ли разработчик, по тому, как он отвечает на конструктивные комментарии. Неопытный разработчик не принимает никаких конструктивных советов и даже замечаний в обзорах кода, которые он сочтет нападками на себя лично.

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

Если разработчик чувствует себя обиженным комментариями к его коду, это лишь показывает, что у него нет реального опыта разработки. Он работал с отношением монаха и работал по часам в течение дня, но чувствовал, что не встретил Боле, который бы его ценил.

что ты можешь сделать:

  • Будьте позитивны в каждом отзыве. Для каждого отзыва вы можете принять или отклонить его, но сохраняйте спокойствие, прежде чем отклонять его.
  • Учиться на ошибках. Никто не может быть прав все время, продолжайте учиться всю жизнь, чтобы оставаться сильным.

6. Личные дела в рабочее время

В повседневной работе всегда обнаруживается, что некоторые члены команды в рабочее время занимаются личными делами, такими как: просмотр социальных сетей, просмотр сайтов с покупками, игра в игры.

Раньше у меня был член команды, который торговал акциями в рабочее время. Поскольку ему нужно время от времени обращать внимание на тренд K-линии акции, качество личной продукции невысоко. У других коллег с ним проблемы, потому что им нужно тратить больше времени, чтобы уложиться в сроки.

Когда менеджер по развитию поговорил с разработчиком, он на некоторое время изменился, но быстро вернулся к своим старым привычкам. В конце концов, компании пришлось его уволить.

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

что ты можешь сделать:

  • Старайтесь не заниматься личными делами в рабочее время. Попросите вашего менеджера взять отпуск, когда вам нужно отлучиться на несколько часов по личным делам.
  • Используйте перерывы для просмотра социальных сетей. Если вам нужно заказать еду на вынос или торговать акциями, воспользуйтесь обеденным перерывом.

7. Слепая погоня за технологическими тенденциями

Еще одним признаком неопытности разработчика является его отношение к технологическим трендам. Вы обнаружите, что они всегда говорят о технологических тенденциях, и когда появляется новая тенденция, они немедленно отбрасывают старую тенденцию и принимают новую.

Неопытные разработчики всегда следуют руководствам. Нет никаких сомнений в том, что учебные пособия являются полезными инструментами обучения, но простое следование учебным пособиям шаг за шагом без какой-либо практики — пустая трата времени. Это заставит вас почувствовать, что вы овладели им иллюзорно, но то, овладели ли вы знаниями, нужно проверить реальными проектами.

Разработчики редко используют горячие технологии или то, что они узнают из руководств, для реализации новых вещей, и они много изучают горячие технологии или руководства, чтобы удовлетворить свое тщеславие или опасаться, что они что-то упустят.

что ты можешь сделать:

  • Время и энергия для изучения методов, которые можно действительно использовать в работе или реальных проектах.
  • Учитесь на уроках и своевременных упражнениях, относительный учебник для новичков, собственная реализация функции может узнать больше.

Неопытные разработчики могут снизить эффективность всей команды из-за собственной неэффективности. Его неправильное отношение к своей работе приведет к тому, что он упустит много возможностей в развитии своей карьеры.

Умные люди знают и избегают этого неправильного отношения и способа работы. Если вам не повезло, и вы приобрели эти вредные привычки, со временем вам будет все труднее и труднее избавиться от них.