Чего боятся разработчики

Чего боятся разработчики

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

Профнепригодность

Сложно представить себе такое в работе каменщика или сантехника. Зато в мире компьютеров, если подолгу не «курить» выходящее со скоростью света новьё, то с вероятностью 146% обнаруживаешь себя на обочине списков вакансий с устаревшим резюме и навыками, которых будет уже мало не только чтоб ногой открывать двери IT-компаний, но и хотя бы поддержать разговор с коллегой по цеху.

По идее, разработчику вполне достаточно просто справляться со своими задачами. Но он сам понимает, что этого мало. Не прочтя в день хоть одну статью по своей специализации, он чувствует, что день не завершен, и чего-то в нём не хватает.

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

С одной стороны, человек боится, что он недостаточно умён или способен, чтобы понять архитектуру и принцип работы приложения. «Дайте мне ещё недельку разобраться в проекте,» — говорят такие люди, наивно полагая, что с их уровнем подготовки проект реально понять, лишь глядя на то, где какие файлы лежат, да как называются классы.

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

Нерешаемая задача

Кто-то скажет, что нерешаемых задач не бывает — счастливые люди! Наверное, на таких и держатся IT-компании. При этом разработчики часто тратят время не столько на саму работу, сколько на то, чтобы понять, возможно ли в принципе выполнить ту или иную задачу. И если да, то какой кровью?

Есть тысяча случайностей, из-за которых приложение может никогда не подняться, особенно на тех проектах, где тесно переплетаются железо и софт. Барахлящий чип, хилый разъем, убитый кабель, старая прошивка, отсутствующие библиотеки, потерянный пакет и, наконец, «плавающий баг» — любое звено может сказать системе «нет». А чем больше звеньев в цепи, тем больше возможных комбинаций, где что-то может пойти не так. В такие моменты жалеешь, что нет на столе учебника по комбинаторике.

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

Пустой отчет

Этот вид страха напрямую зависит от наличия осязаемых результатов и графика сдачи отчетов. Если сдавать их нужно каждый вечер, то панические приступы могут наступать уже после обеда — и чем ближе к вечеру, тем чаще будет пульс. Даже если одним прекрасным утром образовалось окно и нет задач, от этой паники сложно избавиться, потому что мысль «что написать сегодня в отчете?» висит над тобой, как дамоклов меч, весь день. Паника появляется в середине недели перед пятницей, а тем, кто сдает отчеты ежедневно, я бы выдавал кефир, ликёр и шоколад — для успокоения нервов.

Собрания и телефонные конференции

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

Однотипные задачи

Мозги здоровых homo sapiens устроены таким образом, что познание даёт им удовольствие. И не важно, сплетни это, новости, новые языки или навыки. Пока ты узнаешь что-то новое, то чувствуешь, что жизнь — не зря. Поэтому и первые полгода на любой работе проходят с интересом. Но уже освоившись и нащупав рамки применяемых на проекте технологий и фреймворков, начинаешь захиревать, понимая, что всё движется по накатанной, и изучать для работы особо-то и нечего. Ещё веселее, когда оказывается, что политика компании в отношении новых технологий — «подождать лет пять».

Поломка приложения

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

Внезапное изменение ТЗ

Вот, вроде бы, всё ж было хорошо и понятно. И процессы были налажены. Но в один неведомый день заказчик встал не с той ноги и решил всё переиначить. За недельку-вторую до релиза. Паника, ажиотаж и овертаймы. Костыли, хардкод и ковбой-кодинг. Врагу не пожелаешь. Этот вид страха пересекается со страхом собраний и телефонных конференций, на которых обычно и объявляется «благая весть», и больше всего от него страдают новички и неуверенные мидлы.

Увольнение

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

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

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

Возраст

Когда тебе 20, об этом как-то не думаешь. Но чем дальше, тем чаще начинаешь задумываться о том, чем будешь заниматься в 45 и насколько чаще придется слать по адресу все те компании, где в «молодой дружный коллектив» требуются сеньоры с десятилетним опытом в возрасте от 22 до 26 лет. Всё бы ничего, если б можно было в одной компании работать до пенсии, как люди когда-то и делали на заводах и фабриках. Но с каждым годом перспектива оказаться на улице в сорок лет, да с покрывшимся мхом резюме и без знаний современных технологий становится всё более ощутимой. Не выкинут ли HR’ши в папку spam моё резюме? Не отфильтруют ли меня заказчики/проджект-менеджеры или новые владельцы? Не надоест ли мне к тому времени программирование, а я уж буду без былого запала, чтобы осваивать новую специальность? — Подобные вопросы могут беспокоить не только людей в возрасте, но и тех, кто смотрит на пару шагов вперёд.

Конечно, это лишь вершина айсберга. За скобками остался страх одиночества, умопомешательства, проблем со здоровьем, повесток, налогов, отвязки зарплаты от доллара, мирового спада спроса на услуги разработчиков и так далее. Fear not, my friend! Потому что, как говорил сержант из фильма «Грань будущего»: «Бояться — это нормально. Смелости без страха не бывает».

Как уменьшить влияние страхов

Без точного диагноза трудно назначить верное лечение. Поэтому осознание причин страхов — задача номер один. В этом могли бы помочь специалисты, но ничто не мешает попробовать и самому.

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

С другой стороны боязнь ошибиться может быть вызвана не столько незнанием (ещё точнее — неопытностью), сколько, например, комплексом отличника. Или комплексом перфекциониста. Тысячи их! Может, звякнуть таки психотерапевту?

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

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

Источник: dou.ua