Еще один способ получать знания за границей — это устроиться на стажировку в профильную компанию. Чем занимаются такие интерны: приносят кофе или получают реальный практический опыт работы? Любят ли за границей российских стажеров и сильно ли мешает языковой барьер? Платят ли за это деньги и есть ли смысл тратить свое время? На эти и другие вопросы «Теории и практики» будут отвечать в новой рубрике каждую неделю. Александр Шалимов проходил стажировку в исследовательском подразделении Microsoft, где пережил «научную перезагрузку», которая позволила ему защитить кандидатскую в МГУ и продолжить работу в американской компании на должности visiting researcher.

Александр Шалимов, 27 лет


Род занятий: исследовательская работа в области информатики.

Место стажировки: Microsoft Research.

Город: Редмонд.

Срок стажировки: три месяца.

Обязанности: проведение научной работы.

Место


В 2010 году я проходил стажировку в Microsoft Research в Редмонде, США. Это исследовательское подразделение было создано 20 лет назад для аккумулирования научных знаний в области IT. Руководство компании Microsoft понимало, что для завоевывания и отстаивания передовых позиций на рынке необходимо смотреть в будущее, опираясь на передовые научные исследования, формировать это будущее самостоятельно, а не ждать, когда где-то придумают что-то новое. Это и стало целью Microsoft Research: думать о том, как использовать последние научные результаты для продвижения вперед продуктов компании Microsoft. Так появилось понятие науки в индустрии, предметом и целью которой являются не абcтрактные исследования, а практические результаты.

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

Microsoft занимает очень большую территорию — около 150 зданий. Почти что каждому продукту компании выделено свое здание. Обедать можно в различных кафе: выбор огромен, от американской и мексиканской кухни до индийской и въетнамской. Много парков, в которых можно отдохнуть и прогуляться в середине рабочего дня. Microsoft имеет свою транспортную сеть: автобусы курсируют между кампусом и ближайшими городами, а такси позволяет быстро перемещаться по территории.

У каждого сотрудника компании есть свой отдельный офис. Стоит отметить, что отличительной особенностью офисов в Microsoft Research (в отличие от головного офиса) является их прозрачность, что должно способствовать общению сотрудников. Чем дольше сотрудник в компании, тем больше у него офис и тем ближе он к окну. На каждом этаже есть своя кухня и небольшая игровая зона. Если сравнивать с другими компаниями, то, например, в компании Amazon все выглядит примерно так же, за исключением отсутствия отдельных офисов — все сотрудники сидят в одном помещении, в котором рабочие места отделены невысокими перегородками. В Google все просто сидят в одном помещении без перегородок, но с огромной зоной отдыха и бесплатной едой на кухне.

Обязанности


Рабочий день стажера проходит примерно так же, как и рабочий день работников компании. Целый день занимаешься своим проектом, обсуждаешь свои идеи и возникшие проблемы со своим начальником и коллегами. В Microsoft Research регулярно проходят интересные научные лекции и доклады, на которые можно (и даже нужно) ходить. Узнаешь много всего интересного и нового. В середине стажировки есть промежуточный отчет, на котором стажер докладывает о том, что сделал и что еще надо сделать.

В конце стажировки — финальная презентация результатов проделанной работы. Желательно подготовить научную статью по результатам исследований.

Я проходил стажировку в группе по архитектурам компьютеров. В моем проекте разрабатывался микропроцессор следующего поколения. Процессор состоит из нескольких простых вычислительных ядер, которые в случае необходимости могут самостоятельно объединяться в логический процессор для получения максимальной производительности при решении задачи. Каждое ядро работает по принципу потоковых машин, где каждая инструкция выполняется немедленно, как только появляются все ее операнды. Это исключает из ядер сложные механизмы по определению зависимости между данными, что в конечном счете ведет к более экономному энергопотреблению. Я занимался компилятором для этого процессора: главным образом, поддержкой SIMD команд. Моя стажировка носила более технический характер. Мне бы хотелось иметь больше исследовательских задач, но в целом, думаю, все прошло успешно.

Как попасть


Для участия в стажировке в ноябре подается заявка. Заявка заключается в регистрации на специальном сайте. Необходимо выбрать область исследований, отправить свое резюме и указать контакты людей, которые могут дать рекомендации о вас. В январе-феврале происходит уже непосредственный отбор стажеров. В это время с вами могут связаться для получения дополнительной информации. Если Microsoft Research заинтересовало направление ваших научных исследований, то в марте вам присылают приглашение на стажировку. После этого начинается долгая процедура с заполнением различных документов, получением визы и других подобных мероприятий.

