Про сокири та капусту

Роздуми про те, звідки береться бажання здати сертифікацію AWS Solutions Architect Associate.

Мотив перший: «Сокори»

Один із найкорисніших для будь-якого професіонала принципів «Знай свої інструменти» (або в одній із варіацій «точи пилу»).

Ми в хмарах вже давно, але до певного часу це були просто монолітні програми з базами, розгорнуті на інстансах EC2 - дешево і сердито.

Але поступово нам стало тісно у межах моноліту. Взяли курс на розпил у хорошому сенсі – на модулярізацію, а потім і модні нині мікросервіси. І дуже швидко на цьому ґрунті «розквітають сто квітів».

Та що там далеко ходити – проект логування активності, який я зараз веду, включає:

  • Клієнтів у вигляді різноманітних програм нашого продукту – від глухих куточків дрімучого легасі до ультрамодних мікросервісів на .Net Core.
  • Черги Amazon SQS, які складаються логи про те, що відбувається з клієнтами.
  • Мікросервіс на .Net Core, який дістає повідомлення з черги та надсилає їх до Amazon Kinesis Data Streams (KDS). Має також Web API інтерфейс та swagger UI як дублюючий канал та для ручного тестування. Повертається в докерівський linux-контейнер і хоститься під керуванням Amazon ECS. Передбачено autoscaling у разі великого потоку логів.
  • З KDS дані пожежними шлангами направляються в Amazon Redshift із проміжними складами в Amazon S3.
  • Операційні логи для девелоперів (дебаг-інформація, повідомлення про помилки тощо) форматуються в приємному оці JSON і відправляються в Amazon CloudWatch Logs

Про сокири та капусту

Працюючи з таким зоопарком сервісів AWS, хочеться знати, що є в арсеналі і як це краще використовувати.

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

І тут поруч з'являється заможний сусід, у якого чортова хмара різних інструментів: електропили, цвяхи, шуруповерти і бог знає що ще. Все це багатство він цілодобово готовий здавати в найм. Що робити? Варіант взяти сокиру і розкуркулити ми відкидаємо як політичну безграмотну. Найрозумнішим буде вивчити, що там за інструменти, як вони можуть доповнювати один одного на різних роботах і на яких умовах здаються.

Оскільки для мене цей мотив був головним, підготовка була побудована відповідно – знайти фундаментальне керівництво та ретельно його вивчити. І таке керівництво було знайдено. Книга написана сухувато, але навряд чи це може відлякати людей, які вчили матан Фіхтенгольцем.

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

Важливий момент: я навчався за книгою 2016 видання, але в AWS все змінюється досить динамічно, тому шукайте найсвіжіше видання, яке буде на момент підготовки. Наприклад, у пробних тестах часто постають питання про availability та durability різних класів S3 та Glacier, але деякі з чисел змінилися порівняно з 2016 роком. Крім того, додалися нові (наприклад, INTELLIGENT_TIERING або ONEZONE_IA).

Мотив другий: «65 відтінків помаранчевого»

Напружене мислення потребує певних зусиль. Але не секрет, що багато програмістів відчувають мазохістське задоволення від головоломних завдань, питань та іноді навіть іспитів.

Думаю, це задоволення багато в чому схоже на гру в «Що? Де? Коли? або, скажімо, гарної партії у шахи.

У цьому сенсі нинішній іспит AWS Solutions Architect Associate дуже непоганий. Хоча під час підготовки серед перевірочних питань іноді зустрічалися «зубрильні», типу «Скільки максимум elastic IP адрес можна мати в VPC» aбо «Якою є availability S3 IA?», на самому екзамені таких не траплялося. По суті, практично кожне з 65 питань являло собою міні-завдання на проектування. Ось досить типовий приклад із офіційної документації:

A web application дозволяє customers до upload orders до S3 bucket. За результатами Amazon S3 events trigger на Lambda функція, що подає повідомлення на SQS queue. У одному EC2 включення повідомлень повідомлень від клопоту, процеси ним, і магазини ним в dynamodb table partitioned by unique order ID. Наступний місяць трафіку є спрямований на збільшення в factor 10 і Solutions Architect є оцінкою архітектури для можливих проблемних проблем. Which component is MOST likely to need re-architecting to able to scale to accommodate the new traffic?
A. Lambda функція B. SQS queue C. EC2 instance D. DynamoDB table

