Слушать аудиоверсию статьи

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

Среди самых востребованных языков – Java. Вместе с Григорием Кислиным, создателем образовательной онлайн-платформы Java Online Projects, разбираемся, зачем вообще нужен язык Java, как долго ему учиться и как искать первую работу.

Где применяется язык Java

«Изначально язык программирования Java появился в ответ на сложности и проблемы С++. Если сравнивать с его “прародителем”, Java – простой в использовании объектно-ориентированный язык. На нем можно быстро и относительно легко писать надежные приложения для любых платформ: от Windows и Mac до микропроцессоров и Android.

Область применения языка Java очень широка – это большие корпоративные приложения, финансовые услуги, телекоммуникация, CRM, микросервисы, интернет-магазины, распределенное хранение и обработка данных. Подавляющее большинство приложений для банков и страховых компаний написано на Java. В Сбербанке, ВТБ, Тинькофф, Альфа Банке, Дойче-Банке, Альфа Страховании работают огромные отделы разработчиков, специализирующихся именно на этом языке.

На Java пишут библиотеки и фреймворки в любых прикладных областях, в том числе и для нейросетей, хотя в этой области популярнее Python».

Стоит ли сейчас учить Java или рынок уже перенасыщен? 

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

Если вы знаете современный Java стек, имеете в портфолио собственные проекты, у вас есть опыт работы в Enterprise-проекте (пусть и некоммерческом), найти работу будет несложно. Enterprise-проект подразумевает создание приложения под определенные запросы бизнеса.

Сколько нужно учиться с нуля, чтобы стать хорошим разработчиком

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

Перед тем, как купить курс, я советую новичкам самим почитать, посмотреть, “поиграться” с Java и понять, нравится или нет. В интернете есть много бесплатных вводных курсов. Я прошел такой курс на Интуите еще в 2005 году, с тех пор возможностей стало намного больше. Например, на JavaRush первые занятия бесплатные – можно пробовать. У нас, в Java Online Projects, первые занятия тоже открытые.

Но по одним материалам научиться программировать невозможно. Необходима практика, причем не решение маленьких разрозненных задач, а написание полноценного большого Java-проекта. И нужна проверка заданий (ревью кода) и выявление в нем всех ошибок, то есть участие опытного ментора».

Где учиться 

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

Skillbox – создатели курса обещают всего за 4 месяца вытянуть новичков до уровня Junior. На выходе студенты смогут самостоятельно написать небольшой калькулятор, интернет-магазин или простой аналог приложения Instagram.

Интуит – онлайн-университет информационных технологий. Дизайн из 2003 года, зато здесь очень много бесплатных курсов для разработчиков разного уровня. По окончании обучения выпускники получают дипломы и сертификаты. Вариантов обучения много: и база для начинающих, и профессиональная переподготовка, и углубленное обучение. Неплохой курс, например, есть от Mail.ru Group. 

JavaRush – один из самых популярных и уважаемых в русскоязычном профессиональном пространстве онлайн-курсов по обучению Java. Обучение построено в формате игры: выполняете интересные квесты, переходите с уровня на уровень, а заодно и учитесь. Основной массив курса – это практические занятия. Еще один плюс – крупное сообщество JavaRush, к которому всегда можно обратиться с вопросом.

Java Online Projects – обучают Java c 2014 года. Профессиональное обучение от новичков до уровня Middle и выше. По окончании курса выдают электронные сертификаты и государственные Дипломы о проф.переподготовке. Одни из самых низких цен на рынке обучения. В обучение входит стажировка с работой над реальным Enterprise проектом на востребованном Java стеке.

Жесткие навыки

