2. Кто я
• Системный администратор 7 лет
• Python-программист 5 лет
• Go-программист 3 года
• Тимлид – 3 года
3. О чем доклад
• Лучший опыт – практический опыт
• Релевантный и понятный фидбэк важен
• Создайте условия для обучения
• Лучше день потерять, потом за 5 минут долететь
• Кнут и пряник работают
5. Ситуация с кадрами в КР
• Большая конкуренция с рынками РФ, РК, РБ
• Весь движняк в Бишкеке
• Около 5-7 профильных ВУЗ-ов в Бишкеке
• Нужные скиллы даются только в двух университетах
• Около 6 месяцев выпускнику въехать в происходящее
6. Культура компании
• Плюшки: чай, кофе, обеды
• Возможно поехать на конференцию
• Инвертированное управление
• Прозрачные процессы и возможность менять процесс разработки
• Много интересных задач
• Развивайся!
7. Как я докатился до такой жизни
• Хочу управлять
• Команда из 6 человек
• Много задач, амбициозные планы
• Денег на новых людей нет
9. Что предлагаем мы
• Те же курсы, только это работа
• Курс молодого программиста
• За еду
• Принявший наши процессы разработки
• Экономия на курсах
10. Что предлагают курсы
• 10000 рублей в месяц
• Не гарантированное трудоустройство
• Обучение 6-12 месяцев
• Трудоустройство через стажировку
11. Как выращивать?
• Берем студентов
• Грузим реальными, но учебными задачами
• Давим сроками
• Даем фидбэк и помогаем справиться с депрессиями
• Смотрим, что получится
12. Экономика
• Кормим обедами (~100$)
• Компенсируем проезд (1000р) (минимальная зп порядка 900р)
• Итого: 6000р
• Примерный срок обучения: полгода
14. Какие проблемы у стажировки
• Не платим денег
• Проблемы с родителями
• Подвешенное состояние у стажеров
15. Почему не платим денег?
• Знаний нет
• Пользы не приносят
• Другие разработчики тратят на них время
• Одни убытки и никакой пользы
• Так еще их кормить надо :D
16. Что говорят родители
• Иди в бухгалтеры. Там деньги есть сразу и главбух за год
• Уходи, раз не тянешь
17. Родительское собрание
• Говорим о скудном высшем образовании
• Знаний практических нет
• Мы его обучаем
• Нет, он не тупой, он еще не все изучил
• Я понесу ответственность за вред сыну
• Я не использую вашего сына, я ращу из него специалиста
21. Чему я научился?
• Процесс нужно делать более прозрачным
• Стажеру нужно знать, когда это кончится
• Метод «кнут и его отсутствие» в целом сработал
• Обратная связь важна
• Нужно чувствовать человека
22. Итоги
• 3 стажера -> 3 миддла сегодня у нас в штате
• 20 стажеров
• 5 прошли
• 2 миддла сегодня у нас в штате
23. Проблемы всех стажеров
• Не умеют коммуницировать
• Не умеют просить обратную связь
• Нет фундамента
• Всякие тараканы в голове
24. Перерыв и время подумать
• Мы отделились в отдельную компанию
• Выросла команда (джуны и миддлы)
• Было время точить скиллы в управлении
• Читаем книги по управлению и психологии
25. Книги, сделавшие меня лучше
• Дэниел Голдман «Эмоциональный интеллект»
• Роберт Чалдини «Психология влияния»
• Карен Прайор «Не рычите на собаку!»
• Сильвия Лекен «Сила интровертов»
• Малкольм Гладуэл «Гении и аутсайдеры»
26. Было
• Берем студентов
• Грузим реальными, но учебными задачами
• Давим сроками
• Даем фидбэк и помогаем справиться с депрессиями
• Смотрим, что получится
27. Стало
• Задачи только учебные, с полезными практическими навыками
• Рекомендуемая литература к прочтению
• Тесты, CI/CD, Docker, софт-скиллы
• Чем больше фидбэка, тем лучше
• Предсказуемое время для сессий с ментором
• Лекции о важности процессов (документация, тесты)
• Личный ментор через N месяцев
• Гибкие условия
29. Удаленный формат
• Встречи раз в неделю для фидбэка
• Проверка, сможет ли человек работать удаленно
• Нужно ли ему это
• Оставляем человека наедине с собой и смотрим, что получится
• Можно отсеять тех, кому не нужно
• Каждый будний день отчет на почту (что изучил, смотрел, делал)
• Даем фидбэк по почте, корректируем курс
• Три раза не отправил отчет – мы прощаемся
30. Чего хочет стажер?
• А мое ли это?
• Рост
• Менторство (лучше, когда по расписанию)
• Своевременный фидбэк
• Понятный срок выхода из стажировки
33. Быстрый фидбэк
• Решает задачу – мержим
• Даем фидбэк о именовании и структуре кода-> доработка ->
мерж
• Проверяем docstrings + linter ->доработка -> мерж
• Проверяем тесты -> доработка -> мерж
• Настраиваем CI
• Зеленый билд+тесты+тихий линтер+чистый код
34. Плюсы
• Есть нужные хардскиллы
• Процесс обучения проходит быстрее
• Времени тратится меньше
• Позитив и жизнерадостное поведение
• Нет нужных софт-скиллов
37. Как научить коммуницировать?
• Предсказуемый менторинг (каждый день с 10 до 11 утра)
• Делим на команды
• Прививаем культуру компании внутри команды
• Даем разные задачи, где важно коммуницировать между собой
• Даем обратную связь
38. Заставляем работать рака и щуку
• Собираем двоих вместе
• Устраиваем диалог
• Все должны вылить все дерьмо внутри себя друг на друга
• Даем советы со стороны
• Учим идти на компромиссы
40. Как научить писать тесты?
• Делаем внутренний проект для команды без тестов
• Запускаем в продакшн
• Все падает
• Чиним
• Ломается
• Гнев пользователей
• С тестами такой фигни бы не было!
41. Возмести нанесенный тобой ущерб
• Говорим, какой ущерб был нанесен
• Выслушиваем, как человек будет его возмещать
• Ставим свои условия
• Наблюдаем до первой ошибки
• Смотрим результат
• Повторяем
52. Плюсы человека
• В целом хорошо с коммуникацией
• Нет проблем с концентрацией и дисциплиной
• Хорошо растет по хард скиллам
• Выработка может быть лучше
57. Как научить писать документацию?
• Даем стажеру любой проект
• Забираем его
• Даем другой проект
• Отдаем первый проект другому человеку
• ???
• Злость или потраченное время
• Была бы дока, такой фигни бы не было!
58. Закрепление всех результатов
• Подключаем в реальный проект
• Каждому стажеру свой ментор
• Проверяем усвоенный опыт
• Закрепляем
• Берем в штат
59. Выводы
• Создай условия для урока
• Стажеру нужно знать ваш план
• Процессы должны быть прозрачны
• Позитив и негатив работают вместе
• Предсказуемые окна для стажера могут быть полезны
• Давать нужно релевантный и понятный фидбэк
• Постоянно повышаем сложность
• Подавай пример сам