«Бумага» и «Газпром нефть» запустили спецпроект о новых магистерских программах, лабораториях и курсах, открытых в вузах Петербурга при участии крупных технологических компаний. Читайте, как студенту попасть на стажировку в международную корпорацию, получить грант и начать успешную карьеру в математике, физике или IT.
Как работодатели ищут талантливых студентов, чему можно научиться на курсах «Яндекса» и в команде дата-сайентистов в «Газпром нефти» и можно ли стать успешным программистом после другой специальности?
Для партнерского материала с «Газпром нефтью» «Бумага» поговорила со студентами, начинающими карьеру в IT. Они рассказали, что узнали о профессии во время учебы и как справлялись с высокой нагрузкой.
Игорь Лопатинский
Учащийся 4-го курса бакалавриата Санкт-Петербургского политехнического университета по направлению «Информатика и вычислительная техника», студент «Технополиса» от Mail.ru
— Моя бакалаврская программа меня устраивает. Были, конечно, периферийные предметы вроде истории, экономики и политологии, которые не несут абсолютно никакой пользы, на мой взгляд, на том направлении, где я учусь. От них бы я избавился, если бы составлял программу.
Но мне нравилось из-за преподавателей, которые были связаны непосредственно с программированием. Например, по таким предметам, как алгоритмы и структуры данных, основы программирования, низкоуровневое программирование, разработка под Android. Нам дали очень хорошие знания для того, чтобы дальше разбираться в любом языке программирования. Если бы не эти предметы, то у меня не получилось бы освоиться в «Технополисе».
Первые два курса всё было хорошо, но чем дальше, тем хуже, честно говоря. На третьем курсе абсолютно ничего полезного нет. Есть предметы, косвенно связанные с программированием, но они никак не пригодятся в будущем для работы.
С «Технополисом» я начал сотрудничать тогда же. Наш заведующий кафедрой предложил нам поучаствовать в программе: нужно было пройти тесты и собеседование.
«Технополис» — это вечерние курсы на два года, три лекции в неделю. Они занимают 3–4 часа, и там дают много заданий, которые нужно выполнять дома самостоятельно. Для того чтобы перевестись на следующий семестр в «Технополисе», необходимо набрать определенное количество баллов по каждому предмету. Задания проверяются дистанционно.
В вузе даже самые полезные предметы преподаются с более теоретической точки зрения. Ты вроде как учишься, но по факту не понимаешь, как оно происходит на работе. В «Технополисе» тебя сразу обучают тому, что реально используют. После него гораздо увереннее себя чувствуешь, потому что примерно знаешь, как выглядит реальная работа.
Базы данных в вузе давались в сжатой форме, а в «Технополисе» нам настолько хорошо о них рассказали, что я считаю себя почти специалистом в этой сфере. Люди, которые преподают в «Технополисе», — это просто сотрудники Mail.ru и «Одноклассников», которые приходят к нам после работы.
В «Технополисе» тебя за один семестр как будто пытаются подготовить к работе. Там дают знания, достаточные для того, чтобы ты сразу пошел заниматься реальными проектами.
Мы изучаем один конкретный язык — Java. У нас даже курс называется «Java-разработчик высоконагрузных приложений». Можно сказать, что у меня вся жизнь связана с Java и он мне очень нравится. Он прост для начинающих разработчиков и используется много где.
Предметы в вузе и «Технополисе» совершенно не пересекаются. В вузе мы всё дальше уходим от прикладных вещей, а «Технополис» — это все-таки практика, технологии, которые применяются сейчас.
Ребята, которые учатся со мной, абсолютно разные: от первого курса бакалавриата до второго курса магистратуры. Очень многие сразу же «повылетали» после первого семестра. Были и очень слабые, и сильные, которые непонятно зачем ходят, потому что и так могут работать.
Совмещать учебу и «Технополис» получается спокойно. Конечно, нагрузка повышается, но если есть желание, то можно всё успеть.
Я думаю, я бы мог пойти сейчас работать после обучения в «Технополисе», но сначала хочу доучиться. Думаю, что перед работой нужно набрать побольше знаний.
После университета я бы с радостью пошел работать в Mail.ru или «Одноклассники», если мне представится такая возможность и там найдется место, где я не буду обузой: все-таки там сильные специалисты работают. Если не получится, то попробую устроиться в другую, желательно большую, компанию.
Дмитрий Зенков
Учащийся первого курса магистратуры ИТМО, работает в команде дата-сайентистов «Газпром нефти»
— Я окончил матмех СПбГУ, программу «Прикладная математика и информатика», и в этом году поступил в магистратуру ИТМО. В СПбГУ мне понравилось, что мне дали фундаментальную математическую базу. Однако в процессе учебы выяснилось, что в университете нельзя прикладывать эти фундаментальные знания к какому-то реальному проекту. Поэтому мне показалось, что программа ИТМО «Большие данные и машинное обучение» мне подходит больше, чем программы СПбГУ. Плюс кампус ИТМО находится в городе, а СПбГУ — в Петергофе, что не очень удобно.
Поступить в магистратуру было несложно: я подал документы, сдал экзамен и был зачислен. Программа «Большие данные и машинное обучение» пересекается с моей работой, поэтому я и решил продолжить обучение, выбрав ее.
На последнем курсе бакалавриата меня позвали в команду дата-сайентистов «Газпром нефти». Сейчас мы занимаемся анализом данных и машинным обучением для проекта «Когнитивный геолог». Я откликнулся на вакансию на сайте университета, и меня пригласили пройти тест, а затем два собеседования.
В тесте были разные теоретические и практические вопросы по программированию, математике и, в частности, по машинному обучению. Я прошел тест не так хорошо, как хотелось, но потом заново решил некоторые задачи и отправил работу над ошибками. Ее посмотрел один из членов команды, и мне предложили готовиться к собеседованию, я взял на это три недели. Мне посоветовали несколько книг: в основном по ним я и готовился.
На собеседовании были вопросы только по математике и машинному обучению: они оказались сложными, но я справился, как мне казалось, очень хорошо. Собеседование проводили, как потом выяснилось, два участника моей будущей команды. После него я уже оценивал свои шансы гораздо лучше. В итоге меня взяли, и где-то через полтора месяца я начал работу в проекте. Мне помогло самообразование и знание математики, полученное в университете. Вообще, в первую очередь, дата-сайентист должен хорошо знать математику.
На работе я решаю задачи петрофизики. Когда скважины бурят, с них снимают данные, чтобы определить, возможно ли организовать рентабельную добычу. В данный момент эту информацию интерпретируют эксперты. Я вместе с командой делаю так, чтобы эти данные интерпретировали алгоритмы: мы их обучаем [для этого]. Мне нравится эта работа, потому что мы решаем прикладные задачи и автоматизируем достаточно сложные процессы. Кроме того, эта работа позволяет мне развиваться в своей области — машинном обучении — и узнавать другую — нефтеразведку.
Насколько тяжело мне будет совмещать работу и учебу в магистратуре, я пока не знаю, так как учеба только начинается. Судя по расписанию, иногда работа и занятия пересекаются, но посмотрим, как я буду всё это комбинировать. Есть вечерние курсы, есть в начале дня, а есть в субботу — и сейчас с работой пересекаются только одна или две пары.
Мне нравится то, что я делаю, и, надеюсь, в магистратуре я накоплю некоторые знания и навыки, которые будут полезны в моей деятельности в будущем.
Анастасия Бирилло
Учащаяся второго курса магистратуры СПбГУ по направлению «Математическое обеспечение и администрирование информационных систем», студентка Computer Science Center от «Яндекса» и JetBrains
— Я закончила бакалавриат в СПбГУ по программе, которой сейчас нет, — «Фундаментальная информатика и информационные технологии». В тот момент, когда я поступала в магистратуру, в СПбГУ не было больше ничего, связанного с программированием.
Во время распределения я смогла дополнительно поступить в Computer Science Center — школу дополнительного образования по программированию (основанную на базе «Яндекса» и активно взаимодействующую с JetBrains — прим. «Бумаги»). Те, кто проходят туда, могут выбирать курсы, с помощью которых можно закрыть магистерские предметы. Оценки, которые я получаю там, закрывают почти все курсы на матмехе.
В магистратуре есть много преподавателей, для которых это единственное место работы, — и они занимаются только теоретической и научной деятельностью. Есть преподаватели-практики, но их мало.
В начале обучения к нам пришел куратор из «Яндекса» и назначил собеседования для желающих. Сначала нужно было решить математические задачи, а после пойти на собеседование с кураторами и преподавателями центра — меня взяли.
Здесь можно выбрать направление, по которому ты хочешь учиться: программирование на С++, машинное обучение, программирование на Python, математическая статистика, математический анализ теории вероятности, базы данных, алгоритмы и структуры данных. Я выбрала для себя три направления.
Эта программа идет параллельно с магистратурой, обучение проходит вечером. После окончания магистратуры и Computer Science Center у меня будет два диплома.
В Computer Science Center также есть так называемые практики — это когда ты берешь задачу и занимаешься ей с научными руководителями из «Яндекса», JetBrains или других компаний. Это еще и научная практика: моя магистерская работа будет связана с этим.
Еще там хорошее комьюнити: преподаватели — практикующие специалисты из компаний. У них хорошие кейсы, которые состоят из того, с чем они сталкиваются на работе. И те, кто там учатся, тоже очень сильные ребята. В Computer Science Center не берут студентов, которые не очень шарят в программировании. Были и те, кого отчисляли.
На многие стажировки мы можем попасть благодаря Computer Science Center, это проще, чем если ты учишься только на матмехе. Например, [заявку] на стажировку в «Яндексе» нас отправляли раньше других, чтобы мы попробовали свои силы. Они также устраивают пробные собеседования в «Яндексе» и JetBrains, чтобы можно было потренироваться перед реальным собеседованием.
Но меня не очень интересует индустрия: мне больше нравится научная составляющая. С Computer Science Center есть много возможностей ездить на научные конференции, я поеду на ближайшую в сентябре. Обучаясь строго в университете, всё это довольно сложно получить.
Проект, которым ты занимаешься в качестве практики, может быть чисто продуктовой задачей или исследовательской, где ты придумываешь, например, способы кеширования данных. Я проводила исследование, составляла гипотезы — и по одной из гипотез получились такие данные, что меня приняли на международную научную конференцию.
Я также занимаюсь собственными проектами и преподаю программирование для детей раз в неделю. У меня почти нет выходных. Но почти всем этим я занимаюсь в одном здании, и время на логистику практически не тратится.
В дальнейшем я думаю о научной карьере и исследованиях. Что касается практики, то я хочу разрабатывать только свои проекты.
Валерия Горячева
Окончила магистерскую программу ИТМО и JetBrains «Разработка программного обеспечения»
— До магистратуры я окончила бакалавриат по направлению «Электроника и наноэлектроника» СПбГЭТУ ЛЭТИ. О магистерской программе ИТМО при участии JetBrains я узнала случайно, когда думала, куда поступать после окончания бакалавриата. Я стала искать информацию, отзывы студентов в интернете. Они говорили, что обучение здесь тяжелое и нет свободного времени, но это всё сполна окупается полученными знаниями и опытом. Затем я написала паре выпускников этой программы, чтобы узнать подробности. Они рассказывали про высокое качество образования, хороших преподавателей, интенсивный ритм обучения. Я загорелась.
Поступить было непросто. На сайте выложили список вопросов со ссылками на литературу: я готовилась в авральном режиме и старалась как можно больше изучить, понять и запомнить. Часть тем я знала (матанализ, теорвер), но большинство были для меня новыми, например графы, алгоритмы, языки программирования. Я очень нервничала, когда шла на экзамен и собеседование, и даже не поверила, когда мне ответили, что берут меня, — думала, что собеседование прошло провально, так как IT-шного образования у меня не было, и знаний было немного.
Всё, что мне говорили, оказалось правдой. Программа дает много актуальных и нужных знаний, которые при этом активно применяются на практике, дает очень большой импульс, меняет темп жизни и переворачивает мозги.
Курс алгоритмов был очень тяжелым для меня, но было круто писать контесты. Функциональное программирование оказалось довольно интересным — это был совершенно новый для меня подход к вычислениям и программам. Software Design заставил думать о том, как писать, структурировать и сопровождать код. Курс графических интерфейсов не особо связан с программированием с точки зрения практики, но оказался очень полезным. Он меняет мышление и взгляд на работу, потому что «у всего есть интерфейс».
Моя программа очень сильно отличается от того, как я училась раньше.
Во-первых, благодаря научно-исследовательским работам ты участвуешь в реальных проектах, а по каждому предмету есть практические задания для закрепления материала. Во-вторых, свобода. Например, каждый студент может выбрать ряд дополнительных курсов и при этом свободно посещать курсы других направлений, если хватает времени и сил.
Отношение к обучению здесь совсем иное, к обучающимся тоже. Сюда приходят именно учиться и получать знания, а не просто за корочкой. Здесь также учитывается твое мнение, преподаватели заинтересованы и отзывчивы, отношения между ними и студентами не так формальны, как обычно.
Ритм обучения тоже сильно отличается. Если раньше я успевала совмещать учебу с подработкой и встречаться с близкими, то во время обучения не оставалось времени ни на что — из-за большого объема домашних работ и нового материала. Конечно, это зависит от базы, с которой ты сюда пришел, но даже ребятам-программистам было нелегко.
После летней практики на пятом курсе в компании Simlabs я продолжила писать у них дипломный проект, а после окончания магистратуры начала работать там на полную ставку. Профессия довольно креативная и разнообразная. Мне нравится чувство удовлетворения, когда ты наконец решил какую-то сложную задачу.
Существует очень много направлений в программировании, и все они по-своему интересные. Программирование сейчас повсюду и сильно пересекается с другими областями, в результате чего существует множество междисциплинарных задач.
Для того чтобы быть хорошим программистом, нужно много теории, а также постоянно учиться, дополнять и обновлять свои знания. И применять их на практике, конечно, — либо на основной работе, либо в собственных проектах.
Работа программистом — это еще и работа в команде, общение с людьми, soft skills очень важны. Необходимо общение с коллегами, понимание, обсуждения и обмен идеями, это способно сделать работу продуктивнее.