На прошлой неделе, пятого ноября 2015, года в компании Evercode Lab появился первый Symfony Certified Engineer. В этом посте я хотел бы рассказать подробнее про экзамен и процесс подготовки к нему.
Официальный релиз Symfony 2.0 состоялся в июле 2011 года. В сентябре этого же года появилась наша компания, и именно этот фреймворк мы выбрали в качестве основного нашего инструмента. Прошло уже 4 года, Symfony2 до сих пор лежит в основе большинства наших проектов. У редкой компании в России помимо нас есть настолько же долгий и глубокий опыт работы с этим фреймворком.
Желание сдать сертификацию у нас появилось практически сразу после её анонса в 2012 году, но время на это нашлось далеко не сразу. До моей попытки сотрудники Evercode Lab пробовали пройти сертификацию в общей сложности 3 раза. К сожалению, эти попытки не были успешными.
Сертификацию мы хотели пройти по следующим простым причинам:
- глубже изучить фреймворк в процессе подготовки
- проверить и подтвердить уровень собственных знаний
- получить возможность участия в партнерских программах SensioLabs
- иметь более официальное подтверждение своего уровня знания технологии перед клиентами, в том числе и зарубежными
Свой ваучер на сертификацию я купил ещё в конце 2014 года. Но дату прохождения назначил только в сентябре 2015, когда вспомнил, что действует ваучер всего год. Ваучер покупается на сайте SensioLabs, а дальше регистрируется в системе Pearson VUE. Инструкции довольно простые и понятные. В случае каких-либо сложностей поддержка SensioLabs отвечает на любые вопросы и активно помогает.
Стоит отметить, что в последнее время в компании я программирую очень редко. Большую часть моего времени занимает управленческая работа, общение с клиентами, сотрудниками и деятельность мало связанная с кодом. Тем не менее, я до сих пор почти каждый день смотрю в чужой код, делаю code review, помогаю сотрудникам, участвую в обсуждениях архитектуры или каких-либо сложных задач. Решение пройти сертификацию самому в том числе продиктовано желанием вдохновить остальных сотрудников, проверить сложность экзамена и подготовки на себе.
При подготовке к экзамену я использовал следующие материалы и ресурсы:
- книга “Symfony Certification. Unofficial self-study guide”
- книга “A Year With Symfony”, про неё мы уже писали в нашем блоге
- The CLI tool to train certifications
- The Symfony Book
- The Symfony Cookbook
- документация компонентов The Symfony Components
- Twig Documentation
- Доска в trello Learn for Symfony Certification
- Базовая информация о самой сертификации на сайте SensioLabs
Подготовку я начал ещё в августе с очень неспешного прохождения тестов в Unoficial self-study guide. Далее, в середине сентября я перестал успевать уделять этому время. А в конце сентября уехал до конца октября в отпуск, где опять же в рабочие часы занимался более важными делами.
Прохождение тестов из self-study guide
Основная подготовка пришлась на последние полторы недели перед экзаменом. За пару дней я допрошёл тесты из книги, а также изучил все упражнения. В течение трёх дней я проходил тесты с помощью CLI Tool. По всем вопросам, гдя я дал неправильный ответ, я затем изучал документацию.
Экзамен был в четверг. За вторник и среду, преимущественно вечером и ночью, я прочитал полностью Symfony Book, документацию Twig. А также примерно половину материалов Cookbook и документации компонентов по тем темам, где чувствовал наибольшую неуверенность. В ночь перед экзаменом было выпито несколько чашек кофе, а также некоторое количество алкоголя 🙂
Поспав чуть более 4х часов, я бодро отправился в центр тестирования на базе Политехнического университета. Конечно, я немного переживал, но в целом был настроен позитивно, а после старта теста целиком сконцентрировался. Через 90 минут и 75 вопросов тест был окончен. На экране результат мне не отобразился, но администратор тестового центра довольная передала мне распечатанное подтверждение — экзамен я сдал, причем на высший уровень Expert.
“You have successfully passed the SensioLabs Symfony2 Certification Exam as an Expert Symfony2 Developer” #symfony #fuckyeah
— Roma Lapin (@memphys) November 5, 2015
Тест состоит исключительно из вопросов с выбором вариантов ответа. Причём всегда явно указано, нужно ли выбрать один или их должно быть несколько. Для правильного понимания вопросов, на мой взгляд, крайне нужно уверенное знание английского языка. На многие вопросы можно ответить, не зная ответ точно, а из логических соображений.
Уже на следующий день мне написали из SensioLabs, выдав код для бэджика в Sensio Connect. Теперь меня можно найти в списке сертифицированных. Бумажная версия сертификата будет отправлена по почте.
Это был интересный опыт. Насколько сертификация будет нам полезна в бизнесе, посмотрим. Тем не менее, польза для разработчиков очевидна, поэтому постепенно вся наша backend-команда будет проходить этот экзамен.