Google Summer of Code: возможности для студентов
В этой статье хочу написать один из путей получения хорошего опыта и плюс пункт в резюме для студентов.
Немного превью
Год назад поступил в КНУ на факультет информационных технологий. Ещё задолго до этого начал учить Java и планировал найти работу. Можно догадаться, что найти работу на JavaSE сейчас невозможно, потому что век десктопных приложений далеко в прошлом. Понял, что нужно учить JavaEE, но эта сфера очень обширная и без практики вряд ли получится много что выучить, запомнить. Начал искать стажировки по Java Web, но столкнулся с тем, что по известным причинам на стажировки берут студентов только старших курсов, коим я не являлся. Оставалось только скучно протирать штаны в универе и ждать старших курсов. Но нет, это совсем не вариант.
Google Summer of Code 2016
Моим выходом на первом курсе стало участие в проекте Google Summer of Code. Этот проект создан с целью развития опенсорса. Примерный процесс таков: опенсорсные компании подают заявки на принятие их проектов, комиссия выбирает проекты, потом объявляет список проектов, доступных в этом году. У каждого проекта есть список идей, которые они хотели бы, чтобы студент реализовал в рамках проекта. Студенты шарят по списку проектов, выбирают интересный для себя проект, составляют свой план решения этой проблемы и подают заявку. Потом менторы проекта выбирают того студента, чье решение кажется им наиболее успешным и начинается работа над проектом.
Плюсы GSoC
Для студентов этот проект — очень хорошая возможность начать свою карьеру в роли разработчика. Итак, из плюсов:
— Большое количество проектов. Есть возможность выбирать между проектами, ведь каждый из них требует разные навыки и умения. Очень большой шанс выбрать то, что тебе подходит.
— Опыт. Это именно то, что очень нужно и чего так не хватает студентам. Опыт работы с языком программирования в реальном проекте, опыт работы в команде
— Работа с документацией. Для того, чтобы составить пропозал (предложение решения какой-то задачи) и успешно это выполнить, нужно порыться в документации, классах проекта и хорошенько разобраться в том, как что работает. Иногда это очень сложно, иногда забирает много времени, но без этого никак.
— Английский. Очень трудно выучить английский язык без практики. GSoC — как раз то место, где можно учить английский на практике. Постоянный мейлинг и встречи по скайпу очень этому способствуют.
— Реферал в Google на любой пост. Для студентов, которые успешно закончили проект, Google гарантирует рассмотрение вашей заявки в течении
— Оплата. 5500$ — не деньги для Google, но в Украине это приличная сумма для 4 месяцев работы. Обычно многие студенты летом пытаются заработать денег, и часто это забирает много времени. Стипендия помогает вам полностью сосредоточиться на проекте и на программировании.
— Работа из любого места. Кто-то может подумать, что летом лучше отдохнуть и куда-то съездить, а в проекте нету отпуска. Но по сути, ты не привязан к офису. Работать можно из любого места из любой страны, главное быть на связи с менторами.
А что если я не смогу?
Этим вопросом задался я, когда начал знакомиться со списком компаний. Может быть, моего английского будет недостаточно, или технических знаний, или я не смогу разобраться в проекте или в каких-то технологиях. Не бойтесь принимать такие вызовы. Вы во всем разберетесь и со всем справитесь, нужно просто немного времени и старания. Кроме того, у каждого студента есть менторы, которые всегда знают больше и готовы помогать.
Мой проект
Я выбрал проект от команды по расширению Java Path Finder. Java Path Finder — это проект от Nasa и по сути является средством для проверки моделей программ, написанных на Java (Model checking tool). У JPF есть множество расширений, которые созданы с определенной целью. Я работал над jpf-nhandler — это средство для делегирования нативных методов. Не хочу вдаваться во все подробности, так как это займет много текста и не очень обязательно. Кому интересно, тот погуглит.
Целью моего проекта было написание кэш-слоя для этого расширения. Это было основной задачей, но по ходу продвижения довелось выполнить ещё дополнительную работу, реализовать дополнительные фичи, иногда фиксить старые ошибки и так далее.
Технологии, с которыми я познакомился или которые узнал больше: Model checking, Ant, Mercurial, OAT Hash, JUnit.
Как результат, удалось успешно выполнить проект, получив при этом много опыта, получить хороший отзыв от менторов, приглашение на участие в следующем году по этому же проекту, реферал в Google, стипендия в 5500$.
Цель статьи — призвать подобных мне студентов, которые ищут любые возможности получить опыт и устроиться на работу, не опускать рук, но использовать любые шансы. Когда я искал возможности и лазил по хабру, ДОУ и т.д в прошлом году, почему-то не находил ничего про GSoC — узнал от своего друга, так что решил написать здесь, вдруг кому-то поможет)
29 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів