Описание квалификации Junior Java Developer
Junior'ом обычно называют разработчика, который только начинает серьезно работать в определенной области технологий. У такого разработчика есть знания, позволяющие ему работать над реальным проектом, но очень мало (или нет) опыта такой разработки. Поэтому, зачастую в технических аспектах он советуется с более опытным разработчиком. Накопив достаточно знаний и опыта Junior становится mid-level разработчиком.
Если говорить о Junior Java Developer'е, то необходимы такие знания:
- Программирование (системы исчисления, чем оператор отличается от операции, некоторые алгоритмы)
- Язык Java (синтаксис, ООП возможности, многопоточность, стандартная библиотека)
- OOP и OOD (парадигмы, основные паттерны проектирования)
- Базы данных (JDBC, язык SQL)
Обычно для Java Junior'а не обязательно знание какой-либо конкретной технологии или фреймворка (например веб-сервисов или Spring). Достаточно знать зачем та или иная технология нужна, какие задачи с помощью нее решают, преимущества/недостатки в сравнении с похожими технологиями. Junior детально знакомится с такими технологиями/фреймворками в процессе работы над очередным проектом.
Необходимые тесты
Программирование - Основы
Тест, необходимый для прохождения любому, кто имеет дело с программированием. Здесь собраны довольно элементарные вопросы по булевой алгебре, системам исчисления (особенно двоичной и шестнадцатиричной), простым алгоритмам.
Java - Основы
Тест содержит достаточно большое количество вопросов, но не только по синтаксису языка так и по практическому использованию той или иной возможности. Вопросы теста преимущественно простые, но есть и довольно "хитрые" вопросы, которые проверяют понимание.
ООП - Основы
Знание ООП парадигм на базовом уровне безусловно необходимо для Junior'а. Данный тест ставит себе задачу это проверить. Вопросы в основном теоретического плана и требуют соответствующего уровня подготовки.
ООП в Java
Тест посвящен ООП возможностям Java. Проверяет знание вопросов которые часто задают на собеседованиях Junior'ам: "как реализовать множественное наследование в Java", "в чем отличие абстрактного класса от интерфейса" и т.п. Содержит в основном практические примеры и неплохо дополняет предыдущий тест по теоретическому ООП.
SQL - Основы
На данный момент, базы данных используются в большинстве промышленных приложений. Поэтому эти знания довольно востребованы и Java Junior'у сейчас нужно иметь представление о JDBC и SQL. Тест проверяет базовые знания SQL и наиболее используемые его возможности.
Написание статьи
Тематика статьи предлагается администрации и либо принимается либо отвергается с предложением альтернативной. Тематика должна касаться предметной области. Это требование проверяет умение Junior'а быстро вникнуть в суть проблемы, а также способность излагать мысли последовательно и методично.
Составление вопросов
Необходимость составления вопросов преследует ту же цель что и написание статьи: умение аналитически подходить к изучению нового, отделять главное от второстепенного. Тематики вопросов также согласовываются с администрацией (это нужно так как в некоторых тестах довольно много вопросов и при добавлении еще одного высока вероятность, что похожий вопрос уже есть).
Решение задачи
Теоретические знания безусловно важны, но они имеют вес, будучи примененными на практике. Данное требование проверяет как раз практические умения Junior'а. Администрацией индивидуально отсылается условие задания, которое необходимо выполнить за какое-то определенное время. Задание будет несложным: или спроектировать структуру классов или алгоритмическая задача либо же задача на работу с API/технологией.
Важно: Вопросы насчет статьи и задачи можно задавать в комментариях на странице Вашей квалификации (не перепутайте с публичной страницей описания), на которую можно зайти из ссылки на профиле в блоке Квалификации.
Ждем Ваших комментариев и отзывов.