Зачем делать PhD по Computer Science

PhD Илья Разенштейн, недавно защитивший диссертацию по Computer Science в Массачусетском технологическом институте (MIT), рассказывает, зачем нужно делать PhD.

Начнем с простого вопроса: зачем, собственно, вообще нужно делать PhD по Computer Science в Европе или США?

Возможных ответов много, попробую кратко перечислить по пунктам.

Денежный вопрос. Начну издалека. Многие знакомые, особенно работающие во всяких «гуглах», смотрят на меня сочувственно и спрашивают: «Как ты можешь жить на такие копейки?» Стипендия у аспирантов действительно не очень большая по местным меркам. Скажем, мне платили где-то $ 30 000 в год. Но:

  1. С учетом стипендии жены и наших летних стажировок наш годовой доход нередко превышает средний дохода семьи в Массачусетсе, соответственно можно жить достаточно комфортно и особенно скрупулезно деньги не считать.
  2. Довольно странно выбирать свою деятельность в самые продуктивные годы жизни (22−27 лет), основываясь на размере зарплаты. Конечно, обстоятельства бывают разные, но в этом возрасте я бы крайне рекомендовал не гнаться за деньгами, если на то нет особой необходимости. Запас энергии у человека весьма ограничен, а «срубить капусты» с хорошим математическим/программистским образованием не очень сложно и после 30 лет.

Комментарий Анатолия Шалыто: По такому случаю у меня есть программистская шутка собственного сочинения: «Как известно, жадный алгоритм является оптимальным на матроидах. Поэтому предлагаю делать анализ крови или генома на матроидность, и в случае ее наличия спокойно хвататься за предлагаемые большие деньги, остальные же могут и подождать». У Ильи и его жены такого нет.

3. Если вы получили PhD и устроились на постоянную исследовательскую работу (tenure-track professor of Computer Science в университете или researcher в лаборатории), то в США это означает очень и очень достойную зарплату, если место хоть сколько-нибудь приличное. Так что на длинной дистанции пропасть непросто.

Диссертация как права. Если вы собираетесь делать научную карьеру, то степень PhD — это что-то вроде автомобильных прав.

Источник: www.eecs.mit.edu
Источник: www.eecs.mit.edu
  1. Во-первых, это чисто формальное требование при наборе на любые исследовательские позиции (постдок, tenure-track профессор, исследователь в лаборатории).
  2. Во-вторых, с помощью научного руководителя вы получаете опыт научной работы и изучаете «правила игры» научного сообщества.
  3. Наконец, вы просто заводите связи в научном мире, без которых никакая научная карьера невозможна.

При этом реалии таковы, что со степенью из России куда-то пробиться при прочих равных гораздо сложнее, поэтому стоит ехать делать PhD в США или Европу.

Комментарий Анатолия Шалыто: Есть, конечно, компромисс. Например, в Университете ИТМО и в ряде других вузов реализуются программы двойной аспирантуры. Аспирант может учиться в России, но работать в зарубежной лаборатории и участвовать в международном исследовании. В таком случае под каждого аспиранта строится своя программа в рамках отношений «родной вуз» — «зарубежный вуз» — «аспирант». И на выходе молодой ученый получает степень, которая одинаково котируется как в России, так и за рубежом. Несколько таких программ реализуются и на кафедре компьютерных технологий.

Удовольствие от придумывания нового. Самый кайф в исследованиях — придумать что-то новое с ощущением того, что до вас этого никто не делал, что вы — первопроходец. Такие моменты лично у меня случаются довольно редко, но каждый из них я хорошо помню, и эмоции — совершенно непередаваемые. Конечно, почти любой новый результат — это капля в море науки, но, по-моему, это совершенно неважно, а важен сам факт расширения границ наших знаний. Это как решать и решить трудную олимпиадную задачу, но которую составляет не другой человек, а Бог или мироздание (кому как нравится).

Сам процесс. Есть много приятного и в самом процессе размышления над задачей, который может растянуться на годы. Можно сравнить получение интересного результата со спонтанным увлекательным путешествием, когда в начале пути не имеешь никакого понятия о том, где окажешься в конце. Надо признать, что не всегда все проходит гладко: часто заходишь в тупик или начинаешь испытывать уныние после месяцев битья головой об стену, но это тоже часть опыта.

Коммьюнити. Научное сообщество состоит по большей части из умных людей, которых довольно слабо интересуют деньги, «карьера», марка вашего автомобиля и тому подобное, что здорово. С другой стороны, занятия наукой предполагают много знакомств с новыми людьми: это гораздо более «социальная» деятельность, чем та же работа программистом.

Эксперт «номер один». В идеале, написав и защитив диссертацию, вы становитесь экспертом «номер один» в какой-то узкой теме, но это нестрашно, так как основная задача научного сообщества — быть распределенной, постоянно расширяющейся базой данных, в которой хранятся знания. Таким образом, пусть даже для начала «зная все ни о чем», вы становитесь полноценным узлом в этой сети. В частности, у вас обычно появляется некоторая известность в сообществе: вас знают как эксперта в теме X, написавшем такую-то и такую-то статью. Кроме вашей узкой темы, вы получите хорошее представление о «переднем крае» Computer Science в целом, что, по-моему, очень полезно.

Право собственности. Ваши научные результаты и статьи принадлежат только вам, а не вашему работодателю. В частности, нет никаких NDA, которые тормозят прогресс. Более того, нетривиальная часть времени исследователя уходит на то, чтобы рассказывать про свои новые результаты другим людям.

