Когда речь заходит о начале профессиональной карьеры для Java-программиста, часто все представляется в мрачном свете. Новичкам может показаться, что пробиться на рынок — это невероятно тяжелая задача. Сколько бы вы ни просматривали актуальные вакансии, на любую позицию требуются люди с опытом, причем иногда складывается впечатление, что даже от джуниор Java-кодера работодатели ожидают как минимум нескольких лет опыта работы, не говоря уже о порой сверхъестественных объемах теоретических знаний. Java-джуниор в поиске работы. Как прокачать скиллы и получить практический опыт - 1Но как получить этот необходимый для реального трудоустройства опыт, если кодеров без опыта брать никто не хочет? Замкнутый круг? Нет, просто одно из типичных для начала карьеры затруднений, которое не так уж сложно преодолеть. В этом материале мы собрали несколько безотказных способов решить проблему недостатка практического опыта.

1. Независимые проекты

Начнем с более простых и, в значительной степени, очевидных советов. Один из лучших способов получить практический опыт в Java или любом другом языке программирования — это работа над независимыми и любительскими проектами. Например, можно присоединиться к открытому проекту на Github. Незачем искать сложные или те, для реализации которых нужен оригинальный подход и уникальные знания. Все, что требуется от Java разработчика с минимумом или вообще без опыта — это чтобы он предоставлял возможности для практики: чем больше, тем лучше. С улучшением базовых навыков можно переходить к более и более сложным проектам. Хотя в описаниях вакансий среди требований часто фигурирует опыт работы с языком от двух-трех лет, это не единственный критерий. Да, компании ищут людей, способных работать со своим и чужим кодом, знанием инструментов. Но работодатели часто обращают внимание и на так называемые “мягкие навыки” (soft skills). Это, в первую очередь, здравый смысл, работа с людьми и коммуникации, эмоциональный интеллект. Для всего этого нужен опыт работы над реальными проектами с настоящими проблемами и такими же неиллюзорными дедлайнами, вместе с другими кодерами и прочими специалистами. Иногда наличие soft skills, обучаемость и желание прогрессировать компенсируют в глазах нанимателя отсутствие специальных технических знаний и не слишком богатую теоретическую базу. Более того, даже если от соискателя требуется знание определенной технологии, которой Java-разработчики без опыта, как правило, не владеют, наличие в резюме нескольких проектов, описание опыта работы над ними и уроков, полученных в процессе, даст неплохие шансы на повышенный интерес со стороны работодателей.

2. Личные проекты

Этот совет вполне может пригодиться не только новичкам в Java, но и довольно опытным профессионалам. Под “личными” проектами имеются в виду те, которыми Java кодер занимается в качестве хобби, для развития своих профессиональных навыков, из интереса и просто для развлечения, а не с целью заработать. Многие работодатели при изучении резюме кодеров обращают внимание именно на наличие у них собственных “pet projects.” Почему? Если они есть, это говорит о том, что человек действительно любит свою работу и стремится к профессиональному росту не на словах, а на деле. Java-джуниор в поиске работы. Как прокачать скиллы и получить практический опыт - 2Вот что об этом говорит Орен Аини (Oren Eini), глава компании Hibernating Rhinos Ltd, которая разрабатывает программные решения в области инфраструктуры баз данных: “Когда мы ищем нового разработчика в нашу команду, одним из определяющих факторов для нас является страсть и интерес к работе. Мы обнаружили, что люди, которым действительно важно и интересно то, что они делают, как правило, помимо чисто рабочих задач занимаются и собственными проектами. Иными словами, у них есть домашние проекты и проектики. Это может быть личный сайт, участие в стартапе друга или просто какой-нибудь код, написанный с целью лучше изучить некую технологию. Когда же я вижу, что у соискателя совсем нет сторонних проектов или они остались в далеком прошлом, для нас это плохой знак.” Лучше и не скажешь.

3. Фриланс — безграничное поле для “прокачки” и набора опыта

