Найти в Дзене
Mad Devs

Решение основных проблем джуниоров

Оглавление

За весь период проведения стажировки, проблемы у стажеров одинаковые. Люди не умеют коммуницировать. Никак. Я несколько раз рассказываю о важности коммуникации за период стажировки. Но понимать они это начинают столкнувшись с реальностью. В этой статье я хочу разобрать все эти проблемы на обычных жизненных примерах. Все проекты в статье — это учебные проекты, а не проекты наших заказчиков.

Увольте меня. Я продолбал три проекта и не вижу выхода

Шел август месяц. Стажер Дима заканчивает программу стажировки и подходит срок до реальных проектов. Все идет хорошо и Диме все нравится. Ему нравится писать код, решать задачи. С каждой решенной задачей он становится веселее и счастливее. Оглянувшись назад он понимает, что хорошо спрогрессировал и знаний у него в предметной области стало значительно больше. Дима не раз слышал о важности коммуникации, но не пользовался этими знаниями. У него и так ведь все получается и нет нужды что-нибудь спрашивать.
В конце августа к Диме приходит тимлид. “У меня есть для тебя проект, — говорит тимлид. — Возьмешь?”. А почему бы Диме не взять проект? Он ведь этого и хочет. Дима получает описание проекта, сроки. Дали на реализацию месяц. Подумав, Дима решил, что справится и согласился.
Через две недели снова подходит тимлид и говорит: “Слушай, а есть еще проект. Его тоже надо сделать за месяц. Возьмешь?”. Дима берет проект. Сроки Дима не оговаривает. Он верит, что он справится.
Дима, чтобы не сорвать сроки, начинает больше работать. Со временем он начинает меньше спать. Он пьет все больше и больше кофе. Работает по выходным. Понимает, что все становится хуже и ничего не делает.
Еще через неделю тимлид приходит опять и говорит: “Слушай, давай я тебя закину в реальный проект. Тесты будешь писать, на полный рабочий день тебя закинем, а дедлайны по проектам сдвинем на недельку. Идет?”. Дима видит в этом какое-то спасение. Ведь у него будет неделя, чтобы завершить первый проект. И соглашается.
Но продуктивность Димы падает. Им становятся недовольны все и по всем проектам. Дима ничего не делает. Ждет, когда его корабль разобьется об айсберг реальности. Он не может подумать, как бы исправить ситуацию. Его мысли сосредоточены только на том, чтобы успеть все сдать. Он не помнит, когда последний раз высыпался. У него депрессия и эмоциональное выгорание. Он понимает, что все это достало и хочет уволится.
И вот, он идет к тимлиду и просит его уволить.

Дима в этой истории — стажер. Для главного героя нужно было имя. Тимлид — это я. И я ждал момента, когда ко мне он придет и будет просить об увольнении. А уволиться нельзя.

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

Какие же были причины и возможные решения проблем

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

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

Второй вариант решения проблемы — перенести сроки и попросить о смене дедлайна.

Вы сами приняли на себя нереальные сроки. Но поняли вы это слишком поздно. Так бывает. Вы не поймете, что задача невыполнима в срок, пока не начнете её делать. Что можно сделать в этой ситуации? Переоценить дедлайн и идти на переговоры. Можно было сказать за пару дней до сдачи, что проекты не получается сдать. Я переоценил себя и осознал урок. Я буду стараться такого недопускать. Я понимаю, что я подвел людей и я прошу дать мне еще время.

Разве менеджер скажет вам, что времени у тебя нет? Да, есть ситуации, когда сроки поджимают настолько, что если не сдать задачу, то можно увольняться, потому что работать будет негде. Но такие ситуации скорее исключение, чем правило.

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

Четвертый вариант — оценить самому примерный объем работ и подвинуть сроки еще перед стартом проекта.

А еще есть пятый, шестой и еще множество вариантов, которые решаются коммуникацией.

После обсуждения вариантов решения с Димой, Дима сразу же применяет их на практике. Оценивает текущее состояние дел, ставит сам сроки, в которые он уложится, просит изменить процесс работы над проектом и сдвинуть дедлайны. Мы с ним договариваемся когда он все проекты закроет и он укладывается в срок. Ну, +- 1 день. Больше Дима подобной ситуации не допускает и менеджера о неправильной оценке предупреждает заранее

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

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

Программирование не мое. Я хочу уйти

Если человек сам пришел к этому, то это отлично. Зачем заниматься тем, что не приносит кайфа. Иногда это говорят закрытые люди. Отличники с серьезными требованиями к себе. “Я сам справлюсь и дойду до этого”.

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

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

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

Решение проблем — коммуникация

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

Все проблемы джуниора решаются с помощью коммуникации. Больше общайтесь, старайтесь получить обратную связь как можно быстрее по вашему коду, вашему росту и вообще про вас. Обратную связь вам нужно будет фильтровать. Обратная связь — показатель реальности. Чем больше обратной связи — тем лучше и тем быстрее вы вырастите в сеньора.

Учитесь коммуницировать. Развивайтесь и процветайте.

Ранее статья была опубликована тут.