Восприятие нового. Если вы серьезно занимаетесь наукой, то всегда приходится изучать что-то новое, а это отличная гимнастика для мозга. Кроме того, эмпирически замечено, что исследователи гораздо более подвержены любопытству, чем «нормальные» люди. На мой взгляд, это очень привлекательное качество.

Свобода. В работе исследователя, и особенно во время аспирантуры, у вас очень много свободы. Вы (с помощью научного руководителя) сами выбираете задачу, сами придумываете к ней подходы, сами пишете статью и т. д. То есть вы — самостоятельная боевая единица, а не солдат в огромной армии с десятью уровнями командования над вами. На чисто бытовом уровне в аспирантуре свободы еще больше: никто вас не будет заставлять приходить в офис с утра, можно поехать в другой город или другую страну в любое время и т. д.

Сам себе менеджер. За свободу из предыдущего пункта, ясное дело, приходится платить. За время аспирантуры вам придется научиться жонглировать своим временем и научиться не проваливать большое количество малореалистичных дедлайнов. Как говорил великий советский математик И. М. Гельфанд: «Хорошо, когда у человека больше обязанностей, чем физических возможностей и времени, тогда он занимается тем, что ему действительно интересно».

Навыки коммуникации. В аспирантуре вам придется, во-первых, преподавать, ведя семинары и иногда лекции у студентов или других аспирантов, и, во-вторых, делать доклады про ваши результаты. Все это довольно неплохо развивает то, что называется communication and presentation skills.

Жизнь за рубежом. Если вы делаете PhD не в России, то (внезапно!) вам придется прожить несколько лет в другой стране, погрузившись в местную студенческую культуру. Это крайне полезно, даже если в долгосрочной перспективе вы хотите жить в России. В детали вдаваться не буду, скажу лишь, что образы других стран, создаваемые российскими СМИ, скажем мягко, не очень соответствуют действительности.

Путешествия. Как я уже писал выше, в аспирантуре и, более глобально, будучи исследователем, вам придется много путешествовать: на конференции, воркшопы, с визитами в другие университеты или лаборатории. У этого есть и очевидные минусы, но все же это отличный способ побывать во многих странах.

Отличные пути к отступлению. Даже если в какой-то момент аспирантуры вы поймете, что наука — это не ваше, то это не беда. Во-первых, после двух лет аспирантуры можно уйти, получив степень магистра. Во-вторых, встроиться в индустрию с PhD по Computer Science довольно легко: с одной стороны, все вышеперечисленные навыки никуда не денутся, а с другой — если в аспирантуре вы занимались чем-то не сильно далеким от жизни, обычно можно найти место в индустрии, где ваша экспертиза пригодится.

Безусловно, большая часть из перечисленного применима не только к Computer Science.

Дополнение

Написав текст выше, я показал его Илье Корнакову — моему другу и сокоманднику по команде МГУ в ACM ICPC, который сейчас работает в Google, в Цюрихе. Илья напомнил про несколько преимуществ индустрии. Привожу их ниже, снабдив своими комментариями.

Больше «real-world impact’а». «В индустрии ваш продукт при удачном раскладе будут использовать миллионы пользователей, а в академии вы пишете статьи для десятка человек в лучшем случае».

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

Меньше политики. «В индустрии шансов, что вас оценят по заслугам, больше, а в академии все зависит от веяний моды и влиятельности вашего научного руководителя».

Это, увы, действительно так, но тут стоит понимать, что каждый хороший исследователь — в своем роде уникум. Поэтому, когда приходится распределять ограниченные ресурсы (позиции в университетах, гранты и т. д.), неизбежно приходится сравнивать яблоки с апельсинами, и все нередко упирается в личные предпочтения людей, которые ответственны за это самое распределение.

Потеря нескольких продуктивных лет. «Если после получения PhD вы собираетесь пойти в индустрию, то аспирантура — это потеря нескольких продуктивных лет жизни».

На это могу ответить, что доля людей, которые получают PhD по Computer Science в приличных местах и идут в индустрию на позиции, которые не требуют наличия степени, довольно мала. Для них индустрия — это скорее запасной вариант, если с наукой не сложилось. Но если вы сразу после выпуска из университета твердо решили для себя, что работа в Гугле — это ваша мечта, то идти делать PhD, конечно, не надо.

Комментарий Анатолия Шалыто: Безусловно, IT-гигантов и науку нельзя в полной мере рассматривать как антагонистов. И у Google, и у Microsoft есть крупные отделы исследований, где занимаются и наукой.

Илья Разенштайн на ACM ICPC
Илья Разенштайн на ACM ICPC

Об авторе: Илья Разенштейн — PhD по Computer Science из MIT, защитил диссертацию «High-Dimensional Similarity Search and Sketching: Algorithms and Hardness», постдок в Колумбийском университете. До MIT окончил мехмат МГУ. За пять лет обучения в России съездил на две стажировки в Microsoft Research и проработал два года в Яндексе. Обладатель двух золотых медалей на IOI в 2006 и 2007 годах, золотой медалист ACM ICPC (2010 г.).

PhD Массачусетского технологического института, постдок в Колумбийском университете

Персоны
  • Анатолий Шалыто

    Профессор факультета информационных технологий и программирования Университета ИТМО