Розмірковуючи про сертифікацію Microsoft

Добрий день, шановні колеги.

У цій статті, присвяченій сертифікації, ми поговоримо про те, навіщо потрібна сертифікація, яка вона буває у Microsoft, а також розберемо проблеми, які виникають під час процесу складання іспитів на сертифікати.

Навіщо?

Отже, щоб зареєструватися на сертифікаційний іспит Microsoft, необхідно передусім з'ясувати, навіщо це потрібно саме вам. Ідучи від банальних причин, які в принципі недоведені (наприклад, “роботодавці дивляться на кількість сертифікатів” без перерахування цих роботодавців, це гра на деяких секретних знаннях, що стосуються лише певної частини роботодавців), розповім про одну причину, з якої здаю іспити я .

Причина, через яку я вважаю за потрібне для себе складати сертифікаційні іспити – це підтвердження вже існуючої планки знань та умінь чи встановлення нової. Після певного досвіду використання будь-якої цікавої технології часто не хочеться втрачати цей досвід через те, що він не вклався в голові або уклався неструктуровано. Багато людей, навіть маючи за плечима багаторічний досвід, часто не вміють підходити до вивчення нового методично, щоб нові знання не залишилися в межах одного додатка, написаного з їх використанням. Саме тут чудово підходить підготовка та складання сертифікаційних іспитів. Складання іспиту передбачає, що у кандидата вже сформувалася певна стійка база знань, неабияк доповнена реальним практичним досвідом використання (підхід до складання іспитів, що полягає в зубрінні теорії, не витримує критики, оскільки багато питань пов'язано саме зпрактичним досвідом кандидата). Як же її сформувати? Адже навіть професійні розробники часом "плавають" у, здавалося б, основах тих технологій, які вони вивчають. Відповідь дуже проста - налаштуватися на складання сертифікаційного іспиту від вендора.

Налаштувавшись на складання іспиту, сказавши, що “я хочу скласти цей іспит для того, щоб [X]”, де [X] – причина, слід, що логічно, перейти до причини.

Я впевнений, що найважливіша причина добровільної складання будь-яких іспитів повинна формулюватися як “я хочу підтвердити свої знання або побачити, де їх не вистачає”. Статуси – це задоволення зовнішніх клієнтів. Підтвердження знань – для внутрішнього клієнта найголовнішого споживача – вас.

Навіщо це робити? Навіщо підтверджувати свої знання? Навіщо йти в той процес, який у разі IT загрожує стати нескінченним? Для того, щоб не було соромно, коли в резюме є рядок "професійний розробник на WCF з досвідом 5 років", на інтерв'ю ж задають питання типу "як можна зробити так, щоб запити, що надходять до веб-сервісу, виконувались паралельно всередині одного створеного" екземпляра сервісу?”, а відповідь невідома. Хтось може сказати, що “я не стикався із цим, тому не знаю”. або "це сценарій, який швидше за все ніколи не стане в нагоді". Подібні відповіді я чув не раз, і щоразу вони супроводжували незнання базових основ технології. Навіщо знати, що таке Frame Relay, адже їм ніхто не користується? Навіщо знати, що таке msbuild, якщо вже є Visual Studio? Подібні питання постають постійно. І наслідки у них можуть бути такі ж, як незнання того, як зводити будинок, не знаючи, як правильно робити фундамент.

Зрозуміло, що цей підхід часто критикується апологетами швидкого навчання, які стверджують, що,якщо “працював 5 років із продуктом, то легко складеш іспит”. Може, й вдасться здати. Волею нагоди в іспиті без підготовки можуть потрапити ті питання, на які кандидат гарантовано знає відповідь. Але чи вирішує це завдання, заради якого сдається іспит – підтвердити свої знання? З одного боку, вирішує. З іншого боку – прогалини у знаннях так і залишаються пробілами.

Отже, вирішивши з причиною, необхідно перейти до ретельного складання списку літератури, яка може допомогти в складання іспиту як підготовчої, так і часто – документації, наприклад, до API. Наприклад, практично до всіх іспитів Microsoft є спеціальні книги, в яких приймають відомі фахівці, які є, по своїй суті, швидкою "пробіжкою" за технологією з акцентом там, де це може бути корисно. Розглядати їх як єдиний ресурс не варто, швидше - як ресурс на перше прочитання (коли потрібно зрозуміти, де прогалини у знаннях), або, навпаки, як читання в останню ніч. Чудовою особливістю іспитів Microsoft є наявність докладного опису кожного іспиту, включаючи посилання на деяку кількість підготовчих матеріалів і на покупку книг.

Після цього залишається вивчати літературу до останнього дня перед іспитом. Останній день перед іспитом особисто більше нічого не читаю, не готую і навіть не заглядаю в план. Знанням потрібен тайм-аут, щоб укластися.

Як?

Типовим проханням, яке мені задають на всіх курсах, які я веду, є прохання розповісти про те, що таке MCTS, MCPD та інше з ними. Хтось не знає навіть цих абревіатур, хтось знає їх розшифровку, хтось навіть попередньо уявляє, як виглядає сертифікаційний трек, що цікавить. Але багато хто потрапляє в пастку, не читаючи докладно умовиотримання різних статусів. Давайте коротко розглянемо їх та дамо характеристику кожному з відповідних іспитів. Розглядатимемо сертифікаційний трек Web Developer. Отже, вирішено складати сертифікаційний іспит на веб-розробника. Відкривається сторінка Microsoft Learning, починає вивчатися відповідний трек, і тут постає питання – є два статуси, Microsoft Certified Technical Specialist та Microsoft Certified Professional Developer. І там і там необхідно складати іспити. То навіщо здавати на MCTS, якщо можна відразу здати 70-519 (PRO: Designing and Developing Web Applications Using Microsoft .NET Framework 4) і отримати відповідний статус? Помилка криється у термінах. Склавши іспит MCPD, ви… складете іспит MCPD. Складання одного цього іспиту не дає статус Professional Web Developer. Кожен статус рівня Professional складається з набору іспитів MCTS + одного іспиту, що містить питання та кейси безпосередньо професійного рівня. І тільки після складання всіх нижчих MCTS та одного іспиту MCPD кандидат набуває статусу MCPD. І, разом із ним, у кандидата з'являється п'ять статусів – по одному на MCTS та MCPD. Ніяк інакше. Бувають екзамен типу Upgrade, коли можна оновити статус до нової версії продукту.

Це необхідно чітко розуміти.

Відмінності між іспитами MCTS та MCPD полягають в одній великій різниці рівня підготовки кандидата, що відбивається на питаннях у тестах. Так, у MCTS перевіряються як моменти загального призначення (наприклад, для чого призначена та чи інша функція в Windows Server, або вищезгадане питання про запити, що обробляються паралельно), так і речі, що стосуються знання конкретних реалізацій у технології – наприклад, визначення результату тієї чи іншої команди – подібні питання часто містятьсяяк у сертифікаційних треках для розробників, так і треках для ITPro. У іспитах рівня Professional фокус питань зрушується у бік практичного досвіду розробки чи розгортання (у разі ITPro). Крім цього, в іспитах рівня Professional містяться так звані тестлети – окремі семантичні модулі, в яких пропонується вивчити сценарій та відповісти на запитання конкретно щодо цього сценарію. Наприклад, "у вас є розподілена інфраструктура, і кілька філій, в яких потрібно розгорнути N серверів з роллю S" або "ви хочете мігрувати велику корпоративну програму з ASP.NET Web Forms на ASP.NET MVC". Сценарії абсолютно вигадані та спрощені – у реальних іспитах сценарії можуть бути набагато складнішими, і за втіх відповісти правильно можна тільки з випадковості. Тестлети – особливість іспитів Professional, і найскладніша їх частина, оскільки саме в ній може міститися той сценарій, який жодного разу не зустрічався і не вивчався непідготовленому кандидату.

Якщо кандидат здає MCPD, це необов'язково означає, що він зможе здати будь-який MCTS із відповідного шляху на цей MCPD.Це необхідно чітко розуміти.

Проблеми?

3)Моя організація не хоче оплачувати покупку ваучера на іспит. Якщо організація не хоче робити цього, то це не причина не складати іспит, що цікавить. Самоосвіта - це те, що може і повинна робити кожна людина, пов'язана з IT. Підготовка до одного іспиту надає одну велику перевагу – ви у будь-якому випадку дізнаєтесь багато нового у її процесі. Що може бути ціннішим за це?

4)Нескладання іспиту. Це знову ж таки абсолютно нормальна ситуація, яка означає лише те, що необхідно відрегулювати рівень своєї встановленої планки, зрушивши її, наприклад, наНайпростіший іспит з того ж треку або просто взявши додатковий час на підготовку. Необхідно розуміти, що всього знати неможливо, і навіть якщо вивчити всю знайдену документацію, можна зустріти в іспиті несподіване питання, яке може бути просто не зрозуміло через конструкцію мови.