Сразу отметим, что начинающему программисту очень сложно пробиться на фриланс-площадках, но попробовать можно. Переход к работе в качестве фрилансера может быть отличным промежуточным этапом на пути от совсем зеленого Java девелопера к поднабравшему опыта и “нагулявшему” скиллов уверенному Java джуниору. Казалось бы, между фрилансом и работой фулл-тайм Java разработчиком разница невелика. Но на самом деле на фрилансе можно найти намного больше перспективных возможностей для малоопытного Java джуниора. Все потому, что фрилансеров частенько нанимают для разовой или непродолжительной работы над какими-нибудь проектами. Например, им доверяют задачи, объем которых слишком мал для того, чтобы искать для них полноценного сотрудника. В английском языке для описания таких микропроектов есть термин “gigs” — “леваки”. Либо же проект сам по себе является экспериментальным, или для него требуются слишком специализированные навыки. Как бы то ни было, при найме фрилансеров работодатели бывают менее требовательны и осторожны, так как они несут значительно меньше финансовых рисков. Соответственно, и шансы получить первую оплачиваемую работу именно на фрилансе у Java джуниора возрастают. Фрилансеров часто нанимают представители малого бизнеса, которым требуется помощь программиста в решении относительно несложных проблем. Или предприниматели, работающие над какой-нибудь инновационной идеей с ограниченным бюджетом. Или даже сотрудники крупных ИТ компаний, в свободное время развивающие собственные экспериментальные проекты или концепты. Словом, вариантов масса, но в большинстве случаев это будет небольшая временная работа с четко сформулированными целями. А это — то, что доктор прописал для Java-джуниора без опыта, которому нужно “прокачать” свое резюме. Java-джуниор в поиске работы. Как прокачать скиллы и получить практический опыт - 3

4. Гуртом и батьку бить легче. Разработка в составе группы

Если индивидуальная работа над проектами, будь то pet projects или задачи для фрилансеров, по каким-то причинам “не идет,” можно попробовать другой вариант — разработку в составе команды девелоперов примерно одного уровня. Совместная работа и решение проблем не только помогают быстрее учиться и прогрессировать, но и решают проблему с мотивацией, которая остро стоит для многих начинающих разработчиков, особенно когда они работают дома. Java-джуниор в поиске работы. Как прокачать скиллы и получить практический опыт - 4Кстати, на форуме JavaRush периодически появляются темы, где кто-то собирает именно такие команды. Там же можно найти и небольшие оплачиваемые проекты для одного разработчика. Такие, например, как этот.

5. Стажировка JavaRush

JavaRush помогает своим студентам получить первую работу не только словом (то бишь советами), но и делом, предлагая собственную программу стажировки, во время которой можно поработать над настоящим проектом, изучить новые технологии и сразу же “обкатать” практические навыки по их применению. Стажировка JavaRush — это три месяца полноценной работы над серьезным проектом вкупе с получением дополнительных теоретических знаний. Набор на стажировку проводится четыре раза в год. Анонсы публикуются за несколько недель до нового набора на сайте и на страницах JavaRush в соцсетях. Впрочем, не стажировкой единой. Основной курс JavaRush тоже включает не только маленькие задания и задачки, но и полноценные проекты, выполнение которых приносит немало опыта. В частности, еще будучи студентом JavaRush, можно написать полноценную игру, эмулятор работы банкомата или свой собственный архиватор файлов. Как вы видите, решить проблему недостатка практического опыта для Java разработчика можно, было бы желание. Именно желание учиться и развиваться, неподдельный интерес к профессии — это то, что хотят видеть наниматели, изучая резюме малоопытного специалиста. В описаниях вакансий для этого еще используют популярное клише “горящие глаза.” Вот таким он и должен быть, будущий Java джуниор: с пожаром в глазах и холодной решимостью овладеть всеми тонкостями Java в сердце. По крайней мере, как-то так это видят работодатели.

6. Что еще почитать на эту тему: