Помогаем выплыть: как ввести новичков в сложный проект



    Всем привет! Меня зовут Михаил Берёзин, я — тимлид в HFLabs. Мы делаем очень сложный enterprise-софт для банков, сотовых операторов, страховых компаний, ритейлеров.

    Полгода назад мы совершили большую ошибку: набрали в команду сразу 8 человек, штат вырос в 2 раза. Раньше никогда не брали так много людей скопом, поэтому забуксовали с онбордингом новичков. Расскажу, как справились с проблемой.

    Тимлиды не успевали вводить разработчиков в команду


    К моменту коллапса ключевые разработчики и тестировщики трудились вместе больше пяти лет, команда устоялась.

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

    Когда пришли сразу несколько новых клиентов, пришлось срочно искать людей. Вместо того чтобы заранее набирать и адаптировать специалистов, мы за полгода увеличили команду в 2 раза. Советую будущему себе никогда так больше не делать.

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

    Я работаю в HFLabs чуть больше года и прекрасно помню ощущения от первого дня. Ты как бы попала на космолет Звездного Флота «Энтерпрайз» безо всякой подготовки. Ничего не понимаешь и не знаешь, офис — лабиринт, коллеги на одно лицо (правда, дружелюбное).

    В конце концов, ты просто не понимаешь, чего от тебя хотят. Вижу таск: «General не заказчик, удалить mmwt general, не собирать билд general». WAT

    Татьяна Бунто, аналитик

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

    Документация и даже видео не помогли


    Когда в HFLabs приходил один человек в пару месяцев, мы думали, что довольно легко адаптируем новых людей в команде. Для этого было целых три, казалось, замечательных инструмента.

    Документация. В нашей confluence лежит много подробной, актуальной документации. Мы вкладываемся в нее, по-настоящему заморачиваемся.

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


    Столько информации в confluence об одном-единственном клиенте HFLabs. У нас их больше сорока

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

    Для полного погружения вот что мне нужно было прокопать:

    • 5 спэйсов в confluence с описанием продуктов;
    • 16 спэйсов с документацией заказчиков;
    • спэйс с описанием внутренних офисных процессов;
    • 6 телеграм-чатов под разные продукты и заказчиков;
    • JIRA, Mercurial, Idea, SOAP UI, cloud и бог знает что еще;
    • дев-стенд для каждого заказчика;
    • 3225 автотестов.

    Голова шла кругом, хотелось свернуться калачиком в углу кабинета и плакать.

    Татьяна Бунто, аналитик
    Записи выступлений аксакалов. Чтобы как-то помочь людям, мы записывали выступления опытных коллег. Они рассказывали о продуктах, клиентах, процессах в компании.

    Со временем ролики обросли текстовыми комментариями и уточнениями. Мы собрали все вместе, разбили по продуктам и выложили в раздел «Обучение» в confluence. Вот так выглядит раздел продукта «Единый клиент».


    Мы взяли ключевые мысли из выступлений и оформили в конспект

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

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

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

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

    Пошаговый квест спас положение


    Чтобы решить проблему, нужно было ускорить и автоматизировать погружение новичков в проект. Для начала мы прикинули, что́ вообще нужно новым людям. Нашли такие потребности:

    • социальная адаптация;
    • понимание внутренних коммуникаций;
    • структурированные знания о продуктах;
    • практика, много практики!

    Мне пришло в голову, что все любят игры, даже взрослые (особенно взрослые!). Было бы классно сделать пошаговый квест. Он и познакомит новичков с компанией, и даст практику с теорией. Сели за сценарий.

    Получился квест из шести этапов:

    1. «Первое знакомство».
    2. «Кому это вообще нужно».
    3. «We Need to Go Deeper».
    4. «Пора приносить пользу проекту!».
    5. «Для самых любознательных».
    6. «Как мы тестируем и общаемся с заказчиками».

    Квест выполняют на 90% автономно, уже через одну-две недели новички получают минимум для первых задач. Дальше человек развивается на реальных тасках.

    Выкладывать полный текст квеста не вижу смысла: очень уж он специфичный, все замкнуто на наши внутренние процессы. Если нужен, напишите комментарий, пришлю.

    Ниже просто кратко расскажу, как у нас все устроено.

    На каждом этапе участник выполняет три вида задач.

    Теоретические. Без них ничего не выйдет, как бы мы ни хотели обратного. Придется читать и смотреть видео.

    Например, теоретическое задание на этапе «Первое знакомство»: «Просмотри три видео из серии «Знакомство с „Единым клиентом“ и прочитай соответствующую статью».

    Задание на третьем этапе: «Посмотри рассказ Егора о стандартизации данных и поиске дублей». Здесь новичок не только изучает продукт, но и с коллегами понемногу знакомится.

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

    Практические. Закрепляем теорию, пока она держится в голове. Для каждого раздела я придумал задачи, похожие на настоящие.

    На этапе «Первое знакомство» задания такие:

    1. «Создай себе в джире задачу «Знакомство с „Единым клиентом“ в проекте CIA. В ней нужно будет фиксировать результаты и ворклоги. Закрывающим поставь Мишу.
    2. Зайди в веб-интерфейс демостенда и посмотри, сколько там контрагентов-физлиц. Подключись к БД демостенда и получи количество контрагентов-физлиц SQL-запросом. Количество совпало? Задачка непроста, нужно подумать и поисследовать таблицу, разобраться в колонках. Не бойся спрашивать.
    3. Создай нового контрагента-физика через SoapUI. Найди его в веб-интерфейсе и посмотри, что все получилось.
    4. Зафиксируй ворклоги, результат и получившиеся запросы в джире».

    В четвертом этапе «Пора приносить пользу проекту!» практика интереснее и сложнее:

    1. «Возьми небольшую задачу из релиза, закрой ее по феншую (без правильного заключительного комментария задачу переоткроют).
    2. Возьми задачу на регресс. Познакомься с особенностями заказчика и проведи регресс за 1,5 часа».

    Коммуникационные. Во время квеста мы знакомим новичков с командой. По крайней мере, с ключевыми людьми, с которыми предстоит плотно работать. Примеры из разных этапов:

    1. «Найди Пашу Абдюшева и задай три вопроса по теоретической части. Зафиксируй комментарием к задаче свои вопросы и ответы Паши».
    2. «Скинь задачу в чат „Тест-ревью“, попроси проверить. Допинай Лену или Олю, чтобы они проверили, все ли ты правильно сделал».
    3. «Найди Костю Степанова и задай 3 любых вопроса по материалу. Также расскажи про особенности данных, которые нашел».

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

    Эффект намного превысил затраты


    Первый вариант квеста мы написали с коллегой-добровольцем за день. Уже на следующий день его начал проходить новый тестировщик (протестировал, да).

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

    Теперь о результатах.
    Раньше Сейчас
    Время погружения в проект Двенадцать недель минимум Две недели
    Время, которое опытные коллеги тратят на обучение До двадцати часов в неделю До десяти часов в течение недели
    Мы очень упростили масштабирование набора. Раньше адаптировали одного человека за три месяца, а теперь справимся и с пятью за месяц.

    В начале этой статьи я сформулировал, что нужно новым людям в компании. Вернемся к этому.

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

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

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

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

    Новичкам понравилось.
    Квест составлен очень хитрым образом:

    1. Нельзя просто как-то почитать, полистать и пойти дальше.
    2. Увидишь продукт и процесс с разных сторон.
    3. Узнаешь тех с кем будешь работать.
    4. Подготовишься к выполнению задач.

    Анастасия Дудник, тестировщик

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

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

    Приходите к нам работать, если нравится сложный enterprise. Сейчас ищем инженера сопровождения (от 80 000 ₽ на руки) и тестировщика (от 90 000 ₽). Тому, кто порекомендует подходящего человека, подарим первую зарплату специалиста после трех месяцев испытательного срока.
    • +20
    • 9,1k
    • 9

    HFLabs

    78,69

    Качество и интеграция клиентских данных

    Поделиться публикацией
    Комментарии 9
      +6
      Ну вот, а по первой картинке подумалось, что сначала все проходят Space Quest V: The Next Mutation…
        +1
        Это было бы прекрасно… :)
        0
        Опять хантеры рекламируют контору )
          –1

          Какая-то странная у вас зарплата. Инженер получает меньше тестера.

            +1
            А если назвать «тестера» «Инженером по тестированию», все встанет на свои места? :)
              –1
              Не станет. Инженер сопровождения это должность уровня Tier 3 support, которая требует нетривиальных знаний и навыков.
              Во-первых, это человек, который умеет общаться с клиентами, разработчиками и руководителями.
              Во-вторых это человек, который знает предметный домен и бизнес-процессы.
              В-третьих, это человек, который знает кодовую базу на уровне всей команды, вместе взятой.
              Эта должность соответствует уровню технического лидера.
              Обычно, таких людей не нанимают со стороны, а выдвигают изнутри. И да, заплата у них раза в полтора выше, чем у тестера.
                +1
                У нас в команде не совсем обычные тестировщики. Они делают и умеют больше, чем «тестеры» в вашем понимании. Оля хорошо описала примерный круг задач. По объему это сопоставимо с тем, о чем говорите вы.
              0
              Просто от инженеров там тоже особых знаний и не требуется. Поставь ось, поставь сервер приложений, настрой по инструкции, почисть место на диске, разверни схемку в БД. Примерно так, я полагаю.
              +1
              Хороший опыт. Благодарю.

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

              Самое читаемое