Рациональный инженер-программист: как справиться со стрессом и избежать эмоционального выгорания
4 апреля 2023 г.Я инженер-программист, который обожает учиться, использовать научный подход к решению проблем и оптимизировать свою работу. Работая инженером-программистом, я чувствовал выгорание и замечал, что это чувствуют и другие люди. В этой статье я поделюсь несколькими рекомендациями, дополненными источниками, как бороться с выгоранием.
Что такое выгорание
По данным mentalhealthUk, наиболее распространенными симптомами эмоционального выгорания являются:
* Чувство усталости или истощения большую часть времени * Чувство беспомощности, ловушки и/или поражения * Чувство отчужденности/одиночества в мире * Наличие циничного/негативного мировоззрения * Неуверенность в себе * Откладывание на потом и откладывание дел на потом * Чувство подавленности
Статистика показывает, что около 38% работников сообщали о том, что чувствовали себя выгоревшими перед COVID. Это число выросло до 43% после начала пандемии. Для разработчиков программного обеспечения цифры еще хуже. Во время пандемии 54% инженеров-программистов заявили, что они пострадали от выгорание в большой и средней степени (21% и 34% соответственно). Три главные причины этого: высокая загруженность (47%), неэффективные процессы (31%), неясные цели и задачи (29%)
Итак, выгорание широко распространено, и оно стало еще более распространенным во время ковида, который может все еще сохраняться, поскольку некоторые триггеры выгорания проявляются в большей степени на удаленных должностях. Давайте рассмотрим эту широко распространенную проблему, ее причины и способы их решения.
Основные причины выгорания
Высокая рабочая нагрузка
Лично мне кажется, что засиживаться на работе допоздна, чтобы исправить какую-то критическую проблему или освежить в памяти функцию, которую вы хотите доработать, довольно весело. Но, и очень важное «но», только если это делается на досуге и в комфортной обстановке.
Наоборот, находиться в ситуации, когда опаздывать — это привычка, или постоянно приближаться к дедлайнам, особенно важно бросить все, что вы делаете сейчас, и исправить эту производственную ошибку, или иметь более высокие ожидания в отношении производительности, которых можно достичь, — это вредный. n n Итак, когда я замечаю, что высокая рабочая нагрузка является постоянным состоянием моей работы, я знаю, что мне нужно это исправить, потому что я заимствую ресурсы из своего пула ресурсов, и если это будет продолжаться какое-то время, мой пул в конечном итоге опустеет. . И это собирается ударить меня по лицу. Жесткий. n n Часто это проблема, которую необходимо решать с вашим руководителем, так как он, как правило, может решить ее, сказать вам, когда ее можно решить, или объяснить, почему она вообще не может быть решена - случай, когда вы понимаете, что у вас есть другие варианты, открытые в перед вами. n n Когда-то я работал в стартапе с ограниченным бюджетом, а изменения в последнюю минуту, сверхурочные и высокая рабочая нагрузка были нормой. Когда мы спросили менеджера о стратегии решения этой проблемы, он сказал, что природа компании заключается в том, чтобы выполнять ее таким образом. Мы стартап! Стало ясно, что если я хочу оставаться в здравом уме, то не должен слишком долго задерживаться на проекте. Моя психическая стабильность гораздо важнее для меня, чем постоянное соблюдение сроков с неопределенными преимуществами.
Для стартапа их выполнение было спринтерской ситуацией, где можно было выиграть или умереть, потому что им нужно было обеспечить еще один раунд финансирования, а деньги всегда заканчивались. Но для меня это был марафон — мне нужно было думать о том, чтобы оставаться стабильным и страстным на протяжении всей своей долгой карьеры. Я не хочу перенапрягаться в течение 6 месяцев и еще год пытаться бороться с последствиями серьезного выгорания. Мне не пришлось покидать их, так как меня перенаправили на другой проект, а компания все равно вскоре закрылась, но я знал, что в конце концов уйду.
n Обычно высокая рабочая нагрузка может быть решена следующим образом:
* Ограничение его на период времени; * Ввод/наем дополнительных ресурсов; * Снижение ожидаемой производительности.
Кроме того, я наблюдал поведение, более характерное для младших инженеров-программистов, — доказывать начальству, что вы отличный разработчик, работая гораздо больше, чем требуется. Это может произойти из-за страха быть уволенным или из-за чувства неуверенности, потому что вы пишете меньше кода, чем другие более опытные коллеги. Правда в том, что ожидается, что потребуется больше времени и некоторые рекомендации, чтобы достичь того же результата, что и ваши старшие коллеги. Будьте осторожны с кем-то, кто может использовать ваш юниорский титул в качестве предлога для того, чтобы вы работали больше. Вам не нужно. п
Неэффективные процессы
Неэффективные процессы могут занимать много времени и вызывать разочарование. Представьте, что у вас есть менеджер по безопасности привратника, который единственный имеет доступ к DNS-провайдеру компании. А для добавления нового поддомена, что является достаточно частым процессом, нужно создать тикет, подождать неделю, пока она его заберет, и назначить звонок. После всего этого она подвергает сомнению все решения, которые вы принимаете, хотя лично она не знает, как настраивать записи DNS.
Или представьте, что вы хотите изменить размытие фонового изображения на 10 % и провести A/B-тестирование, но для этого вам нужно подать официальный документ с предложением об изменении дизайна и получить одобрение от комитета по дизайну в компании. Или что вы должны каждые полгода писать обзор на 200 слов 20 инженерам в вашем отделе, хотя вы все время работаете только с двумя коллегами. n n Некоторые плохие процессы созданы как неудачный эксперимент, некоторые пережитки из разных времен компании, некоторые являются карго-культами, а некоторые являются улучшениями еще худших процессов. n n Но самое главное, что вы можете попробовать их изменить. Со мной много раз случалось, что я предлагал изменить то, как мы организуем встречи, или просил вообще отменить их, или я объяснял, насколько ужасным или разочаровывающим кажется какой-то процесс и как я вижу, как он становится лучше. Временами я получал приличное объяснение того, почему все так, временами процессы менялись, временами вообще ничего не происходило, и мне приходилось с этим мириться. Но я, по крайней мере, знал, что сделал все, что мог.
Неясные цели и задачи
Эта проблема убивает даже самых сильных. Я думаю, вы видели людей, которые понятия не имеют, зачем они разрабатывают программу или почему их держат в офисе. Потеряв цель, человек теряет смысл. Вот почему так важно согласовать всю команду с целями компании и объяснить, почему они делают то, что делают. Когда я вижу всю картину, меня это вдохновляет, потому что теперь я знаю, чему я содействую и как это сделать. n n Эта Проблема часто возникает в результате:
* плохая коммуникация в команде; * закат команды * отсутствие хорошего продакт-менеджера, который найдет цель, что в конечном итоге приводит к предыдущему пункту.
Часто, если у команды нет четкой цели, и команда не понимает, зачем они существуют, это приводит к скорому закату команды, потому что это дорогая команда разработчиков, которая не работает. В таких ситуациях я стараюсь достучаться до руководства, чтобы понять, чем я могу быть полезен в другом месте. Если это невозможно, я знаю, что мне нужно искать другую работу.
Когда нет четкой цели, я склонен становиться циничным. Я стараюсь дистанцироваться от компании, меня не интересует, чего она хочет добиться, потому что я не могу этому способствовать, так как у меня нет цели, и моя инициатива падает. Вот почему я считаю, что иметь четкую цель так важно.
Несопоставленные значения
Написание кода — это игра. Сам по себе занимательный процесс. Но что делает его еще более полезным, так это написание кода для проекта, который соответствует вашим ценностям. n n На своей первой работе я разрабатывал веб-сайты для бельгийских компаний. Это было здорово и занимательно, потому что все было новым, но я бы не сказал, что создание системы управления аквапарками было таким увлекательным. И я помню тот день, когда мне сказали, что я буду работать над системой, которая обеспечит выполнение упражнений для детей с дислексией. Мне нравится преподавать, мне нравятся игры, и мне нравится помогать людям. Я так увлекся этой идеей, что не мог спать спокойно в ту ночь, потому что думал обо всех крутых вещах, которые я мог бы построить. Раньше со мной такого никогда не случалось. n n Таким образом, несмотря на то, что не всегда легко найти работу, ценности которой соответствуют ценностям инженера, я думаю, что это одна из очень редко упоминаемых, но наиболее полезных вещей, на которые следует обращать внимание. n n Чтобы найти проекты, которыми я увлечен, я задаю следующие вопросы:
* Какие проблемы в мире и вокруг меня меня глубоко волнуют? * Как я могу внести свой вклад в мир, чтобы сделать его местом, где я хочу быть? * Какие хобби или темы меня больше всего интересуют? * Работаю в какой компании я бы гордился?
Отсутствие изменений
Еще одна важная вещь, которую нужно сделать компаниям, – немного изменить ситуацию. Для инженера-программиста нет единого места, где можно было бы пройти все обучение. Постоянно появляются новая информация, инструменты, методы и языки. Я пишу это в то время, когда персональная помощь по программированию на основе больших текстовых моделей находится в разработке.
Для инженера-программиста вы либо движетесь назад, стагнируете, либо медленно устареваете. Изменения важны.
Еще одна важная вещь, которая неразрывно связана с изменениями, – любопытство. Многие инженеры идут в разработку, потому что им нравится возиться и экспериментировать.
Вот почему я верю в способность ротации внутри компании повышать уровень знаний и удовлетворенность работой инженеров-программистов. Это заставляет нас узнавать новое, понимать мышление других людей и исследовать новые инструменты. Вот почему я не думаю, что выгодно работать в одной компании, в одной культуре или на одной должности более двух лет. Я считаю, что очень весело заниматься разной деятельностью в разных компаниях, решать задачи с использованием новых технологий, делать новые вещи.
Ручная работа
Раньше я очень прагматично относился к тому, что буду автоматизировать. Если мне нужно выполнить процесс, который занимает 10 минут каждый месяц, и я потрачу полдня на его автоматизацию, я обычно не использую автоматизацию, поскольку первоначальные затраты довольно велики.
Однако в последнее время такой подход заставил меня разочароваться в необходимой мне функциональности. Мне нужно было преобразовать повторяющуюся и сложную структуру JSON в массу объектов в коде с помощью ручного ввода и нашей собственной библиотеки шаблонов. n n Изначально казалось, что его не нужно автоматизировать, так как процесс его преобразования не включает в себя столько шагов, поэтому я потратил 2 недели на копирование, адаптацию и преобразование JSON-файла. В какой-то момент я заметил, что каждый раз, когда я думаю о задании, мне хочется его избежать. Тем временем я брался за другие задачи, пытался торговаться с самим собой, и в результате я прокрастинировал (так что на самом деле мне потребовался месяц, чтобы произвести результат за 2 недели). У меня оставалась примерно половина, когда я понял, что имеет смысл потратить 3 недели на автоматизацию, вместо того, чтобы проталкиваться и заставлять меня делать работу, которую я ненавижу. И 3 недели кодирования прошли нормально. n n Тратил ли я больше времени только на автоматизацию? Теоретически да. Но в целом, это было хорошее решение, потому что я не думаю, что действительно проделаю 2 недели работы за 2 недели. В конце концов, я нашел это таким пугающим. Что еще более важно, так это то, что процесс был интересным, и мне это нравилось. Мне не нужно было пробивать себе дорогу и страдать. n n С тех пор я стараюсь также учитывать стоимость ущерба для моего психического состояния, связанного с длительным выполнением ручных задач, чтобы иметь возможность честно сравнить ее со стоимостью автоматизации.
Устойчивость
Последний аспект, который необходимо учитывать, — устойчивость. Он позволяет переносить и адаптироваться к умеренным уровням стресса и давления, восстанавливаться после них и возвращаться в состояние равновесия. Неизбежно приходится сталкиваться с разочаровывающими, сбивающими с толку, стрессовыми и сложными ситуациями, будь то в разработке программного обеспечения или в жизни в целом. Следовательно, крайне важно научиться эффективно справляться с такими ситуациями.
Наиболее важным аспектом здесь является общее состояние здоровья. Хотя я не собираюсь давать никаких медицинских советов, поскольку я вообще не медицинский работник, я чувствую, что следующие протоколы изменили меня, и я стал гораздо более устойчивой версией себя:
* Хороший сон (7-9 часов, регулярное время засыпания, отсутствие яркого/любого света за 1 час до сна, более 15 минут пребывания на солнце рано утром, более низкая температура, когда я засыпаю, и немного немного выше, когда я просыпаюсь, никакого кофе после 14:00, никакого алкоголя за 6 часов до сна); * Регулярные упражнения (тренировки с отягощениями 3 раза в неделю и 90 минут кардиотренировок в неделю). * Универсальная диета (мало сахара/быстрых углеводов, мало обработанной пищи, широкий спектр витаминов, макро- и микроэлементов, 5 г омега-3, 5+ г клетчатки, 8 окно для кормления, витамин D, когда зима и мало солнца на улице) * Качественные поддерживающие отношения с людьми * Холодовое и тепловое воздействие (холодный душ или ванна по 3-10 минут 1-2 раза в неделю, сауна 80-120°С 2-3 раза в неделю по 20 минут) * Медитация (20 минут в день) * Психотерапия
Не верьте мне на слово, изучите тему благополучия сами, поэкспериментируйте и найдите то, что заставляет вас чувствовать себя лучше всего.
Заключение
Обратите внимание на следующее:
* Обратите внимание на ранние симптомы выгорания, такие как постоянная усталость, избегание обязанностей и потеря мотивации. * Не переносите большую нагрузку в течение длительного времени, поговорите со своим менеджером, чтобы изменить вашу работу, если это возможно. * Узнайте неэффективные процессы, которые влияют на вашу работу в компании, и сделайте все возможное, чтобы изменить их. * Стремитесь получить четкое представление о целях вашей команды и себя * Автоматизируйте большие ручные задачи * Найдите рабочее место, которое соответствует вашим ценностям * Измените то, что вы делаете, учитесь новому, делайте новые вещи * Приведите свое физическое и психическое здоровье в порядок
Эта статья является частью серии статей "The Rational Software Engineer" на сайте Hacker Noon. Он охватывает темы, связанные с оптимизацией личных процессов, образованием, развитием карьеры и увлечением разработкой программного обеспечения.
Некоторые другие игры из этой серии включают:
* Инженер-программист Rational : руководство по организации рабочего времени * Инженер-программист Rational: есть это не идеальный проект * Инженер-программист Rational : Как быть увлеченным своей работой [Часть 1] * Инженер-программист Rational : Как быть увлеченным своей работой [Часть 2]
Оригинал