Хотите узнать больше о выходе на зарубежный фриланс, продвижении на LinkedIn и особенностях работы с иностранными заказчиками? Подписывайтесь на канал канал Brocli — все о зарубежном фрилансе!
Разработка – одна из самых привлекательных профессиональных сфер в России и в мире. Еще бы: историй успеха о том, как условный копирайтер выучил один язык программирования и стал зарабатывать несметные тысячи долларов, в интернете очень много. Для тех, кто уже ими вдохновился и хочет приступить к действию, рассказываем, как стать 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.
Посмотрите вебинар о старте в профессии Java-разработчик от Skillbox:
Skillfactory — онлайн-университет, специализирующийся на обучении будущих программистов и разработчиков. Обещают поддержку личного куратора, помощь с трудоустройством и насыщенную программу, которая даст все необходимые навыки для выхода на рынок Java-специалистов с конкурентным портфолио.
Интуит – онлайн-университет информационных технологий. Дизайн из 2003 года, зато здесь очень много бесплатных курсов для разработчиков разного уровня. По окончании обучения выпускники получают дипломы и сертификаты. Вариантов обучения много: и база для начинающих, и профессиональная переподготовка, и углубленное обучение. Неплохой курс, например, есть от Mail.ru Group.
JavaRush – один из самых популярных и уважаемых в русскоязычном профессиональном пространстве онлайн-курсов по обучению Java. Обучение построено в формате игры: выполняете интересные квесты, переходите с уровня на уровень, а заодно и учитесь. Основной массив курса – это практические занятия. Еще один плюс – крупное сообщество JavaRush, к которому всегда можно обратиться с вопросом.
Java Online Projects – обучают Java c 2014 года. Профессиональное обучение от новичков до уровня Middle и выше. По окончании курса выдают электронные сертификаты и государственные Дипломы о проф.переподготовке. Одни из самых низких цен на рынке обучения. В обучение входит стажировка с работой над реальным Enterprise проектом на востребованном Java стеке.
Навыки Java-программиста
Жесткие навыки
Минимальный набор хард скиллов, с которыми можно устроиться на работу:
- Основы Java: синтаксис, принципы ООП, многопоточность.
- Знание и опыт работы с семейством фреймворков Spring (Dependency Injection, MVC, Security) и реализаций Java Persistence API (например Hibernate).
- Знание паттернов проектирования и опыта их применения . Для начала достаточно нескольких – например, Шаблонный метод и Стратегия. Почитать теорию по паттернам можно здесь: refactoring.guru.
- Базовые знания SQL/ORM. Ознакомиться можно здесь: SQLZOO.
Максимально подробно о навыках, которые необходимы начинающим Java-разработчикам, можно почитать в докладе Яндекса.
Гибкие навыки
- Умение работать в команде
- Английский язык
«Во-первых, работодатель должен видеть ответственный подход к работе. На этапе отклика это видно в том, как оформлено резюме/портфолио. В работе умение коммуницировать: отстаивать свою точку зрения, уметь прислушиваться к чужому мнению, адекватно реагировать на критику. Нужно, конечно, уметь работать по правилам проекта. Но в основном программисты работают сами по себе, и им в плане софт скиллов проще. Важнее всего тут именно технические навыки: знать свои языки и писать код без ошибок.
Еще нужен английский. С ним проще находить ответы на свои вопросы, решать какие-то технические проблемы: все-таки на английском в разы больше полезной информации можно найти. Плюс с английским можно выйти на международные проекты – там и заработок выше».
Обучение пройдено: где и как искать вакансии Java-разработчика
Искать работу начинающие разработчики могут на популярных рекрутинговых платформах, в сообществах на Facebook и в каналах в Telegram.
Рекрутинговые платформы:
Telegram-каналы:
Сообщества на Facebook:
- Яндекс для разработчиков – советы и вакансии от главной IT-компании страны.
- Программисты – группа с вакансиями в IT-сфере.
- IT Recruitment – тоже группа с вакансиями в IT, можно посоветовать коллегу или опубликовать свое резюме.
Еще работу можно искать на LinkedIn и через Facebook – публикуете пост и просите друзей его расшарить. А если проходили где-то обучение, оставайтесь на связи с группой.
«Я согласен с Java-чемпионом Яковом Фaйном: в своем видео “Как стать профессиональным Java-разработчиком” он не советует устраиваться на работу как Junior. Рекомендую получить опыт работы в реальном Enterprise проекте. После этого останется правильно оформить резюме и портфолио, а потом – подробно рассказать о своем опыте участия в проекте на техническом собеседовании».
Прохождение технического собеседования
«Собеседование – это отдельная тема для обучения. Как и в программировании, здесь нужно нарабатывать опыт их прохождения. Даже если у вас большой опыт разработки, всегда полезно освежить свои знания перед встречей с потенциальным работодателем.
Есть стандартные специфические вопросы – например, уровни изоляции транзакций или аббревиатура ACID, которые, вероятнее всего, никогда не пригодятся в работе. Но на интервью их часто спрашивают, чтобы оценить общий уровень знаний. Своим студентам рекомендую готовиться по материалам из этой подборки. Я ее периодически обновляю».
Сколько получают Java-разработчики
Младший специалист может получать от 30-50 тысяч руб. по расценкам Санкт-Петербурга. В Москве эти значения выше, в регионах – ниже. Чуть более опытные программисты могут запрашивать 60-90 тысяч руб. и выше.
С опытом работы в IT или программирования на других языках можно рассчитывать и на более высокие зарплаты – от 100 тысяч.
Важно понимать, что уровень зарплаты можно поднять достаточно быстро. Много случаев, когда проджект-менеджеры и руководители, уходя в разработку, слегка урезают себя в доходах, но уже через полгода-год их заработок увеличивается.
Карьерный путь: что случается после Senior
Начало карьерного пути понятно: джуниоры вырастают в мидлов, мидлы – в сеньоров. Что происходит дальше?
«Если расти в пределах той же компании, можно стать тимлидом и руководить командой одного из проектов. Последний этап – технический директор. Это руководитель разработки, ответственный за продукт, который выпускают все программисты компании.
Другой вариант – стать архитектором. Архитектор определяет структуру, технологический стек проекта и как он будет использоваться, руководит построением проекта. Это очень интересная должность, которая требует большого опыта.
Кроме этого, из программирования можно уйти в смежные области: в проджект- менеджмент, аналитику, консалтинг. Многие начинают свой бизнес. У меня это получилось совместить с моим любимым занятием – обучением программированию. Работа на себя приносит больше радости и удовлетворения. Особенно когда видишь ее результаты — хорошие отзывы, благодарности за обучение и трудоустроенных выпускников, которые обрели любимую, хорошо оплачиваемую работу».
Узнай, как находить заказы на фриланс на зарубежном рынке в 2024 году, в моем гайде «Зарубежный фриланс 2024»! Всего 2990 рублей: скачать гайд и узнать, как получать заказы с Upwork БЕСПЛАТНО без оплаты коннектов.
Упоминающиеся в тексте Instagram и Facebook признаны на территории РФ экстремистскими.