Специальность Java developer, обязанности Java разработчиков
Java Developer – это специалист, основной задачей которого является создание сложных корпоративных систем для обработки данных. К таким системам можно отнести настольные приложения, веб-сервисы, облачные хранилища данных, веб-приложения, а также сложные банковские системы.
Java – объектно-ориентированный строго-типизированный язык программирования с С-подобным синтаксисом, который наиболее близок к C++ и C#. В Java есть как свои преимущества, так и недостатки. Учитывая тот факт, что для запуска Java-приложений используется специальная виртуальная машина, то приложения запускаются медленнее, чем в случае с C++, но эта виртуальная машина позволяет запускать приложения на той операционной системе, где она установлена, что обеспечивает независимость от платформы. Java имеет огромное количество библиотек и фреймворков, которые позволяют разрабатывать собственные приложения быстрее.
Java-программисты востребованы в тех областях, где используют проекты с многопользовательской обработкой данных и высокими требованиями к уровню безопасности. Java-программист обычно разрабатывает архитектуру приложения, бизнес-логику приложения, поддерживает и сопровождает проект и пишет техническую документацию.
Java-разработчик должен обладать уверенными знаниями объектно-ориентированного программирования, уметь писать простой читабельный код с применением шаблонов проектирования, чтобы разработчик с которым он работает в команде мог разобраться в его коде, знать алгоритмы и структуры данных, так как для многопользовательского приложения важна скорость выполнения и приходится искать самый эффективный алгоритм, знать базы данных, так как очень часто приходится выполнять сложные запросы и выборки из нескольких таблиц. Java имеет множество библиотек и фреймворков. Разработчикам нужно знать их не только на уровне использования, но и понимать, как эти библиотеки и фреймворки устроены внутри.
Для легкого старта в изучении языка Java ITVDN рекомендует пройти курсы Java Starter и Java Essential. Java разработчику не обойтись без глубоких знаний баз данных (SQL), а также алгоритмов и шаблонов проектирования. После этого можно переходить к уровню Java Professional.
Требования к Java Developer:
- Глубокие знания языка программирования Java
- Уверенные знания ООП и шаблонов проектирования
- Уверенные знания алгоритмов и структур данных
- Знания баз данных (MySQL или PostgreSQL)
- Знания JDBC и базовые знание Hibernate
- Знания систем тестирования приложений (TDD)
- Знание веб-сервисов таких как XML и JSON
- Базовые знание фреймворка Spring
- Английский язык на уровне чтения технической документации (углубленные знания будут преимуществом)
Java разработчик может занимать такие должности:
Trainee Java Developer
Junior/Middle/Senior Java Developer
Программист Java
Java Team Lead
Java Solution Architect
Lead Java Engineer
С чего начать изучение Java программирования
Язык Java
Java — не просто язык программирования, а целая программная платформа с широкими возможностями. Основными составляющими блоками этой платформы являются:- Базовые инструменты для написания и запуска программ на Java.
- Библиотеки и классы — ядро языка. Они обеспечивают основные функциональные возможности программирования на Java: обработку исключений, многопоточность, коллекции, логирование, рефлексию, безопасность, работу с сетью, работу с XML, сериализацию, регулярные выражения.
- Инструменты для развертывания и автоматического запуска приложений.
- Инструменты для создания фронтенда (GUI, интерфейса пользователя). Это классы библиотек JavaFX, Swing и Java2D.
- Библиотеки, для работы с базами данных, удаленно по сети, такие как JDBC, JNDI, RMI и Java RMI-IIOP.
Невысокий порог вхождения.
Изучать Java проще, чем большинство языков с Си-подобным синтаксисом.Объектно-ориентированность.
Программы в Java строятся на основании объектов и их взаимодействии, что позволяет задействовать все преимущества ООП.Переносимость.
Благодаря использованию интерпретатора — виртуальной машины Java, — программы переносятся на различные платформы и устройства.Платформенная независимость
Программа, написанная на Java для одной платформы, компилируется в промежуточный байт-код, который может запускаться на других платформах благодаря интерпретации с помощью JVM под каждую платформу.Развитая многопоточность.
Средства Java позволяют управлять выполнением нескольких потоков, что позволяет создавать многопоточные приложения.Безопасность.
Благодаря встроенной в JVM верификации байт-кода, отсутствии в Java ручного управления памятью, слежением за переполнением стека, а также наличию различных API, которые позволяют контролировать безопасность, на этом языке можно создавать действительно безопасные приложения.Отказоустойчивость.
Механизм исключений как при компиляции, так и во время непосредственного выполнения повышает отказоустойчивость программ и снижает количество ошибок.Интерпретируемость.
Java-интерпретатор может выполнять байт-коды Java на любой машине, на которой имеется JVM и JRE.Распределенность.
У Java есть инструменты для создания распределенных приложений.Производительность.
Использование JIT (Just-in-time)-компилятора обеспечивает высокую скорость работу приложений, сопоставимую по скорости с языками С и С++.
Как начать программировать на Java?
Чтобы начать изучение Java с нуля, желательно разобраться с основными понятиями: что включает в себя язык Java, что такое программа на Java и как происходит ее выполнение. Затем — переходить к синтаксису языка, его основам, изучению библиотек. После прочтения пары статей о языке Java, можно браться за его основы.
Что нужно для программирования на Java?
Для начала вам нужно установить программное обеспечение для разработки и запуска программ — JDK (Java Development Kit). После этого настройте JDK на компьютере, скачайте и установите одну из IDE (Integrated Development Environment) — это среда для разработки программного обеспечения. Самая популярная IDE — IntelliJ IDEA. Альтернативы — Eclipse, NetBeans, JCreator и даже обычный блокнот.
Установка Java на компьютер
Как мы уже выяснили, когда мы изучаем Java с нуля, первый шаг — это установка JDK. Для этого вам потребуется проделать несколько простых операций:- Перейти на сайт Oracle.
- Выбрать и скачать установочный файл в зависимости от вашей операционной системы.
- Выполнить установку, следуя рекомендациям программы-установщика.
- Настроить переменную окружения, если вы используете Windows.
Основные определения
Если вы только начали изучать Java, непременно встретите следующие термины: JVM (Java Virtual Machine) — виртуальная машина Java. Это программный модуль, зависящий от платформы, который служит для интерпретации исходного байт-кода в машинный код и его исполнения. JRE (Java Runtime Environment) — среда выполнения Java. Включает в себя реализацию JVM для конкретной платформы и набор библиотек, необходимых для выполнения программ на Java.Жизненный цикл программы
Жизненный цикл программы на языке Java начинается с написания исходного кода в текстовом формате. Обычно для этого используются специальные среды для разработки — Integrated Development Environment (IDE), но простые программы можно набирать и в текстовом редакторе, даже в Notepad, который поставляется с любой редакцией ОС Windows. Исходный код необходимо сохранить в файл, имеющий расширение .java. Пример программы HelloWorld.java
:public class HelloWorld {
public static void main(String[] args) {
System.out.println("This is my first program");
}
}
Прежде, чем выполнить этот исходный код, его необходимо скомпилировать в байт-код с помощью компилятора. Компилятор — это утилита, которая является частью JDK. В результате его работы мы получим файл с расширением .class. Он содержит байт-код — инструкции для JVM, формат которых напоминает язык ассемблер. Наша программа HelloWorld.java будет скомпилирована в файл HelloWorld.class. Платформа Java не предусматривает инструментов для редактирования байт-кода, но возможность просмотреть его все же есть. Чтобы посмотреть, что представляет собой байт-код программы на Java, можно воспользоваться утилитой дизасcемблера javap, которая входит в состав JDK. HelloWorld. class будет содержать такой байт-код:Compiled from "HelloWorld.java"
public class HelloWorld {
public HelloWorld();
Code:
0: aload_0
1: invokespecial #1
4: return
public static void main(java.lang.String[]);
Code:
0: getstatic #2
3: ldc #3
5:invokevirtual#4
8: return
}
Теперь наша программа хранится в скомпилированном виде в файле HelloWorld.class. Для ее выполнения на любой из платформ необходима установленная JRE. Возможность переносимости Java-программ на любую платформу обеспечивается за счет использования JVM. Исполнение программы — это выполнение байт-кода виртуальной машиной Java. Выполнение программ производит утилита java, которой необходимо указать имя скомпилированного файла. Выполнение происходит в следующей последовательности:- В оперативной памяти компьютера запускается JVM. По сути это программа, которая служит для выполнения написанных нами Java-программ.
- С помощью начального загрузчика классов JVM загружает и инициализирует наш класс в памяти компьютера. В нашем примере это класс
HelloWorld
. - Далее в нашем классе JVM ищет метод
public static void main(String[])
. - Выполняется код метода
main
. Если это необходимо для выполнения программы, производиться загрузка и инициализация других классов. - После выполнения кода производится уборка мусора — очистка памяти и закрытие программы JVM.
Выбор и установка среды разработки
Чтобы быстро и эффективно программировать на Java, вам понадобится среда разработки — приложение для написания программ на Java. Наиболее популярными IDE среди разработчиков на Java являются:- IntelliJ IDEA
- Eclipse
- NetBeans
За сколько можно выучить Java?
На изучение основ Java и выработку навыка программирования, скорее всего, уйдет от 6 до 12 месяцев, в зависимости от интенсивности вашего обучения. Чтобы сделать этот процесс систематическим, составьте план обучения, соберите необходимые источники и выделяйте несколько часов в день на занятия. Не забывайте о том, что ключевое в обучении программированию — это практика.
Заключение
Когда мы изучаем Java самостоятельно, на деле это оказывается проще, чем в теории. Для этого вполне достаточно знаний на уровне пользователя персонального компьютера. Чтобы эффективно начать изучать Java, проделайте несколько простых шагов:- Установите Java на компьютер
- Изучите основные понятия
- Установите среду разработки
- Напишите и запустите свою первую программу.
javarush.ru
Программист Java: требования и необходимые знания
Создает сложные приложения, используя язык Java.
Программист Java – это сложная и интересная профессия, основой которой является разработка продвинутых приложений на одноименном языке программирования. Услуги представителей данной специальности востребованы при создании сайтов электронной коммерции, так как java-приложения способны оперативно и корректно собирать информацию о посетителях интернет-страницы. Спектр обязанностей программистов java также включает в себя улучшение функционала сайта и программное редактирование его дизайна.
Специфика профессии
Работа java-программистом имеет ряд ключевых особенностей, которые являются своеобразным ситом, просеивающим неподходящих кандидатов.
- проектирование архитектуры модулей приложений, а также программной логики;
- проведение тестов и отладка созданных программных продуктов;
- внедрение приложений в работу с последующим техническим сопровождением.
Java – это один из самых популярных языков программирования не только в нашей стране, но и во всем мире.
Программист Java: профессиональные навыки
Требования к java-программисту предъявляются достаточно серьезные, ведь истинный профессионал должен обладать минимальным набором навыков:
- умение анализировать и синтезировать информацию, параллельно осваивать новые приемы работы;
- знание английского языка для свободного чтения технической документации;
- аккуратность и внимательность в процессе выполнения задач программирования;
- ответственность и самостоятельность, а также способность эффективно работать в условиях перманентного стресса;
- умение проявить здоровую инициативу в момент, когда это действительно требуется.
Java-программист без опыта может работать удаленно, «прокачивая» свои способности до уровня, необходимого для устройства в крупную компанию.
Обучение программированию на Java
Ответ на вопрос «как стать java-программистом?» имеет два варианта. Первый – это получение фундаментального высшего образования в области программирования и информационных технологий с последующим самостоятельным изучением языка. Второй – получение соответствующих знаний и навыков на онлайн-курсах и видеоуроках.
info-hit.ru
Обучение программированию на Java / Habr
Я собираюсь переучить на Java-программистов миллион человек.
Я собрал команду и сделал обучающий сервис, которым могу гордиться.
Рад сообщить, что теперь стать программистом легко, независимо от образования и опыта.
JavaRush — изучение программирования на Java в виде онлайн-игры
Как насчет совсем нового подхода к изучению программирования и образованию вообще? Не похожего ни на что из того, что вы видели раньше. Как насчет обучения, где есть цель, средства и результат?
Рад представить вам новые онлайн курсы обучения программированию на Java.
1 Обучение сделано в виде онлайн-игры
Вы берете задание, выполняете его и получаете награду. Думаю вам это и понятно и привычно. Задачи будут самые разнообразные: чтение кода, решение задач, видео-уроки, просмотр Футурамы, исправление ошибок в коде, добавление новых фич и многое другое.
Возможно, вам даже придется писать программы для своего робота, чтобы сражаться со своими друзьями на «арене» или что-нибудь еще.
2 Только самое необходимое
Чтобы курс не растянулся на 5 лет, я выкинул из него все полезное и оставил только самое необходимое. Я проанализировал десятки вакансий на рынке труда. В курс включены все темы, которые нужно знать новичку Java Junior Developer, чтобы устроиться на работу.
3 Я основательно подошел к вашему обучению
Полный курс содержит 900 мини-лекций и 2500(!) практических задач. Задачи небольшие, но их много, очень много. Как раз тот минимум, выполнив который, вы получите столь ценный опыт.
Также есть работа в парах, различные игры, большие задачи, реальные проекты и другие виды практики.
4 Вы не можете пройти игру до конца и не стать программистом
Курс разбит на 80 уровней. Вы можете перейти на следующий уровень, только если решили большую часть задач текущего уровня. Начиная с маленьких и легких, и заканчивая большими и очень полезными. Каждый, дошедший до конца, получит 500-1000 часов практического опыта. Серьезная заявка на победу. И на работу.
5 Целенаправленная подготовка к собеседованию
Последние 10 уровней посвящены написанию резюме, подготовке к прохождению собеседования и навыкам работе в команде. Будут добавлены видео-записи собеседований и их разбор. Ну и, конечно, типичные вопросы на собеседованиях с ответами.
Также вам пригодится «план развития программиста на 5 лет» и «карта дальнейших возможностей программиста» на следующие 5 лет.
6 Задачи можно решать прямо на сайте
Это очень удобно и эффективно. Только что в лекциях вы разбирали новую задачу, а теперь прямо тут же должны сделать свою по аналогии. Для тех, кто хочет решать задачи в IDE, есть плагин, который позволяет получить задачу за два клика, а сдать на проверку — за один.
Лекции, разбор примеров, решение задач прямо на сайте, решение задач в IDE – разрыв между теорией и практикой тонок, как никогда.
7 Мгновенная проверка задач (меньше секунды)
Знакома ли вам ситуация, когда вы сдали задачу/работу на проверку, а результатов пришлось ждать неделю, т.к. проверяющий занят?
В JavaRush вы узнаете результаты компиляции и проверки задачи меньше чем через секунду, после нажатия кнопки «Выполнить/Проверить»
8 JavaRush любит, когда вы сидите в ВКонтакте во время учебы
В ВКонтакте есть группа посвященная проекту. В ней вы можете обсудить задачи, поделится достижениями с друзьями, посмотреть видео-уроки или попросить помощи.
9 Охват материала
В лекциях есть много ссылок на различные сайты, где вы можете почитать объяснения других лекторов. Моя цель, чтобы вы поняли материал, а не слушали только меня.
10 Для того чтобы стать программистом вам нужны только мозги и компьютер
Это займет у вас от 3 до 6 месяцев, в зависимости от того, сколько времени вы будете уделять практике.
Каждому уровню соответствует отдельная солнечная система на звездной карте. Лекциям внутри уровня – планеты солнечной системы. Каждая открытая лекция – это перелёт на очередную планету. Когда все лекции открыты, корабль перелетает к следующей звездной системе.
За решение практических задач, просмотр мультфильмов и многое другое вы получаете награду – несколько единиц «чёрной материи».
Вы можете сравнивать продвижение себя и ваших друзей на одной общей карте. Люди сравнивают свои успехи с успехами друзей и решают больше задач. Этого мне и надо.
Лекции
Лекции я постарался сделать небольшими, интересными и наглядными. Вот пример одной из них:
Практические задания
Написать программу – это практическое задание средней сложности. Для его выполнения вы должны написать программу на Java. Для вашего удобства, а также упрощения проверки программы, код стоит писать только в месте, отмеченном комментарием «напишите тут ваш код»
Также, в случае успешной компиляции, программа автоматически будет протестирована – правильно ли решена поставленная задача.
Домашние задания нужно решать в Intellij IDEA. Я написал специальный плагин для IDEA, который даст вам возможность мгновенно проверять вашу программу на правильность. Он состоит всего из двух кнопок:
Левая — показывает список доступных для вас задач:
Правая – отправляет задачу на сервер на проверку:
Также вы можете зарабатывать «черную материю» просматривая на сайте серии Футурамы:
С остальными типами заданий вы можете ознакомится в самой игре, если, конечно, решите ее пройти. Также можно почитать полное описание игры.
Чему вы учитесь
Первые 40 уровней вы изучаете Java Core. Следующие 40 – основы таких технологий как JSP, Servlets, Hibernate, Spring. Изучение Java Core – очень детальное, все остальное — в той минимальной версии, которая может понадобиться Java Junior при устройстве на работу.
Если в вашем городе есть крупные IT-компании, после 40 уровня можно попробовать устроиться к ним на стажировку. Если их нет или вам недостает опыта, вы можете продолжить изучение технологий Java, пока не дойдете до 80 уровня.
В конце много времени будет уделяться составлению резюме, разбору типичных вопросов на собеседованиях и рекомендациям по работе в команде.
Курс в разработке (сделано 25%)
В настоящий момент курс находится в разработке. Уже сделано около 25% всей работы. Вполне достаточно, чтобы примерить на себя роль Java-программиста, оценить и свои силы и JavaRush. Пробуйте, может быть с этого маленького события и начнется череда волшебных изменений в вашей жизни.
Планы на будущее
Многие фичи уже сделаны, над многими еще идет работа, а остальное — скромно ждёт своей очереди. Будет добавлена анимация, обучающие игры, нелинейный сценарий развития. Полный курс будет включать 80 уровней, 900 лекций и две с половиной тысячи практических занятий. А также видеозаписи собеседований и их разбор. Образцы составления резюме и удобный сервис для этого.
Многое будет зависеть от ваших отзывов и от посещаемости сервиса.
Почему Silverlight?
Игра написана на Silverlight. Обучающий курс изначально проектировался именно в виде онлайн-игры: много анимации, встроенные мини-игры, видео, мультфильмы и еще много чего. Так что выбор тут был между Silverlight (в котором у меня хороший опыт) и Flash (в котором опыта гораздо меньше).
Простые задачи решаются на сайте, для всего остального есть MasterCard Intellij IDEA.
Программирование – это просто и интересно.
Оплата
Сейчас сервис бесплатен. В то же время, для его успешного развития нужны средства. Законченный сервис лучше, чем заброшенный.
Образовательные гранты
Очень бы не помешали. Надеюсь, мое видение образования, описанное в статье «правильный университет» найдет свой отклик в сердцах единомышленников.
Также, надеюсь на ваши отзывы. Чем больше восторженных отзывов получит проект, тем больше шансов, что какой-нибудь хороший фонд, заинтересованный в развитии образования, даст нам грант на развитие.
Модель Freemium
При этом подходе основной функционал сервиса — бесплатен. Развитие же сервиса осуществляется на доходы, которые получены с дополнительных платных услуг. Это могут быть личные консультации, наборы специально написанных задач, более глубокое обучение ключевым темам. Еще, например, видео лекции, видео уроки, написание резюме, подготовка к собеседованию.
Или я слишком оптимистичен или слишком наивен, или одно из двух.
В же чем прелесть эры онлайн-курсов?
Они уничтожат индустрию, которую по ошибке называют высшим образованием.
Чтобы устроиться на работу новичком Java-программистом, надо хорошо знать Java Core, основы базовых фреймворков (Hibernate, Spring, JSP, Servlets) и иметь опыт программирования хотя-бы несколько месяцев.
Формально многому из этого вас в вузах и учат. По факту – почти ничему из вышеописанного.
Все вузы разные, поэтому я, для простоты, сравню средний технический вуз со средней вакансией на Junior Java-программиста и напишу своё видение полученной ситуации. Не стоит воспринимать эту схему как истину в последней инстанции, скорее как упрощённый взгляд на вещи, с целью внести хоть какую-то ясность.
Java Junior Developer
Так, скорее всего, обстоят дела, когда вы уже закончили вуз и только ищите работу:
Все, чему вас не научил вуз, но что нужно в работе, вам придется выучить самому. Скорее всего по книжкам месяцев за 6-12. Если у вас есть друг-программист, который готов быть вашим наставником, этот срок можно сократить в 2-3 раза.
Также очевидно, что в вузе вы учили много всего, что не нужно вам при первом устройстве на работу. Возможно большая часть этих знаний не нужна вам сразу, но понадобится в будущем. Вот как изменится ситуация лет через 5.
Java Senior Developer
Есть мнение, что чтобы стать специалистом в своем деле, нужно потратить на него около 10,000 часов. В году чуть более 2000 рабочих часов, так что это примерно 5 лет.
А вот так будут обстоять дела у Java-программиста с 5 годами опыта работы:
Многие цифры неточны. Сложно привести какие-то конкретные цифры, ведь так много разных вузов, так много разных вакансий. Но общая тенденция верна.
Процентов 80 из того, что вы учите в вузе, вам не пригодится никогда. Так, разминка для мозгов. Как шахматы, кроссворды или логические игры.
Очень много придется учить самому. Люди ленивы. Если не будете лениться – будете зарабатывать $3К-$4К к пяти годам работы программистом.
Вуз – хороший
Объективность требует сказать, что вуз, на самом деле, неплохое место. Там можно расти над собой, заниматься интересными вещами, гулять, пока молодой. Это все тоже надо.
К тому же вуз дает диплом, что может помочь при трудоустройству в гос. контору или при получении рабочей визы заграницу. Хотя наши негосударственные ИТ-компании обычно не обращают внимания на диплом. Не стоит забывать и про отсрочку от армии.
В целом ситуация с вузом выглядит не так уж плохо. Не идеально, но и не плохо.
Единственное, чего вуз вам скорее всего не даст – это профессию. Поэтому я и создал JavaRush – сервис онлайн обучения программированию на Java.
Еще год назад такого сервиса не было даже в планах, и мне приходилось обучать одновременно всего по несколько человек. Сейчас JavaRush пользуются больше тысячи человек и где-то треть из них занимается каждый день.
Так что, имеющие желание, но не имеющие возможности – пробуем.
Повторюсь. В настоящий момент курс находится в разработке. Сделано около 25% всей работы (20 уровней из 80). Вполне достаточно, чтобы примерить на себя роль Java-программиста, а также оценить и свои силы и JavaRush.
Всегда ваш, General
P.S.
Запрос прав при авторизации ВКЛичные данные и друзьяНадо для того, чтобы отображать на карте звездного неба прогресс вас и ваших друзей.
Ваши аудиозаписи и видеозаписи
Серии Футурамы залиты в ВК. Я показываю их прямо оттуда.
(Чтобы не сильно нагружать мой сервер раздачей видео)
Работа со стеной
Чтобы вы могли приглашать друзей изучать Java вместе с вами.
(Это можно сделать в разделе «Друзья» )
И ничего более.
Проверял работу только под Windows
Похоже, что под Linux с Moonlight не работает.
Под MacOSX еще никто не отписался.
Сервис расчитан не на программистов
Основная аудитория — это люди, которые хотят быть программистами, но которым еще не попался хороший учитель.
Если у вас есть линукс и аккаунт на гитхабе, то вряд ли вам пригодится курс джава-джуниора.
Почему выбран Silverlight1 Нет никакой связи между тем, какой язык мы учим и на чем написано приложение для занятий
Если бы я писал обучающее приложение для iPad, я написла бы его на Objective C, а не на Java
Если бы я обучал SQL, я тоже не стал бы писать клиента на SQL
2 У каждого языка/фреймворка есть свое преднозначение
У Java — это Android и Enterprise.
А для RIA-приложений лучше всего подходят Flash & Silverlight
3 У меня много опыта на Silverlight
Из всех технологий, которые я знаю, я выбрал самую подходящую для онлайн-игры.
Если бы я не знал Silverlight, но хорошо знал Flash, клиент был бы на Flash.
4 На хабре много тру айтишников, которые принципиально используют Linux и не используют ВК.
Если вы тру айтишник и у вас только Linux, возможно вы уже переросли курс джава-джуниора.
5 Надо бы писать все на Java!
Не слишком ли много требований для проекта, который начинался просто как желание помочь людям и хобби?
6 Увидел что Silverlight и сразу закрыл
Если технология используемая для создания клиента перевесила для вас все преимущества проекта, то может быть не очень то и хотелось?
Кто хочет — ищет возможность (и я ее предоставил), кто не хочет — ищет причину.
У кого проблемы с авторизацией — первый раз заходим по этой ссылке.
habr.com
Программист Java — БудуГуру
Программист Java — БудуГуруJava представляет собой язык программирования и платформу вычислений, которая была впервые выпущена Sun Microsystems в 1995 году. Он используется для разработки корпоративных приложений и видеоигр, веб-приложений с использованием JSP (Java Server Pages), а также родных Android-приложений для смартфонов и планшетов.
Java – один из самых востребованных языков программирования не только в России, но и в мире. В рейтинге, который составил софтверный портал TIOBE, в апреле 2015 года Java занял первое место по популярности Знание Java требуется почти в 14% программистских вакансий — это довольно внушительная доля. А значит Java стоит выучить каждому программисту.
Обязанности
Проектирование и разработка
Главная задача Java-программиста — это создание c помощью одноименного языка разработки приложений и модулей, их архитектуры и логики. При этом программист должен уметь составлять технические задания (ТЗ) и разбираться в специальной терминологии.
Тестирование и внедрение
В задачи Java — программиста также входит сопровождение проекта по созданию приложений или модулей: их тестирование, отладка (в том случае, если обнаружатся ошибки) и, наконец, внедрение — запуск в работу.
Сопровождение
Еще одна обязанность программиста — разработка инструкций по работе с приложениями или модулями, а также оформление необходимой технической документации.
Что нужно знать и уметь
- Способность к самообучению;
- Системное мышление;
- Умение работать в команде;
- Аккуратность;
- Внимательность;
- Самостоятельность;
- Инициативность;
- Ответственность.
Личные качества
- Знание английского на уровне чтения технической документации.
Основные навыки
Отрасли, в которых востребована профессия
Рынок профессии
«Диапазон зарплат» (Москва)
Количество вакансий в динамике
Конкурс на место
Спрос по регионам
Половое соотношение
Возрастное соотношение
Популярные образовательные курсы
Онлайн-курс
Разработка веб-приложений на Java
ИТ-архитектор, Программист, Тестировщик ПО, Программист Java
Курс о разработке веб-приложений на языке программирования Java, включающий изучение сбора и анализа требований, разработки технической спецификации, разработки и отладки приложений.
Узнать большеОнлайн-курс
Основы HTML, CSS И JavaScript
Веб-дизайнер, Программист Java
Курс о создании гипертекстовых страниц с применением актуальных технологий в области веб-разработки.
Узнать большеОнлайн-курс
История ЭВМ и программирования
Программист, ERP-консультант, Программист Java, Программист PHP, Программист Ruby, Программист 1С, Программист C++, Программист Python, Программист Perl, Системный программист
Этот курс посвящен истории развития ЭВМ и программирования в Советском Союзе в контексте задач, для решения которых они требовались.
Узнать большеОнлайн-курс
Java для школьников
Программист, Программист Java
Данный курс поможет вам изучить основы программирования на языке Java.
Узнать больше
Все возможности для обучения профессии, литература, онлайн и офлайн курсы, ВУЗовские программы…
Больше курсов Подписка
на материалы
Мы присылаем интересные материалы и ничего больше
создатель проекта
#
При реализации проекта используются средства государственной поддержки, выделенные в качестве гранта в соответствии с использованием гранта Президента Российской Федерации на развитие гражданского общества, предоставленного Фондом президентских грантов
buduguru.org
Как искать Java-разработчика: пособие для начинающих
Я занимаюсь подбором ИТ-специалистов более 7 лет, за это время я получила обширную экспертизу в этой области. Думаю, данный материал будет интересен как рекрутерам с опытом работы с данными специалистами, так и тем, кто только знакомится с миром ИТ, поэтому информацию постараюсь дать максимально просто.
При подборе Java-программиста, как и любого другого айтишника, нужно учитывать специфику данной сферы. IT-специалисты могут изначально показаться необщительными, крайне прагматичными и заносчивыми особами на контрасте с кандидатами с другой специализацией, но в целом, если хорошо изучить рынок, его особенности и на базовом уровне иметь понятие о технологиях, перед вами откроется очень интересный и разнообразный мир.
Java-программист или Java-разработчик (не путать с JavaScript) занимается разработкой программного обеспечения (ПО) обычно в команде программистов. Написанный программный код программист сохраняет в специальном хранилище, которое называется системой контроля версий (Git и тп) . Кроме того, он должен исправлять свои ошибки в написанном коде, уведомление о которых поступает ему от тестировщиков.
Хороший программист (если мы нанимаем специалиста с опытом) имеет знания и практический опыт в технологиях Java, пишет качественный код, допускает не критичное количество ошибок, постоянно в курсе новых технологий и методов разработки, потому что он непрерывно занимается самообразованием.
Основная проблема оценки любого программиста в том, что профессиональные навыки кандидата не могут быть проверены рекрутером, это оценивается техническим специалистом.
Особенности:
- Айтишники в основном более интровертны и обычно любят говорить по делу. Предпочитают общаться по электронной почте и не любят, когда им звонят. Отчасти потому, что квалицированному специалисту постоянно названивают рекрутеры и отвлекают от работы, отчасти потому что они лучше воспринимают информацию и гораздо эффективнее общаются по переписке.
- Программист обычно сосредоточен на конкретной задаче, над которой он работает не отвлекаясь.
- Уровень интеллекта у айтишников в среднем достаточно высок, так как они получили хорошее математическое образование.
- Айтишники любят более неформальное общение и неформальный подход к работе.
- Они в основном совы и предпочитают работать с 11:00. Также многие достаточно свободолюбивы, не любят дресс-код итд. В таких условиях они обычно достигают лучших результатов.
1. Какова ситуация спроса и предложения на кадровом рынке по этой вакансии, что важно знать о компании, вакансии и условиях работы, чтобы выполнить задачу корректно и в срок, о чем важно спросить работодателя.
На рынке ИТ, в том числе и Java-разработчиков, даже в кризис правила игры определяет соискатель. Предложений достаточно для того, чтобы средний кандидат мог найти работу за 1-2 недели, выбирая между несколькими предложениями о работе. В среднем, на одну вакансию в сфере ИТ претендует 3 кандидата (из исследования hh.ru). Тем не менее, Java не является редкой технологией, эта платформа достаточно популярна у программистов, поэтому найти нужное количество кандидатов для собеседования возможно, но потока по этой вакансии у вас не будет.
При снятиии потребности у заказчика (работодателя) необходимо сразу получить полное описание вакансии, так как составить её самостоятельно без технических знаний в данной сфере рекрутер не сможет.
Обычно требования к джависту состоят из следующих блоков:
– Требование к образованию – чаще всего необходим кандидат с высшим техническим образованием.
– Знание и опыт коммерческой разработки на языке Java (не менее определённого количества лет), то есть студенческие и личные проекты работодателя не интересует.
– Часто указывается знание паттернов проектирования, но не всегда. Обычно успешный разработчик их знает и умеет применять.
– Знание определённого набора фреймворков (Hibernate, Spring итп.) и библиотек (например, JQuery). В каждой компании они требуются свои. Важно в этом пункте сразу уточнить у работодателя, что является обязательным, а что будет плюсом.
– Знание баз данных, например – MS SQL, Oracle и так далее.
– Владение английским языком требуется часто, но не всегда. Обычно, хороший программист постоянно читает много книг по нужным технологиям, в том числе на английском, поэтому так или иначе владеет языком на уровне чтения технической литературы.
– Наличие сертификатов по технологиям Java и другим – требуется редко. Сертификаты в данной сфере не показатель профессионализма, более того, если кандидат в первую очередь хвастается ими, а не своим опытом и знаниями, это обычно тревожный звоночек.
Обязательно уточните у работодателя следующее:
- Какой график предусмотрен для кандидата, есть ли переработки, имеется ли возможность график сдвигать?
- Присутствует ли дресс-код и насколько строгий?
- Где будет располагаться рабочее место кандидата, будет ли это опен спейс или в компании кабинетная система, будет ли он находиться среди коллег-айтишников или среди коллег из других подразделений?
- В вопросе компенсации важно иметь четкое представление, что есть оклад, что есть премия и бонусы, белая ли зарплата.
- Обязательно узнать обо всех аспектах соц. пакета, он обычно у айтишников очень широкий: кроме ДМС это может быть компенсация фитнеса, бесплатная столовая, 100% оплата больничного, и даже игровые приставки в офисе.
- На каком проекте или каких проектах будет работать данный сотрудник, сколько человек в команде, и вообще, лучше честно и прямо спросить: «Чем эта вакансия может заинтересовать кандидата, что мы можем рассказать кандидату, чтобы он загорелся». Это очень хороший вопрос, и адекватный нанимающий менеджер охотно расскажет про все преимущества.
- Подразумевается ли профессиональный и карьерный рост на данной позиции?
- Какие знания и навыки из описания вакансии обязательные (без которых резюме не будут смотреть) и какие желательные. Например, «знание Java – от 2 лет опыта работы и знание Spring.MVC – обязательно”. Уточните у заказчика, может ли кандидат не указать каких-то из этих ключевых слов в резюме.
2. Как представлять вакансию соискателям (нюансы и правила создания презентации вакансии).
Здесь нужно исходить их трёх основных мотиваторов айтишника:
- Интересные проекты.
- Технологии, с которыми он будет работать (например, ему уже надоела та платформа, на которой у него большой опыт, но ему очень хочется работать только с Java).
- Повышение своего дохода. Этот пункт может быть заменен на комфортность работы (дорога до офиса, удобство графика, наличие столовой, хорошего места для питания, парковки) или команду (насколько хороший микроклимат в команде и насколько она профессиональная).
В описании вакансии для публикации на ресурсах и в соц сетях обязательно хорошо распишите условия, избегайте казённых и шаблонных фраз. В заголовке достаточно написать «Программист Java” или “Ведущий Java-разработчик».
Составьте шаблон письма кандидату, где вы представляетесь, сообщаете, что у вас есть позиция и сразу пишите, что это Java-программист, далее описание вакансии и информация о компании. И, конечно, здесь распишите все преимущества компании, вакансии и проекта, которые вы ранее получили у заказчика (см. выше).
Кандидату лучше сначала высылать письмо, и потом звонить: “Я высылала вам письмо с вакансией” работает лучше, чем внезапный звонок.
Вакансию лучше подавать с позиции технологий, проекта, компании (чем она занимается, если можно назвать имя, обязательно озвучить его). Кандидат может попросить подумать, договоритесь о том, когда вы ему перезвоните.
3. Где размещаться (источники поиска, в том числе специальные и нетривиальные).
По статистике всё-таки больше кандидатов на Java находится на hh.ru, а лучшие приходят по рекомендации коллег-программистов.
Источники:
- hh.ru (и активный , и пассивный поиск).
- LinkedIn (лучше заранее работать над своей сетью контактов в тех сферах, где вы ищете и будете искать людей).
- Рекомендации других сотрудников-айтишников.
- Профессиональные форумы sql.ru и rsdn.ru, vingrad. Периодически появляются новые, теряют актуальность старые. Поэтому постоянно ищите новые ресурсы.
- Другие источники: ITMozg, Brainstorage, Programmersforum, Javatalks, Github.
- Facebook, Twitter, Вконтакте, жж-сообщества по программированию.
- Корпоративный сайт компании или агентства.
4. Стратегия поиска (отклики, активный обзвон, соцсети, объявления и т.д.).
1. Размещение вакансии на hh.ru, сбор откликов и активный поиск.
Для эффективного поиска лучше создать автопоиск на основании ключевых слов, которые соответствуют обязательным требованиям заказчика, например если это опыт в Java и фреймворк Hibernate, наш запрос будет выглядеть как
Java and Hibernate
Количество лет опыта мы будем определять уже по резюме.
2. Публикация объявления о вакансии со ссылкой на описание в соцсетях и на LinkedIn. В зависимости от соцсети преамбула может быть более или менее формальной и должна быть привлекательной и интересной. Попросите своих знакомых сделать репост ваших публикаций.
3. Публикация объявления на профессиональных форумах. Обязательно сначала прочитайте правила форума и раздела «Работа» или «Вакансии». За невыполнение требований вас забанят, а вакансию удалят. Например, на sql.ru публикацию нельзя редактировать, обязательно нужно указать оклад, название компании или агентства и город.
5. Как проводить первичный отбор по телефону (важные правила переговоров и критерии отбора).
По телефону первичный отсев не требуется, за исключением случаев, когда вам еще на телефонном этапе важно прояснить какие-либо мотивационные моменты и отсеять кандидата, если его ожидания не соответствуют возможностям заказчика.
Также, ваша задача – максимально дружелюбно и лаконично передать основную информацию, чтобы привлечь кандидата и чтобы он согласился на встречу. Хорошо, если у вас на первом очном интервью сразу будет присутствовать технический специалист, обязательно в таком случае упоминайте, что интервью будет техническое. К HR-интервью и агентствам айтишники относятся с осторожностью и некой опаской, это факт.
6. Особенности очного общения и оценки кандидатов.
Для айтишников не рекомендуется использование психологических тестов, так как они во-первых, показывают свою невалидность, во-вторых, в данном сегменте рынка труда психологические тесты и вопросы могут вызвать негативную реакцию.
В процесс оценки по желанию заказчика может включаться выполнение тестового задания или предоставление примеров программного кода разработчика.
Если вы подбираете кандидата в свою компанию, обычно HR-интервью совмещается с профессиональным (техническим) интервью, так как рекрутер лишь предоставляет информацию о компании, условиях работы, важных моментах (например, серая зарплата или переработки), выясняет для себя организационные моменты , оценивает мотивацию и адекватность кандидата. Профессионально оценить кандидата сможет только технический специалист.
Если вы подбираете Java-программиста для компании-заказчика, вам нужно будет развёрнутое интервью, чтобы собрать необходимую информацию для заказчика о кандидате.
В таком случае советую разработать таблицу со списком основных технологий по данной вакансии и столбцами: опыт работы (лет), количество проектов, уровень владения и опросить подробно о том, с чем кандидат работал, как он оценивает знания технологии, как много проектов сделал с использованием данной технологии.
Обязательно давайте обратную связь кандидату по телефону или по электронной почте в любом случае.
6. Подготовка кандидатов к интервью в компании.
Здесь нет никаких особенностей, кандидата необходимо снабдить всей необходимой информацией о компании и условиях работы, так как технари на эти вопросы не всегда могут ответить кандидату. Очень желательно рекрутеру присутствовать хотя бы на первом интервью с нанимающим менеджером и техническим специалистом, даже несмотря на то, что 90% того, что будет обсуждаться, не-технарю будет непонятно. Это даст вам возможность скорректировать свой поиск и лучше подобрать хорошего кандидата данному заказчику.
Спасибо за внимание, я надеюсь, что поиск айтишника, если он вам предстоит, будет лёгким и интересным!
Диана Цуркан, IT HR, ithrdiana.wordpress.com
hr-portal.ru
Разработка программ на Java с использованием JDK
Щелкните для получения дополнительных сведений
Для написания апплетов и приложений Java требуются такие средства разработки, как JDK. JDK включает следующие компоненты: среда выполнения Java, компилятор Java и API Java. Начало работы не представляет трудности ни для опытных, ни для начинающих программистов.
Где можно загрузить JDK?
Чтобы загрузить последнюю версию комплекта разработчика Java Development Kit (JDK), перейдите в раздел загрузки JDK.
Разработчики также могут посетить сообщество для разработчиков Java Oracle Technology Network for Java Developers и получить исчерпывающую информацию о технологии Java, включая документацию и обучающие материалы.
Начинающим пользователям Java
Начинающие пользователи, заинтересованные в разработке программ на Java, могут найти полезную информацию в разделе Начинающим пользователям Java.
Как получить сертификат Java?
Сертификат обучения технологии Oracle Java является наглядной демонстрацией технических навыков, увлеченности профессией и высокого уровня мотивации, — качеств, которые высоко ценятся и высоко оплачиваются работодателями. Признанные во всей отрасли возможности обучения и получения сертификатов по технологии Java Oracle позволяют гарантировать наличие навыков, необходимых для эффективного выполнения задач в ИТ-организации.
» Подробнее о Сертификации Java
Java Magazine
Java Magazine — это периодическое интернет-издание, выпускаемое раз в два месяца. Этот журнал является авторитетным источником информации о технологии Java, языке программирования Java и приложениях на основе Java для тех, кому эти знания необходимы в профессиональной деятельности, и для тех, кто только начинает осваивать технологию Java. Журнал включает в себя описания инновационных приложений Java, технические пошаговые инструкции для Java, новости сообщества Java, а также информацию о новой документации Java, конференциях и мероприятиях.
Академия Oracle
Академия Oracle предоставляет учреждениям школьного, профессионального и высшего образования полный портфель программного обеспечения, учебные курсы, хостинговые технологии, факультативное обучение, поддержку и ресурсы сертификации для использования в учебных целях. Эти ресурсы можно включать в состав курсов по информатике и бизнесу, чтобы учащиеся приобрели необходимые навыки до начала профессиональной деятельности в той или иной отрасли. Академия Oracle обучает более 1,5 миллионов человек в 95 странах. Недавно Академия Oracle расширила свою учебную программу и включила в нее курсы по Java. Дополнительную информацию можно найти на веб-сайте Академия Oracle — программирование на языке Java.
www.java.com