Почему разработчик сегодня злой
easy

Почему разработчик сегодня злой

Три главные проблемы в работе программиста и как с ними быть.

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

В работу попал непонятный код

Например, IT-специалист трудится в интернет-магазине. Он написал программу для обслуживания заказов с нуля, он знает все её модули и понимает внутреннюю логику. Если что-то идёт не так, он мгновенно решает проблему.

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

Есть программисты-педанты: у них все «ящики» подписаны, функции и переменные названы понятно, архитектура кода очевидная. С такими вариантами приятно работать.

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

Плохо сделанный код от предыдущего разработчика

Одно дело — когда код от другого специалиста просто устроен непривычно. Другое дело — когда он написан с огромным количеством «костылей».

Костыль в программировании — это когда, чтобы что-то работало, его подпирают чем-то неприспособленным. Представьте, что дверь в ванную закрывается на резинку, к которой привязана 100-килограммовая гиря. В итоге дверь работает, но гиря занимает место, и об неё все спотыкаются.

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

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

Не дают времени сделать нормально

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

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

Это если делать нормально.

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

Хорошо, если руководитель понимает ценность нормальной разработки и даст на эту кнопку два дня, а то и три. Но чаще начальству нужно быстрее и «лишь бы работало». В итоге специалиста подгоняют, он вынужден срезать углы. И он сам понимает, что получается спагетти из кода, но переделка всегда откладывается на потом. Технический долг копится, никакого кайфа от работы.

Бонус: он просто не спал

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

Что делать

Если вы встретили расстроенного разработчика — дайте ему осознать, что вы понимаете его боль. А если вы сами программист — прокачивайте навык переговоров, чтобы добиваться дополнительного времени на задачи и не брать в работу чужой бракованный код. Сил вам!

Обложка:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Вам может быть интересно
Задача про Айфон за 2000 рублей

Сколько можно потерять из-за фальшивой купюры.

medium
JavaScript для новичков: чем опасны нестрогие типы данных

В JavaScript есть удобная штука, которая может сильно вам навредить.

medium
Почему школьники не любят уроки программирования

Почему обучение основам программирования в школах такое ужасное и что с этим можно сделать.

easy
Зачем разработчикам активное слушание и как его практиковать

Говорите, мы вас слушаем!

easy
Что делает тестировщик на работе

Все думают, что он ищет баги, но на самом деле…

easy
Синтаксис языка Mojo

10 основных конструкций клона Python для ML

easy
Что с работой в ИТ в 2024 году

Нужен опыт, но есть один лайфхак

easy
Как делают кастомные клавиатуры

Интересное, но недешёвое удовольствие

easy
Вакансия на 210 тысяч: что такое .NET и зачем он нужен

Для тех, кто любит программировать и точка

easy
easy
[anycomment]
Exit mobile version