Чему я научился во время стажировок — история студента

Cтудент университета Ватерлоо делится впечатлениями, полученным опытом из стажировок в разных компаниях, в особенности теми вещами, которые удивили его или пошли вразрез с привычными представлениями.





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

Halogen Software

Первую работу я получил в компании, занимающейся разработкой enterprise-приложений на Java для рекрутерских агентств. В то время я был очень вдохновлен тем, что нашел работу, хотя сейчас многие из моих друзей и коллег начинают плеваться, едва услышав название этого места. В Ватерлоо популярен мем „Cali or bust“ (что примерно означает «найди работу в Калифорнии или умри» - прим. перев.). Студенты отчаянно стараются устроиться на престижную работу в Калифорнии и очень расстраиваются, если им приходится осесть на какой-нибудь скучной и бесперспективной должности.

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

В Halogen я понял, что даже те компании, которые отвечают всем стереотипам о скучной работе (Java, B2B, CRUD, не в Калифорнии) может быть хорошим местом, способным приносить удовольствие. Только потому, что ты не работаешь в самой горячей компании Калифорнии, не значит, что твоя работа убога.

The Eclipse Foundation

Моим вторым пристанищем стала неоплачиваемая стажировка по кооперативной программе, где я проводил вторую половину для после учебы, работая над исправлением багов в Eclipse IDE, отключенной от баг-трекера.

Что я узнал, так это то, что инструменты очень важны. Дело не в том, что стек Java, который я использовал, позволил мне выполнять работу быстрее, а в том, что он позволил мне вообще что-то делать. При отсутствии опыта я смог погрузиться в проект с миллионами строк кода и 11-летними бородатыми багами, и все благодаря грамотному устройству инструментария Java и Eclipse.

Интересной особенностью Eclipse является то, что практически любая функциональность в нем реализована в виде плагинов. То есть вместо того, чтобы тратить целые часы на компиляцию всего Eclipse, можно работать с конкретным плагином. На сегодняшний день это самый масштабный проект, над которым мне довелось работать.

Почти все недостатки Java были скомпенсированы инструментами, которые сочетаются с ним лучше, чем с большинством других языков программирования (за исключением, может быть, C#).

Shopify

Я работал в Shopify три раза: дважды в течение летних каникул и один раз — в качестве первой практики по кооперативной программе. Таким образом, я имел возможность очень многому у них научиться, но уроки в большинстве своем разбросаны во времени и по тематике. Тем не менее, я позволю себе объединить их.

Прозрачное и вовлеченное в разработку руководство — божественно

Исполнительный директор Shopify Tobi Lütke просто потрясающий. Если посмотреть его профиль на GitHub, видно, что он старается оставаться в курсе новейших технологий и веяний. Я, стажер, был просто в восторге, сидя за одним столом с исполнительным директором и вместе с ним разбирая по винтикам парсер шаблонов Liquid. Помню как он, глядя на мою работу, говорил: «Этот мальчишка входит во вкус!».

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

Хорошие менеджеры многое меняют

До последней моей стажировки в Shopify мне попадались хорошие команды, руководители и менеджеры. Я понимал, что их роль важна, но не чувствовал, чтобы они действительно оказывали на мою работу какое-либо ощутимое влияние. Звучит так, будто за этим последует рассказ о плохом тимлиде, но я действительно изменил свои взгляды, когда встретил потрясающего менеджера.

Он был глубоко вовлечен в процесс, компетентен, обладал чувством юмора, был неизменно позитивен и стал верным соратником мне и всему нашему коллективу. Несмотря на то, что он также был разработчиком, большую часть времени он посвящал именно руководству: направлял, распределял задачи, расставлял приоритеты, решал проблемы и помогал нам.

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

Если все остальное устроено правильно, задача не так важна

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

Когда я работал в Shopify третий раз, команда была отличная, менеджер был отличным, культура была отличной, отличными были офис, инструменты, язык, еда, ориентированность на качество и технические решения. И меня совершенно не волновало, что я всего лишь редизайнил какую-то форму.

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

Лаборатория HCI университета Ватерлоо

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

Дальнейшее понимание крутости проекта

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

Тому было две причины. Во-первых, интересность проекта и интересность работы над ним далеко не всегда коррелируют. Разработка крутой системы компьютерного зрения включала в себя часы отладки и рефакторинга. Даже когда я редезайнил веб-форму, я иногда задумчиво откидывался в кресле и размышлял об архитектурных проблемах и о том, как простым и надежным способом спроектировать систему.

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

Интересность работы имеет для меня большое значение при поиске места, но оно более не перечеркивает других факторов, как это было раньше.

Jane Street

Следующую свою стажировку я прошел в Jane Street, Лондон, Великобритания. Я трудился над инструментами разработки и рендерингом огромных таблиц.

Собеседование

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

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

Такой процесс собеседования кандидата отличается от всех других, с какими я имел дело.

Заключение

С того времени, как я впервые устроился на работу, мое представление об эффективном труде в хорошей компании претерпело ряд кардинальных изменений. С поступления в Ватерлоо я обещал себе не повторяться в выборе стажировок, дабы максимизировать разнообразие специальностей, мест и компаний.

Впереди меня ждут еще три стажировки прежде, чем я выпущусь, включая практику в Google в Сан Франциско этим летом. После выпуска я оглянусь на весть свой прошлый опыт и буду иметь хорошее представление о том, куда хочу податься дальше. Вполне вероятно, что я вернусь в понравившуюся мне компанию, но я также с легкостью могу, опираясь на полученные знания, пойти и по новому пути.

Другие статьи по теме

Как не провалить дистанционное техническое собеседование

Летняя стажировка: 5 проектов для резюме

Комментарии

ВАКАНСИИ

Добавить вакансию
Разработчик C++
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