«Это был “курс выживания” в программной инженерии»
Считается, что молодой специалист должен выбирать: или академическая карьера, или бизнес-трек. Выпускнику факультета компьютерных наук, лауреату стипендии имени Ильи Сегаловича Михаилу Фомичеву удается и то и другое. О работе в университете и в Яндексе он рассказал порталу Вышки.
Как преподавать курс, который сам недавно окончил
В IT любая научная задача идет от проблемы, поставленной бизнесом. Информационные технологии развиваются с большой скоростью, и у меня есть опыт разработки в компании, что в преподавании прикладного предмета большой плюс. Мне интересно показать студентам, как именно та или иная технология используется на практике, что именно сейчас востребовано — дать дополнительную мотивацию к изучению предмета. Нельзя сказать, что совмещать легко, приходится жертвовать и сном, и свободным временем.
Нет рецепта, как все успевать. Есть тайм-менеджмент и желание сделать многое
Я веду семинары на курсе «Конструирование программного обеспечения» три года, начинал учебным ассистентом. Когда сейчас студент говорит мне, что мы можем сделать этот курс во много раз лучше, я всегда рад увидеть его учебным ассистентом в следующем году, хотя понимаю, этот опыт его немного разочарует. Он постарается привнести новое — это хорошо и даже необходимо. Но в какой-то момент приходит понимание: в рамках курса все, на самом деле, логично. Да, его можно улучшить, но полностью поменять нельзя. Я сам через это прошел.
Каждый год этот курс адаптируется с учетом предыдущего опыта: мы смотрим, какие ошибки были допущены в построении программы, донесении материала, какие темы вызвали сложность у студентов. Если приходится объяснять одно и то же несколько раз, это звоночек мне — я что-то делаю не так. Не студент не понял, а я неправильно объяснил.
Я считаю себя справедливым преподавателем. Хотя, когда дело доходит до выставления накопительных оценок или проверки контрольных, очень сложно, видя минимальную ошибку в программе, снижать оценку. Особенно если очевидно, что студент способен на большее.
Не для школы, а для жизни
Я поступал на отделение программной инженерии факультета бизнес-информатики. Подавал документы как призер олимпиад МГТУ им Н.Э. Баумана и МФТИ. Выбирал между ВШЭ и Бауманкой. Это было сложное решение. Выбрал Вышку — здесь не давали черчение и физкультуру, при этом делался упор на изучение английского. Немаловажную роль сыграло и то, что многие из моих одноклассников по лицею информационных технологий № 1537 поступили в Высшую школу экономики.
Когда я окончил второй курс, произошла реорганизация, и программную инженерию стали относить к факультету компьютерных наук. При этом большая часть преподавателей остались — а факультет определяют в большей степени они, а не название.
Первая научная статья у меня была в соавторстве с Михаилом Васильевичем Ульяновым. Мы написали ее по результатам моей курсовой работы по задаче коммивояжера на втором курсе. Я знаю много людей, имевших уже на 2-3 курсе публикацию в научном журнале — для факультета компьютерных наук это довольно обыденная история.
После второго курса я проходил практику в компании «ФОРС — Центр разработки» и даже успел там немного поработать. Затем почти два года я работал в «КИТ Консалтинг». Среди прочего наша команда по заказу Инновационного центра Олимпийского комитета России занималась разработкой прототипа SportJet By Sukhoi. Мы создавали прототип самолета для спортсменов, который бы измерял различные медицинские показатели во время перелета из одной страны в другую. В команде я был основным разработчиком программного обеспечения и принимал участие в демонстрации самолета в Рио-де-Жанейро на Олимпийских играх в 2016 году. Это незабываемый опыт. Запомнилась стрессовая ситуация: нужно было презентовать нашу разработку князю Монако, и требовалось в короткие сроки настроить систему.
Как понять, что команда не команда, а продукт не продукт
Потом были два года в Альфа-банке, в том числе в качестве team lead. В банковском секторе есть ряд сложных структурных и архитектурных моментов. Плюс прибавляется еще больше работы в команде.
Именно тогда мне посчастливилось поработать в scrum-командах, потому что в Альфа-банке все проекты строились на scrum и agile-методах управления. И основной цели, а именно увеличения пользы для клиента, мы достигали.
IT — это не какие-то технические аспекты. Мы должны стремиться сделать пользователя счастливым человеком. Это главное
Ни для кого не секрет, что сотрудники в IT-сфере стоят недешево. Один из вариантов финансирования — непосредственно оказание услуг через разработку продукта. Чтобы клиент мог пользоваться нашей разработкой, продукт должен ему нравиться, тогда поднимается конверсия и другие показатели. Мы живем в капиталистических условиях, приходится считаться.
Сейчас я работаю в Яндексе, занимаюсь разработкой продукта Яндекс.Афиша, это билетный агрегатор. Получить билеты от партнеров и продать их пользователям — не самая простая задача, в ней участвует большое количество систем. Нужно понять, куда чего передать и что делать, если одна из систем откажется. Все это непростые бизнес-сценарии, их не так-то просто разрабатывать. Тем не менее, наш сервис в лидерах отрасли.
Как стать крутым разработчиком
Если проанализировать все предметы, которые у меня были за время обучения — каждый внес лепту в тот багаж, что я использую каждый день. Но, в конечном счете, все сводится именно к умению учиться. Не всегда легко разобраться в той или иной технологии, они постоянно меняются.
Самый полезный навык, который дал мне факультет компьютерных наук — умение сесть и изучить то, что мне нужно
Сформулировать, чего недостаточно для решения проблемы и что ты хочешь изучить, понять свои сильные и слабые стороны и какие инструменты можно использовать — всему меня научила Вышка. Это был «курс выживания» в программной инженерии, между первым и четвертым годом обучения.
Не нужно бояться. Нужно понимать цели и, исходя из них, выбирать вуз. Главное — уверенность в себе, мотивация. Программный инженер — человек, способный выполнить все этапы разработки продукта, включая его утилизацию. Если абитуриент понимает, почему ему интересна такая работа, надо идти на нашу программу.
Конфуций говорил, если выбрать работу по душе, не придется работать ни одного дня. Я люблю работу, которой занимаюсь в Яндексе, и люблю работу в ВШЭ. В этом смысле могу сказать, что я счастливый человек.
Ульянов Михаил Васильевич
Профессор департамента программной инженерии
Фомичев Михаил Игоревич
Преподаватель департамента программной инженерии