Привет, Хабр! Oracle ушел, а сертифицироваться Java‑разработчикам где‑то нужно. Мы с партнерами решили занять освободившуюся нишу, и у нас это получилось. В этой статье расскажем о том, как мы создали аналог сертификации для джавистов, докрутили концепцию, а также дадим рекомендации, как подготовиться к тестированию, и поделимся полезными материалами.
Что из себя представляет сертификация?
Многие Java‑разработчики сдавали сертификацию Oracle Certified Professional: кто‑то, чтобы подтвердить свою квалификацию, кто‑то — чтобы аргументировать повышение грейда и ЗП, кто‑то — чтобы упростить процесс прохождения job interview и выгодно отстроиться от других кандидатов. Когда вендор ушёл, мы в IBS поняли, что у нас, экспертов нашего учебного центра, достаточно компетенций и опыта (мы обучили и протестировали около 11К специалистов) для того, чтобы занять освободившуюся нишу. Russian made аналогов не было, и мы, заручившись поддержкой сильных игроков IT‑рынка — фонда «Сколково» и команды Axiom JDK, поставщика российской платформы Java, разработали свою систему независимой оценки квалификации джавистов.
Сейчас мы успешно запустили сертификацию трех уровней: «Базовый», «Специалист» и «Продвинутый». Первая сертификация ориентирована на Junior‑разработчиков; успешная сдача экзамена подтверждает, что специалист имеет представление о фундаментальных аспектах Java, умеет анализировать информацию, решать базовые задачи. Мы не будем останавливаться на этой первой ступени сертификации в этом материале и больше расскажем о двух других уровнях.
Вторая сертификация предназначена для разработчиков Middle‑уровня, с приличным практическим опытом, знанием основ и прикладных аспектов для создания кода любого проекта. В рамках этой сертификации мы проверяем 15 компетенций — по пять вопросов на каждую компетенцию. Итого: 75 вопросов, 3-часовой экзамен в offline‑формате. Третья сертификация — «Продвинутый» уровень — предназначена для Senior‑разработчиков с большим опытом. Здесь мы проверяем знания Java‑классов, Generics и коллекций, Java Stream API и других углубленных тем. Формат, количество вопросов и продолжительность экзамена — те же, что и у уровня «Специалист». Стоит сделать пару общих замечаний:
чтобы получить сертификат, нужно ответить правильно на 70% вопросов;
все на русском языке;
сертификацию проводим по 11-й версии Java;
срок годности сертификата: 3 года.
Для offline‑формата нам, конечно, нужны площадки. Сегодня все желающие могут пройти экзамен в трех городах: Москве, Петербурге и Омске. Но мы мобильны: у IBS есть офисы в 13 локациях (Мск, СПб, Омск, Н. Новгород, Ульяновск, Новочеркасск, Пенза, Пермь, Таганрог, Барнаул, Белгород, Вологда, Уфа), а еще мы всегда готовы организовать выездное тестирование, если в определенном месте наберется достаточная группа желающих.
Особенности самой сертификации и списки тем
В отличие от сертификации Oracle в наш экзамен входят вопросы, которые проверяют уровень владения фреймворками модульного тестирования JUnit, другими востребованными инструментами типа сборщика Maven, систем контроля версий Git, каркасом Spring или технологиями JPA и JDBC. В экзамене уровня «Продвинутый» также есть вопросы про REST‑сервисы, Docker‑контейнеризацию, масштабирование через Kubernetes и т. д. То есть мы сертифицируем не просто знание языка, но и степень владения современным прикладным инструментарием для Java‑разработки.
Эксперты учебного центра IBS считают, что секрет успеха сдачи экзамена заключается в наличии у специалиста «интуиции кодера». Выучить всю профессиональную литературу, посмотреть туториалы на youtube и пройти курс Саймона Робертса недостаточно, чтобы ответить правильно на 70% вопросов сертификации. Крайне важно иметь практический опыт, набитые шишки, чутье, которое не дается от природы, а нарабатывается годами кодинга.
Теперь расскажем о темах, которые охватывают сертификации разного уровня. Как мы упоминали, количество тем в экзамене уровня «Специалист» — 15, количество вопросов — 75:
Основы языка Java
Типы данных
Операторы и структуры ветвления
Создание и применение массивов
Работа с циклами
Методы и инкапсуляция
Наследование
Обработка исключений
Избранные классы библиотеки Java API
Основы git и сборка проектов с помощью Maven
Основы баз данных
Spring Boot
Основы JPA/Hibernate и Spring Data
Spring REST
Основы модульного тестирования
Модульная система
Безопасность
Сначала у нас была идея сделать сертификацию на уровень «Специалист» обязательной для тех, кто планирует сдавать экзамен на «Продвинутый» уровень. Но затем мы от этой задумки отказались, т. к. на рынке есть большая доля Senior‑разработчиков, которые захотят проверить свои компетенции сразу на «Продвинутом» уровне, однако все равно рекомендуем всем джавистам сначала сдавать экзамен на «Специалиста». Для удобства тех, кто готовится к сертификации, мы разработали методичку. Скачать ее можно по ссылке.
Темы, которые включает тестирование на «Продвинутый» уровень, 18:
Фундаментальный дизайн Java‑классов
Углубленный дизайн Java‑классов
Настраиваемые дата‑типы (Generics) и коллекции
Лямбда‑выражения и функциональные интерфейсы
Java Stream API
Исключения и проверка инвариантов
Java SE 8 Date/Time API
Основы ввода/вывода в Java
Java File I/O (NIO.2)
Java Concurrency
Работа с базами данных через JDBC
Локализация
Продвинутые вопросы применения REST‑сервисов
Подходы и паттерны разработки микросервисов на Java
Брокеры сообщений
Продвинутые вопросы применения Spring
Безопасность для REST‑сервисов с помощью Spring Security
Принципы SOLID и шаблоны проектирования
Оптимизация и мониторинг JVM
Лайфхаки от экспертов
А теперь делимся с вами лайфхаками экспертов учебного центра IBS, которые участвовали в разработке сертификации:
кодеры часто сразу ныряют в код, не уделив должного внимания тексту задания, — не делайте так, внимательно прочитайте вопрос (!);
если вы встречаетесь в задании с чрезмерно сложным, «византийским» кодом, он, вполне возможно, содержит обращения к переменным за пределами их видимости, синтаксические ошибки, недостижимые операторы;
вопросов, требующих «поломать голову», нет: в сертификации 75 заданий, которые нужно решить за 180 минут, вы бы просто не успели решить очень сложные кейсы;
решайте задания поступательно, по порядку, так, как они даются;
не перескакивайте вопросы с мыслью «вернусь к ним позже» — у вас не будет времени к ним вернуться;
интуиция — ваш первейший и вернейший друг;
код может быть каверзным, но это не значит, что мы выискивали редкие и заковыристые казусы для экзамена. Мы используем только те кейсы, которые регулярно встречаются в работе, и да, среди них есть сложные;
не поддавайтесь искушению сразу перепроверять вычисления — оставьте этот этап на ревью.
Больше информации вы сможете найти на сайте проекта сертификации. Если у вас остались вопросы, смело пишите их в комментариях к этой статье. Спасибо за внимание!
Комментарии (17)
VovkaSOL
00.00.0000 00:00Из своего опыта сдачи 819 экзамена: чтобы уложиться по времени на сертификации Oracle Professional по J11 приходится сначала читать ответ, а потом только вопрос и код. У вас почему то рекомендация сначала вчитываться в код.
Плюс у Оракла была возможность сдавать экзамен удаленно с постоянно включенной камерой, не только в центрах сертификации
Spartak13
00.00.0000 00:00+3Мой опыт говорит (понятно, что это легко может быть ошибкой выжившего), что в России в сертификаты не очень смотрят, поэтому получать такой сертификат или нет - решает каждый сам
HundurGarmson
00.00.0000 00:00+9>а сертифицироваться Java-разработчикам где-то нужно
а давайте мы сами решим нужно нам это или нет
Filex
00.00.0000 00:00Про цены ничего не написали
IBS_habrablog Автор
00.00.0000 00:00Информацию о ценах можно найти на сайте проекта: https://ibs-training.ru/certification/java/#mainInfo Посмотрите, пожалуйста.
DavidRenoir
00.00.0000 00:00офтоп. а по другим продуктам что-нибудь аналогичное появилось? в частности по субд Oracle или даже Mysql?
aploskov
00.00.0000 00:00Лютая мешанина из различных тем. Гит и k8s можно отдельно, не только Java-разработчикам полезно.
Valeriya_Bel
00.00.0000 00:00Мы не планируем останавливаться на трёх уровнях сертификации. Будем дорабатывать сам продукт, актуализировать его и внедрять новые фичи.
Hivemaster
00.00.0000 00:00+7В отличие от сертификации Oracle в наш экзамен входят вопросы, которые проверяют уровень владения фреймворками модульного тестирования JUnit, другими востребованными инструментами типа сборщика Maven, систем контроля версий Git, каркасом Spring или технологиями JPA и JDBC. В экзамене уровня «Продвинутый» также есть вопросы про REST-сервисы, Docker-контейнеризацию, масштабирование через Kubernetes и т. д. То есть мы сертифицируем не просто знание языка, но и степень владения современным прикладным инструментарием для Java-разработки.
То есть вы сертифицируете не на знание Java, а на соответствие вашим представлениям о среднем программисте. Вашу сертификацию могут не пройти крутые профи, знающие Java от и до, но пишущие мрачный банковский легаси на JEE или суровый хайлоад на Netty, не применяющие Docker и Kubernetes, так как в их компании этим занимаются админы, использующие Gradle вместо Maven и т.д. и т.п.
IBS_habrablog Автор
00.00.0000 00:00Наши представления о среднем программисте основаны на результате анализа текущих запросов в российской IT-отрасли на уровень квалификации сотрудников. Мы проверяем компетенции и навыки, которые востребованы на рынке.
Hivemaster
00.00.0000 00:00+1Рынок ИТ динамичен, его потребности постоянно меняются. Поэтому у вашего сертификата срок годности 3 года, а оракловый вечен.
MaximIs
00.00.0000 00:00+1Конечно, лучше бы разделить сертификацию по java от, например, spring, но в любом случае это намного лучше, чем совсем ничего!
Necessitudo
А зачем нужны сертификаты которые нигде кроме России не актуальны?
SnowBearRu
Предположу: что бы как то выровнять выпускников курсов "войти в IT"
aleksandy
Ниша на рынке освободилась, денежку же собирать кто-то должен.
sighbernaut
Из того факта, что предложенное решение не актуально --- пока что --- за пределами РФ, отнюдь не следует, что оно в принципе не может быть востребованным. Разве России не нужны грамотные специалисты, чья компетенция документально подтверждена?