Автоматизация стажировки в Mad Devs

Anatoliy Fedorenko
Jul 16, 2019 · 5 min read
Бот для прохождения стажировки.
Бот для прохождения стажировки.

В Mad Devs была программа стажировки на несколько направлений. Основная коммуникация со стажёрами шла через каналы телеграмма. 5 направлений = 5 различных каналов, за которыми надо следить. Плюс в каждом направлении от 5 до 20 стажёров, за которыми тоже надо следить. Вся эта волокита отнимает очень много времени и было принято решение написать бота, который поможет это время экономить. Так и появился Mad Internship Bot. Сейчас он мультиязычный (английский, русский) и может быть настроен под ваш канал

Ниже перечислены основные проблемы, которые уже успешно решаются ботом:

Введение в процессы и правила стажировки

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

Бот объясняет стажеру как проходит стажировка.
Бот объясняет стажеру как проходит стажировка.

Написание и пропуски стендапов

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

Бот указывает на ошибку в стендапе.
Бот указывает на ошибку в стендапе.

Бот напоминает тем, кто не сдал стендап за 10 минут до дедлайна. Чтобы если стажёр отвлекся или забыл, напомнить ему.

Бот напоминает про стендап.
Бот напоминает про стендап.

Проверка стендапа в личку

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

Бот указывает на ошибку.
Бот указывает на ошибку.

Некачественные стендапы

До определенного времени стажёры не понимают зачем нужны стендапы и какую пользу они несут им самим. Поэтому стендапы в несколько строчек с ничего неговорящими утверждениями “Вчера работал, сегодня продолжу работать, проблем нет” не редкость среди начинающих. Бот анализирует стендапы и отправляет стажеру свои реккомендации. Будь то добавление в стендап больше вопросов, тег менторов, чтобы те обратили на них внимание, или же раскрытие своих проблем или того, что мешает прогрессу. С этим набором рекоммендаций стендапы стали гораздо информативнее и полезнее как менторам так и самим стажёрам.

Бот дает рекомендации по написанию стендапа.
Бот дает рекомендации по написанию стендапа.

Проверка Pull Requests

Стажёры регулярно шлют Pull Requests и зачастую само оформление пул реквеста нуждается в доработке, не говоря уже о тех случаях когда проверять необходимо 500+ строчек кода.

Бот указывает на ошибку в коде.
Бот указывает на ошибку в коде.

На эти случаи бот даёт реккомендации и стажёры, ориентируясь на реккомендации бота поправляют оформление и размеры PR что способствует быстрой проверке PRов и исключает лишнюю трату времени менторов.

Бот передает задачу.
Бот передает задачу.

Учёт временных зон

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

Веб интерфейс для БД

Раньше чтобы что-либо поменять в базе бота (по разным причинам) требовалось заходить в базу через сервер. Это отнимало много времени, портило настроение и иногда данные невозможно было легко поправить. Всё изменилось с добавлением веб интерфейса для БД, через который можно быстро изменить какие-либо данные не заходя при этом на сервер.

Веб интерфейс для БД.
Веб интерфейс для БД.

Что же дальше?

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

Разработка бота ведется в открытом репозитории, соотвественно, каждый может присоединиться и внести свой вклад в развитие бота, который может стать помощником для любой стажировки, будь то IT или сфера дизайна или же производственная практика. Всё что нужно это отдельный телеграм канал и программа стажировки, в которую входит написание стендапов

В ближайших планах на фичи бота:

  1. Научить бота собирать ворклоги стажёров
  2. Добавить функционал напоминалок для менторов о выданных стажёрам заданиях
  3. Сделать анализ стендапов более углубленным и разнообразить советы, которые бот даёт для улучшения стендапов
  4. Внедрить штрафные задания для тех, кто хочет исправить свои пропуски дедлайнов по стендапам
  5. Начислять баллы за прохождение стажировки (качественные стендапы, пул реквесты и т.д.) и выводить эти баллы на доску лидеров

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

Mad Devs Blog — Custom Software Development Company

Engineering your growth. Mad Devs is the team behind large scalable projects, globally.

Anatoliy Fedorenko

Written by

Golang Backend Developer at Mad Devs / Bot Father

Mad Devs Blog — Custom Software Development Company

Mad Devs is a Cambridge-headquartered IT company developing enterprise-level software solutions for finance, transportation & logistics, security, edtech, and advertising industries. For more information about us, please browse our website: https://maddevs.io/

Anatoliy Fedorenko

Written by

Golang Backend Developer at Mad Devs / Bot Father

Mad Devs Blog — Custom Software Development Company

Mad Devs is a Cambridge-headquartered IT company developing enterprise-level software solutions for finance, transportation & logistics, security, edtech, and advertising industries. For more information about us, please browse our website: https://maddevs.io/

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store