Если вас не выбрали, то расстраиваться не стоит — это означает лишь, что исследователи по вашей теме не собирались набирать людей, или в данный момент основной упор сделан на другие направления научных исследований. Кстати, хорошо заранее связываться с людьми, работать с которыми было бы интересно вам. Для этого надо зайти на сайт Microsoft Research, прочитать про научные группы, проекты, людей.

Бонусы


Стажировка оплачивается. Частично оплачиваются жилье и транспорт. Есть интересная развлекательная программа. Для стажеров открываются огромные возможности в общении с известными учеными, в получении новых знаний, которые они смогут применить в дальнейшем в своих научных исследованиях.

Также один из бонусов — это знакомства с выдающимися людьми. Например, мой начальник, Аарон Смит, является старшим научным сотрудником в Microsoft Research и профессором в японском университете Kyushi. Он очень интересный и умный человек. Успевает делать огромное количество вещей одновременно. Я постоянно удивляюсь такому умению управлять своим временем. Он участвовал в разработке нескольких промышленных компиляторов, разрабатывал систему управления и систему обработки данных для нескольких низкоорбитальных спутников (были запущены в ноябре 2010 года), руководил разработкой системой электронной коммерации в компании Dell, разрабатывал прошивку для беспроводных адаптеров Sony Playstation 2. По своей диссертационной работе участвовал в разработке экспериментального процессора, который был выпущен IBM и является одним из прародителей разрабатываемого сейчас процессора.

Планы


Стажировка в Microsoft Research помогла мне понять, что такое наука, какая она бывает и зачем нужна, как нужно вести исследования, на что нужно делать упор, какие направления сейчас актуальны в науке. Помогла также понять, каких знаний мне как специалисту не хватает. Произошла своего рода научная перезагрузка.

Возможности остаться в качестве постоянного сотрудника после стажировки в Microsoft Research нет. Главная цель — это налаживание научных контактов между индустрией и академической средой. Кроме того, это и формально невозможно: на стажировку приглашаются аспиранты, а одним из требований для новых сотрудников Microsoft Research является наличие научной степени. Стоит отметить, что есть еще стажировки в Microsoft в качестве программиста. Цель таких стажировок — это поиск новых людей, и, как правило, результатом успешной стажировки является приглашение на работу в Microsoft.

Благодаря стажировке я выделил для себя ряд моментов про наше образование и науку — я прежде всего говорю про сomputer science. С одной стороны, нам дают основы, но с другой стороны, по многим дисциплинам эти знания поверхностны. Предполагается, что мы сможем все это освоить сами, когда это нам понадобится. Да, можем, но на это не всегда хватает времени — знания нужны здесь и сейчас. Другим моментом является нехватка в основных курсах современных практических примеров. Может быть, надо увеличить количество спецкурсов. Это даст возможность студентам самим выбирать предметы для большей специализации по интересующей теме. Например, специалисты по архитектурам в США прослушивают порядка десяти дополнительных спецкурсов: память, кэш, предсказание переходов, функциональные устройства.

После стажировки я вернулся в Москву и через полгода защитил кандидатскую диссертацию. Я занимаюсь анализом поведения программ, а именно выделением редко и часто выполняемого кода. Знания о наиболее активных участках программы могут быть использованы при оптимизации, тестировании и распараллеливании программы.

В диссертационной работе была предложена техника оценки динамических характеристик программы на основе знаний о распределении входных параметров программы и использовании методов математической статистики.

Сейчас я нахожусь в Microsoft Research на позиции Visiting Researcher в той же группе, где проходил стажировку, и продолжаю свои исследования, которые начал, будучи стажером. Продолжительность нахождения на этой позиции — один год. Для получения этой позиции основным требованием является заинтересованность Microsoft Research в проведении совместных научных исследований. Формальными требованиями являются наличие научной степени и нахождение на исследовательской позиции на основном месте работы.

Через полгода я вернусь на свое основное место работы в МГУ, где продолжу исследования, заложенные в своей диссертационной работе. Основные силы, главным образом, будут направлены на применение предложенных методов на практике.

Я считаю, что стажировки в таких компаниях как Microsoft, Google, Facebook, Intel дают возможность получить новые знания, приобрести опыт в проведении научных исследований в интересующем вас научном направлении. Дают возможность общения с интересными людьми другой научной школы. Это, безусловно, полезно.