Профессия программиста для многих — предел мечтаний и возможность наконец попасть в дивный новый ИТ-мир. Однако у этой востребованной сегодня профессии есть немало минусов. Программист с десятилетним стажем Брет Слаткин (Brett Slatkin) опубликовал на своём сайте перечень сложностей, с которыми ему пришлось столкнуться за годы работы.
Читать далее
По словам автора, он составил этот перечень, чтобы подготовить молодых разработчиков к возможным трудностям, а также обсудить общие проблемы с коллегами по цеху.
Итак, что плохого может быть в работе разработчика? Вот небольшой список сложностей, с которыми сталкивается рядовой программист, работающий под началом техлида или менеджера.
- Нужно слишком много знать, и на это никогда не хватает времени.
- Код написан плохо.
- Неудачные текущие абстракции.
- Я бы сделал это иначе.
- Комментарии не имеют смысла и/или неактуальны.
- Отсутствует документация о том, как что-то построено и почему оно работает именно таким образом.
- Билд медленный.
- Тесты — медленные.
- Помимо этого, тесты ещё и ненадёжные.
- Тестов нет вообще.
- Неудачные фреймворки, которые требуют много шаблонного, объёмного кода или странных тестов.
- Менеджер считает, чтоб скорость работы важнее качества кода.
- Зависимости изменяются без предупреждения.
- Различный код в разработке, на тестах и в продакшене.
- Потеря уймы времени при работе над какой-то проблемой. Или багом. Или всем вместе.
- Неработающие и/или ненадёжные тесты, которые приходится переписывать, не будучи их автором.
- Чужие баги или проблемы на продакшене, до которых нет дела настоящим «авторам».
- Работа над чужим кривым кодом или системами после чьего-то увольнения.
- Неавтоматизированные вещи, которые, вообще-то, давно пора автоматизировать.
- Коллеги или менеджеры постоянно отвлекают вас от работы.
- Проблемы из-за переключения контекста.
- Просьбы менеджера поработать над срочным проектом.
- В процессе инспекции кода коллеги оказываются кретинами, и это воспринимается как личная проблема.
- Другие люди задерживают готовность вещей, требуемых для для выполнения вашей работы.
- Другие программисты слишком медленно делают свою работу.
- Необходимость долгого ожидания других людей.
- Продакшн-решения, с которыми вы не согласны.
- Ощущение, что вы просто делаете то, что вам скажут.
- Отсутствие автономности.
- Никто не уважает ваше мнение.
- Просьба переделать кусок работы, над которым вы очень долго и упорно мучились.
- Продакт-менеджеры изменяют требования к вам из-за критики или оценок со стороны других сотрудников.
А что делает вашу жизнь разработчика невыносимой? Поделитесь своими вариантами в комментариях.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.