Наскільки я знаю, минулий варіант іспиту містив 55 питань, і на нього виділялося 80 хвилин. Зважаючи на все, над ним непогано попрацювали: тепер там 65 питань і 130 хвилин на них. Час у перерахунку на питання збільшився, але при цьому прохідних питань практично немає. Над кожним доводилося думати, іноді більше двох хвилин.

До речі, звідси практичний висновок. Зазвичай виграшна тактика швидко пробігтися з усіх питань і відповісти на те, що відповідає відразу. У випадку SAA-C01 це взагалі не працює, помічати прапорцями доведеться практично кожне питання, інакше є ризик не помітити якусь детальку і відповісти неправильно. У результаті я відповідав, витрачаючи хвилину-дві на кожне запитання, а потім повернувся до зафлажкованих і витратив на них 20 хвилин, що залишилися.

Мотив третій: «Якби молодість знала, якби старість могла»

Як відомо, одна з найчастіших причин відмов, які отримують програмісти за 40 – знижена в порівнянні з молоддю здатність до навчання.

Тим часом є відчуття, що в якихось областях у мене здатність до навчання навіть підвищилася порівняно зі студентськими роками – за рахунок більшої посидючості та досвіду, який дозволяє залучати знайомі аналогії для малознайомих питань.

Але відчуття може бути оманливим, потрібний об'єктивний критерій. Підготується до іспиту та скласти його – чим не варіант?

Вважаю, що перевірка вдалася. Готувався я самостійно, і підготовка пройшла досить гладко. Ну так, кілька разів я заснув у гамаку читаючи мануал, але таке може статися з кожним.
Тепер є сертифікат та пристойні окуляри за іспит як ознака пороху у порохівницях.

Ну і небагато про те, що може бути мотивацією, але навряд чи було в моєму випадку.

Не мотив перший: "Капуста"

Існують цікаві дослідження "Forbes" про те, фахівці з якими сертифікатами є найбільш оплачуваними в світі, і AWS SAA там на почесному 4-му місці

Про сокири та капусту

Але, по-перше, що тут є причина, а що слідство? Підозрюю, що хлопці добре заробляють
через певні здібності, і ці здібності допомагають здати сертифікацію. По-друге, мучать сумніви, що комусь платитимуть $130 К на рік поза США, хоч він обсертифікуйся з ніг до голови.

Та й загалом, як відомо, після задоволення нижніх рівнів піраміди зарплата перестає бути головним чинником.

Не мотив другий: «Вимоги компанії»

Компанії можуть заохочувати сертифікації або навіть вимагати їх (особливо якщо вони потрібні для партнерства, наприклад, для входження в AWS APN у випадку Amazon).

Але в нашому випадку виробляється незалежний продукт, окрім того, намагаємось уникнути vendor lock-in. Тож сертифікатів ніхто не вимагає. Похвалять та оплатять іспит на знак визнання певних зусиль – ось і весь офіціоз.

Не мотив третій: «Працевлаштування»

Можливо, наявність сертифікатів буде певним плюсом для отримання роботи, за інших рівних. Але я не маю планів змінювати роботу. Цікаво працювати над складним продуктом, який активно використовує багато новомодні підходи та AWS сервіси. Усього цього вистачає і на нинішньому місці.

Ні, звичайно, випадки різні бувають: за 23 роки в IT я змінював роботу разів у 5. Не факт, що не доведеться поміняти знову, якщо протягну ще років 20. Але битиму – плакатимемо.

Корисне

Насамкінець згадаю ще кілька матеріалів, які я використав у процесі підготовки до іспиту і просто як «точила для пили»:

  • відеокурси плюралізм и cloud guru. Останні, кажуть, особливо хороші, якщо купити підписку з доступом до всіх пробних іспитів. Але в мене як одна з умов гри значилося не витратити на підготовку ні цента, купівля підписки з цим погано поєднувалася. Крім того, я загалом вважаю відеоформат менш щільним з погляду обсягу інформації на одиницю часу. Втім, коли готуватимуться на SA Professional, то швидше за все підписку оформлю.
  • Тонни амазонівської офіційної документації, у тому числі FAQ та WhitePapers.
  • Ну і остання, але значуща штука - перевірочні тести. Знайшов їх за кілька днів перед іспитом і непогано потренувався. Читати там нічого, але онлайн-інтерфейс та коментарі до відповідей хороші.

Джерело: habr.com

Додати коментар або відгук