Проблема
Я читал книги по программированию и исправно получал хорошие оценки по этой дисциплине в институте, но подрабатывал я продавцом-консультантом в спортивном магазине, даже не эникейщиком. И в очередном затишье между потоком клиентов я думал о том, насколько же велика пропасть между моей текущей квалификацией и той, которую хотят от меня работодатели. Я понимал, что между учебными задачами на сортировки массивов и реальными промышленными задачами есть существенная разница. Тогда я определил для себя первую проблему: отсутствие реальных проектов.
… практика – дело особое, ее вместе с книгами не купишь. Иначе эти книги шли бы нарасхват.
Ирвинг Стоун. Жажда жизни
Многие работодатели просят кандидатов показать свой собственный код, рассказать о своих проектах. Как впоследствии оказалось опыт работы над реальными проектами не идёт ни в какое сравнение ни с академическим обучением, ни даже со всевозможными Practical guide. Эта проблема была действительно актуальна.
Тем не менее, люди становятся программистами, а не рождаются, а это означает, что я просто недостаточно вкладываюсь в собственное развитие в отличие от них. Этого я никогда не отрицал; я понимал всю важность взращивания в себе профессионала, но дальше понимания у меня заходило редко. Отсутствие мотивации держало меня там, где я был.
Ещё одним тормозящим меня фактором было то, что мои однокурсники по большей части не испытывали с этим никаких проблем. Кто-то получал работу, будучи программистом-олимпиадником, кто-то спокойно просиживал штаны в MMO-играх, кто-то не вылезал из баров на деньги родителей. Я чувствовал себя одиноко, ведь даже если бы меня вдруг осенило гениальной идей для проекта, не было никого, кто разделил бы мой гипотетический энтузиазм. Именно отсутствие коммьюнити стало толчком к тому, чтобы я начал решать эти проблемы.
Решение
В конце летних каникул я прошёл собеседование на вакансию преподавателя C#. Благодаря этому, я получил исключительно полезные навыки коммуникабельности, что дало мне уверенность в том, что я смогу создать и поддерживать студенческое объединение, в которое я буду собирать всех неравнодушных к программированию и собственной карьере ребят, давать им проекты и контролировать их выполнение. На момент реализации ниша не была занята: единственным сообществом программистов у нас были олимпиадники, чьё ремесло так же не вписывалось в такой желаемый enterprise.
Изначальная модель работы организации была такова: мы «играем по-взрослому». У нас есть менеджер проектов — эту роль я взял на себя, у нас есть команды, по одной на проект, возглавляемые тимлидами — наиболее толковыми ребятами, у нас есть дедлайны и у нас есть Github. Мы не видимся на регулярной основе, а работаем на дому, осуществляя все коммуникации онлайн. Мы иногда проводим обучающие мероприятия, а снова встречаемся когда дедлайны сгорят. Проекты я придумываю из головы (самая первая раздача проектов была ранжирована по сложности, вернее, по моей субъективной оценке оной).
В качестве прототипа я дал название организации: «Лига Разработчиков», которое, за неимением лучших идей, так и осталось с нами. Попросил друга нарисовать логотип.
LD — League of Developers
Запустил рекламную кампанию в ВК, надоел всем знакомым просьбами распространить, но эффект это возымело. Второго сентября после дня открытых дверей у меня было 120 фамилий желающих присоединиться к Лиге, хотя о ней в институте не знал почти никто (для первокурсников это и не важно).
Количество людей так меня шокировало, что оставшийся месяц до первого собрания я по полной напрягал свою фантазию для того, чтобы придумать приемлемое количество проектов.
Просторный конференц-зал, который одолжила нам кафедра инженерной кибернетики, был полностью заполнен, некоторым пришлось стоять или сидеть на полу.
Тогда-то и прозвенел первый звоночек о том, что я что-то делаю не так: я не смог передать свой энтузиазм этим людям, они сидели с каменными лицами всё собрание, никакой инициативы, никаких идей. Эти же лица я видел на немногочисленных лекциях, которые я устраивал.
Немного о мотивации
Одну из поставленных перед собой проблем мне не удалось должным образом решить: я не смог мотивировать людей. Чем больше я этим занимался, тем больше я осознавал, насколько это было важно и тем более безнадёжной казалась ситуация. Студенты уходили, бросали проекты, не успевали в дедлайны, лекции посещались всё реже и реже. Проблема, которую я решил для себя, не решилась автоматически для этих людей. Для студентов, которые едва вышли со школьного двора, мотивация важна, ребята не имеют твёрдой позиции касательно собственной профессии и их места в жизни вообще и помощь в обретении этого на первых порах даже важнее, чем их непосредственное обучение. Потерпевший на этом поприще неудачу, пусть и совсем несерьёзную, молодой человек получает очень неприятную дозу сомнений в собственных действиях и силах. Я ничего подобного не делал и мне не приходилось с таким сталкиваться. Я недостаточно продумал этот аспект нашей деятельности.
Результат
«Плюс-минус-плюс» — так на тренингах учат преподавателей докладывать о результате.
Плюс
Эта идея удачна и обладает высоким потенциалом. Лига Разработчиков заняла пустующую нишу в НИТУ «МИСиС» и способна решить все заявленные в начале проблемы. Институт полон всевозможных проектов, программисты в дефиците, ПО для института покупается на стороне за огромные деньги, хотя качество этого ПО бывает порой не лучше, чем могли бы предложить студенты, многие процессы в институте могут и должны быть автоматизированы. С этой идеей мы выиграли конкурс студенческих проектов, получили финансирование, которое потратили на ремонт и оборудование нашего собственного помещения. В будущем организация может сотрудничать с работодателями и хедхантерами, может привлекать кадры для обучения со стороны.
Минус
Подкачало исполнение. Модель работы оказалась провальной почти по всем параметрам. Я был менеджером для пятнадцати проектов (!), и не мог уделять должного внимания каждому, не говоря уж о том, что я не менеджер по призванию. В результате до конца довёл от силы пять проектов. Ребята не умели работать в команде, а я бросил их прямо в пекло промышленного программирования, в котором им не было комфортно. Дедлайны были нещадно попраны курсовыми и сессиями, развитие затухло потому, что ребята не чувствовали себя достаточно вовлечёнными в процесс: учебные искусственные проекты интересовали людей не больше, чем сортировки массивов. Мы встречались два раза за семестр и лишь к моменту, когда активных разработчиков осталось меньше десятка, а проектов — три, я понял, что именно с такими числами я и могу работать.
Плюс
Мы сделаем это лучше. У нас есть опыт, у нас есть ошибки, на которых мы научились, у нас есть просторное оборудованное помещение и есть конкретный план на следующий сезон:
-Мы проведём отбор, отсеяв всех праздношатающихся, сделав процесс вступления в Лигу вызовом, а членство в ней — привилегией.
-Мы проведём предварительное обучение, не нагружая ребят с самого первого дня, дав им освоиться и научиться плавать. Это обучение также послужит дополнительным фильтром и дополнительным вызовом.
-Мы не будем придумывать проекты. Судя по всему, институту всегда найдётся, о чём нас попросить, и этого должно с лихвой хватать, чтобы удовлетворить потребности в обучении для небольшого числа студентов.
-Мы будем встречаться каждую неделю, а то и чаще — так часто, как понадобится для того, чтобы преуспеть.
-Мы выслушаем вашу критику, советы и предложения.
Заключение
Спустя пару месяцев после начала этой деятельности я узнал, что мне не первому пришла в голову подобная мысль — схожая по направлению организация есть в ВШЭ, от её руководителя я узнал много полезного. Я думаю, создание подобных организаций это отличное подспорье для личного развития и развития индустрии в целом, и если вы хотите перенять наш опыт в своём учебном заведении я буду рад поделиться всем, что знаю.
Спасибо за внимание.
Комментарии (18)
staskin1
10.07.2015 12:18Виталий, здравствуйте,
Рекомендую взять в партнеры какую-либо софтверную компанию, а лучше несколько. Решается сразу ряд вопросов: преподаватели или просто докладчики, показывающие реальные задачи, учебно-производственная практика для слушателей, дальнейшее трудоустройство и др. Мы для целей профессионального ИТ-допобразования даже создали совместное с вузом предприятие Учебный центр Урансофт.Sovent Автор
10.07.2015 12:29Вопросы сотрудничества с внешними компаниями решаются на уровне руководства университета, мы же, по сути, занимаемся самодеятельностью. Мы не под патронажем вуза, нами заинтересовались некоторые отдельные подразделения, но реальных привилегий в вузе у нас нет.
Иными словами, наладить партнёрство с какой-либо компанией нам не под силу, хотя это действительно решило бы массу проблем и продвинуло бы всё мероприятие на более высокий уровень. В первую очередь нам стоит заручиться реальной поддержкой нашего собственного вуза, и мы работаем в этом направлении.staskin1
10.07.2015 14:42+1Виталий, вы сами устанавливаете себе ограничения :) Мы сами очень долго были с нулевым статусом, «чужими» и коммерсами в институте, хотя наши сотрудники были действующими преподавателями. Никто вас не заставляет вас говорить от имени МИСИС или другого вуза, говорите от себя или лучше от вашей Лиги. Увидите, что ИТ-компании не интересует ваш статус внутри вуза, а то, что вы им можете предложить. В вузе поговорите сперва с заведующим кафедрой, заручитесь его поддержкой. Признание на уровне вуза, если оно конечно вам надо, придет потом.
zharikovpro
10.07.2015 14:55> Одну из поставленных перед собой проблем мне не удалось должным образом решить: я не смог мотивировать людей. Чем больше я этим занимался, тем больше я осознавал, насколько это было важно и тем более безнадёжной казалась ситуация
Поделюсь личным мнением и опытом, основанным на обучении в течение нескольких лет уже тысяч людей на разного рода курсах, в т.ч. по программированию. И соглашусь с тем, что мотивация — действительно краеугольный камень эффективного обучения. И тут нужно учесть, что мотивация бывает внутренняя и внешняя. Фишка в том, что пытаясь «усилить мотивацию» мы как правило работает со внешней мотивацией. Например, показываем зарплату специалиста и спрашиваем — хочешь также?
Но останутся в профессии, будут успешно обучаться и станут классными спецами, довольными не только зарплатой но и в целом качеством жизни те люди, которые изначально внутренне мотивированны. Которым в кайф сам процесс как программирования так и обучения ему. Таким людям, жадным до знаний, до учебы, до результатов, нужно только дать среду для обучения — и их за уши не оттащишь от учебы.
Вот представьте, что есть два вида спорта (пример грубый, я не садовод и не ботаник). Какой-нибудь кипарис в первую очередь растет вверх, а корни ему нужны для питания. А морковка растет в первую очередь вниз и ботва ей нужна для питания. И вот садовник, которому нужны кипарисы, но у которого на грядках уже морковка, начинает работать на мотивацией морковки расти вверх. Тянет ее. Ставит мотивационные плакаты. Но толку нет, это противоестественно для морковки! Лучше бы нашел семена кипарисов и занимался бы ими — результат был бы лучше.
Посмотрите к примеру, как ищут спортсменов. Никто же не гоняется за будущими звездами спорта в попыткам замотивировать их. Наоборот, начиная с самых простых секций идет фильтрация, конкуренция, отбор, соревнования. Если ты подходишь — докажи, что ты подходишь лучше других. Превзойди их. В итоге «попробовать» что-то приходят сотни людей, остается группа из например десятка. А из этого десятка получается например потом одна звезда (утрированно). И вот такая система очевидно работает.
В общем, можно и мне кажется нужно в плане мотивации заходить с другого конца. Не пытаться усиливать внешнюю мотивацию, а отфильтровывать на входе людей с сильной внутренней мотивацией. Во-первых внешне пытаться мотивировать человека — занятие крайне трудное, сложное и неблагодарное. Во-вторых переборщив с внешней мотивацией (на результат) можно даже навредить человеку, навязав ему слабо подходящий ему вид деятельности.zharikovpro
10.07.2015 14:58Итого, полностью поддерживаю два вывода из статьи:
+ Мы проведём отбор, отсеяв всех праздношатающихся, сделав процесс вступления в Лигу вызовом, а членство в ней — привилегией.
+ Мы проведём предварительное обучение, не нагружая ребят с самого первого дня, дав им освоиться и научиться плавать. Это обучение также послужит дополнительным фильтром и дополнительным вызовом
Sovent Автор
10.07.2015 15:40+1Да, я решил не упоминать это в статье, но я действительно столкнулся с проблемой отсутствия внутреннего запала у ребят. Первоначально я ожидал, что он присутствует у всех, поступивших на айтишные специальности, иначе зачем бы они там были, но оказалось, что я был слишком оптимистичен на этот счёт. В итоге, достаточно времени я потратил впустую на незаинтересованных, и не уделил должного внимания тем, кому нужно было. Первый вывод сделан по большей части из-за этого.
zharikovpro
10.07.2015 15:48> иначе зачем бы они там были
а) родители сказали
б) программист это прибыльно и местами даже модно
в) хотят быть круче Цукерберга с Брином
г) ну надо же куда-то идти за дипломом
д) ну надо же чем-то заменить армию
И таких учеников будет как мне кажется (сообщество может подтвердить) подавляющее большинство во всех вузах на всех профессиях в России. Ближе к выпуску это становится особенно очевидно.
dyadyaSerezha
10.07.2015 15:38+1Это все замечательно, особенно если будут внешние по отношению к Лиге проекты, за которые будут платить деньги. Но по-моему, все это должно естественным путем делаться на уровне кафедр. Если кафедра выпускает программистов, то должна иметь какие-то деловые отношения с фирмами/заказчиками, для которых сотрудники кафедры коммерчески делают программы/модули/библиотеки. И тогда к этой работе естественно привлекать своих студентов, которые хотят поучаствовать в реальном деле да еще и получить за это деньги.
То есть, Лига это результат прямой халатности кафедр, мне кажется. Хотя, может, и будет хорошим дополнением.staskin1
10.07.2015 16:56+2Но по-моему, все это должно естественным путем делаться на уровне кафедр. Если кафедра выпускает программистов, то должна иметь какие-то деловые отношения с фирмами/заказчиками, для которых сотрудники кафедры коммерчески делают программы/модули/библиотеки.
Так, но не так.
Сотрудники кафедр не считают, что они что-то должны давать студентам кроме обучения и науки. Самое интересное, что многие технические вузы программирование вообще не считают наукой, такая ситуация и у нас в электротехническом. Коммерция — это вообще для кафедры космос. К сожалению все, кто в себе почувствовал коммерческую жилку рано или поздно уходит с кафедры, устав бороться с ветряными мельницами. Такие активисты как автор статьи и его коллеги как раз могут стать драйверами роста в вузах, мы в свое время через все это прошли и можем утверждать, что схема рабочая. Не надо смущаться звать ИТ-компании, состыковывать с кафедрами и руководством вуза, а самим при этом выступать коммуникационной и организационной шиной.
Sergunka
11.07.2015 04:27+2Статья отличная — дам почитать моему перцу он собирается в этом году открывать клуб в школе по программированию на Андроиде. ИМХО на мой взгляд Вам надо было пригласить не только перцев мечтающих стать программистами, а так же журналисток, маркетологов и дизайнров… ну и вообще просто хороших людей кто может легко поделится идеями и вообще пока то да се сварганить, чего нибудь на кухне для стимуляции мозговой деятельности.
Потом не стесняйтесь на серьезных программистких форумах публиковать свой гитхабовский код и попросить, чтоб народ сделал ревью кода.
А так тренд правильный. Удачи.
P.S. Если у вас сложилась хорошая команда, то попробуйте поучаствовать международных конкурсах типа Гугл Джем за одно и команду собъете серьезную если начнет получаться.
feligz
11.07.2015 11:42А ведь речь идет о «Национальный исследовательский технологический университет» — не знал, что так все плохо в вузах сейчас.
А какие проекты делали рассказали бы. Какие технологии, что за продукт.
По поводу мотивации, хорошая мотивация это хорошая команда с успешным проектом/продуктом. Мотивация трудоустройством это скушно, ну да можно пойти в корпорацию АBC и делать там CRM систему для энтерпрайза, но за хорошие деньги. Я знаю много примеров, когда люди на такой работе выгорали и уходили потом в небольшие компании или делали свой продукт, компанию. Вам можно так же поступить, пообщайтесь с небольшими студиями, с интересными проектами, командами, наверняка они будут готовы взять людей, как интернов на испытательный срок. Делайте интересные продукты, заходите с ними в акслераторы, инкубаторы, выступайте с ними на питчах, уж в Москве очень много проходит мероприятий такого рода. С хорошей командой, продуктом можно съездить и в Европу, да даже на тот же TechCrunch.
andyudol
13.07.2015 22:48-Мы проведём предварительное обучение, не нагружая ребят с самого первого дня, дав им освоиться и научиться плавать. Это обучение также послужит дополнительным фильтром и дополнительным вызовом.
Поздравляю, вы открыли дидактические принципы последовательности и доступности. Хороший повод познакомиться с этим разделом педагогики поближе.
easimonenko
16.07.2015 13:09+2Когда-то подобный пост был на codeforces.com. Всё то же: изначально организатору кажется, что студенты на обычных занятиях недополучают и им нужно больше интересных задач (проектов). Он организует кружок (клуб), сначала приходит много народа, организатор с большим трудом справляется или не справляется, со временем количество участников становится всё меньше, и под конец остаётся 1,5 студента. После чего автор поста вопрошает, что я делаю не так, хочу, чтобы народа было больше, ведь это так круто, интересно и полезно. Я лично сам всё это прошёл от кружка по спортивному программированию до студенческого конструкторского бюро и ему ответил, скажу и Вам, что изначальная цель сделать движение массовым обречена. Так же обречена как и попытка сделать любое движение массовым. Не тратьте силы и время зря. С вами будут только те, кому вы нравитесь и кому с вами интересно, но таких единицы, не надейтесь понравиться всем и всех заинтересовать.
И ещё важное возражение против подобных инициатив: эта деятельность осуществляется в свободное от учёбы время, которое включает в себя по 3-6 часов аудиторных занятий, работу над курсовыми проектами, домашними заданиями и тому подобное. И после этого Вы хотите, чтобы студенты ещё и над Вашими проектами успевали поработать? Да не просто поработать, а качественно и в срок выполнить их? Это не реально, даже за деньги.
natnal
Виталий, спасибо за статью! Очень интересен взгляд на такую деятельность со стороны студентов. У нас есть мысль организовать нечто подобное в своей компании. Нам нужны люди — разработчики и менеджеры проектов, и есть ощущение, что можно как-то поработать в этом плане со студентами: для них это опыт участия в реальных проектах (плюс обучение по мере необходимости), для нас бесплатная (или хотя бы недорогая) рабочая сила с перспективой трудоустройства к нам после окончания учебы. Как думаете, получится?
Sovent Автор
Однажды у нас были курсы по PHP, с которых постепенно сливались люди и к завершению там осталось лишь четверо студентов. Их всех трудоустроили и на следующий набор там было гораздо больше людей, чем на первый и уходили в течение семестра намного реже.
Для студентов мотивация в виде гарантии трудоустройства за их усердный труд — это лучшее, что вы им можно предложить (институт такого предложить не может). Так что да, у вас получится, обязательно беритесь за это.
zharikovpro
Проблема в «гарантии» трудойстройства. Плавали, знаем :) Если есть «гарантия», то человек думает — эй, зачем учиться, зачем напрягаться? Психологически он как бы уже получил результат. И не учится нормально. А потом удивляется — как же так, не получается получить «гарантированное» трудоустройство.
С другой стороны, тот кто изначально готов усердно и много учиться (ему нравится процесс) — да, гарантированно научится и трудоустроится. Но в этом случае и нет нужды пиарить гарантированное трудоустройство. Внутренне мотивированный ученик и без него будет учиться. Ниже оставил большой коммент на тему мотивации.
Другое дело, что действительно практическое обучение под руководством наставников способствует более быстрому и выгодному трудоустройству. Но это работает для тех людей, кто трудоустроился бы и без этого обучения. Вот такой парадокс :)