Минимальный набор хард скиллов, с которыми можно устроиться на работу: 

  • Основы Java: синтаксис, принципы ООП, многопоточность.
  • Знание и опыт работы с семейством фреймворков Spring (Dependency Injection, MVC, Security) и реализаций Java Persistence API (например Hibernate). 
  • Знание паттернов проектирования и опыта их применения . Для начала достаточно нескольких – например, Шаблонный метод и Стратегия. Почитать теорию по паттернам можно здесь: refactoring.guru
  • Базовые знания SQL/ORM. Ознакомиться можно здесь: SQLZOO.

Максимально подробно о навыках, которые необходимы начинающим Java-разработчикам, можно почитать в докладе Яндекса.

Гибкие навыки

  • Умение работать в команде
  • Английский язык

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

Еще нужен английский. С ним проще находить ответы на свои вопросы, решать какие-то технические проблемы: все-таки на английском в разы больше полезной информации можно найти. Плюс с английским можно выйти на международные проекты – там и заработок выше».

Обучение пройдено: где и как искать вакансии Java-разработчика

Искать работу начинающие разработчики могут на популярных рекрутинговых платформах, в сообществах на Facebook и в каналах в Telegram. 

Рекрутинговые платформы: 

Telegram-каналы: 

Сообщества на Facebook: 

Еще работу можно искать на LinkedIn и через Facebook – публикуете пост и просите друзей его расшарить. А если проходили где-то обучение, оставайтесь на связи с группой. 

«Я согласен с Java-чемпионом Яковом Фaйном: в своем видео “Как стать профессиональным Java-разработчиком” он не советует устраиваться на работу как Junior. Рекомендую получить опыт работы в реальном Enterprise проекте. После этого останется правильно оформить резюме и портфолио, а потом – подробно рассказать о своем опыте участия в проекте на техническом собеседовании».

Прохождение технического собеседования 

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

Есть стандартные специфические вопросы – например, уровни изоляции транзакций или аббревиатура ACID, которые, вероятнее всего, никогда не пригодятся в работе. Но на интервью их часто спрашивают, чтобы оценить общий уровень знаний. Своим студентам рекомендую готовиться по материалам из этой подборки. Я ее периодически обновляю».

Сколько получают Java-разработчики

Младший специалист может получать от 30-50 тысяч руб. по расценкам Санкт-Петербурга. В Москве эти значения выше, в регионах – ниже. Чуть более опытные программисты могут запрашивать 60-90 тысяч руб. и выше. 

С опытом работы в IT или программирования на других языках можно рассчитывать и на более высокие зарплаты – от 100 тысяч. 

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

Карьерный путь: что случается после Senior 

Начало карьерного пути понятно: джуниоры вырастают в мидлов, мидлы – в сеньоров. Что происходит дальше? 

«Если расти в пределах той же компании, можно стать тимлидом и руководить командой одного из проектов. Последний этап – технический директор. Это руководитель разработки, ответственный за продукт, который выпускают все программисты компании.

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

Кроме этого, из программирования можно уйти в смежные области: в проджект- менеджмент, аналитику, консалтинг. Многие начинают свой бизнес. У меня это получилось совместить с моим любимым занятием – обучением программированию. Работа на себя приносит больше радости и удовлетворения. Особенно когда видишь ее результаты — хорошие отзывы, благодарности за обучение и трудоустроенных выпускников, которые обрели любимую, хорошо оплачиваемую работу».

You May Also Like
Путь в профессию: как стать дизайнером интерьеров
Читать статью

Путь в профессию: как с нуля стать дизайнером интерьеров

Давно мечтали создавать дизайн интерьеров? Почитайте, как осуществить эту мечту, где этому учиться и какие качества нужны дизайнеру интерьеров.
Читать статью
Data Science с нуля: языки, книги и курсы для начинающих специалистов по данным
Читать статью

Data Science с нуля: языки, навыки и курсы для начинающих специалистов по данным

Если вы любите математику, статистику, умеете и любите программировать и хотите зарабатывать 300-600 тысяч рублей в месяц, идите в анализ больших данных и машинное обучение — Data Science.
Читать статью