Зміст
А щоб перекваліфікуватися в автоматизатора, потрібно отримати більше hard skills. QA має цікавитись тим, що відбувається довкола його роботи. Хороший тестувальник завжди ставить багато запитань і намагається розібратися, як працює продукт, зокрема з погляду користувача. Новачки можуть зібрати свою першу продуктову команду ще на курсах. Зі спільними проєктами можна брати участь у грантових site reliability engineer програмах, хакатонах, ідеатонах або просто створити проєкт для портфоліо. ІТ-компанії часто відкривають безкоштовні програми стажувань.
По-третє, від посади — що вища посада, то більше відповідальності, відповідно, вищий оклад. Освіта потрібна, оскільки вона формує коло спілкування серед людей, які можуть стати потенційними колегами чи партнерами. Але не обов’язково, щоб це була саме комп’ютерна інженерія або прикладна математика.
Git – розподілена система контролю версій, якою користуються розробники задля фіксування свого прогресу та простішого ведення спільного розроблення. Це фундаментальний інструмент, який ви маєте знати, аби відстежувати та керувати кожною зміною у вихідному коді та інших файлах. Docker Hub – репозиторій (вебсховище), де розташовані docker-контейнери. З його допомогою розробники можуть завантажувати свої та скачувати контейнери інших девелоперів, аби потім використати у своїх цілях. Також треба вміти писати bash-скрипти для автоматизації різних процесів – від резервного копіювання даних до налаштування середовища розроблення.
Мова піде про добірку колективної мудрості від експертів з різних галузей на тему Site Reliability Engineering. Про задачі з якими зустрічається SRE-інженер та про те, чому цю роботу не можна назвати рутинною. Як показує аналітика з сайту вакансій Djinni, зарплатна вилка для цієї професії коливається від $6000 до $8000 на місяць. В Україні ця область поки що не дуже насичена пропозиціями. Але SRE потрібні в таких компаніях як Intellias, Infopulse та Raiffeisen Bank.
Важливо поставити правильні пороги, щоб не вийшло так, що на команду сиплються алерти, що не існують. У такому разі можна пропустити щось важливе, що спричинить збій. Погодьтеся, краще заздалегідь дізнаватися про передумови інцидентів і діяти на випередження, ніж отримати повідомлення, коли все лягло. На ньому команда обговорює, що вдалося, а що ні, що варто змінити й кому подякувати. У результаті цього мітингу формується список дій для покращення робочого процесу.
Девопс, який займається усім, зокрема збіркою CI/CD, не буде такий ефективний. Має достатній набір навичок для того, щоб бути автономною одиницею в рамках більшості задач, а також релевантний досвід, який допоможе попередити деякі помилки на етапі планування. Також я зустрічав думку, що мідл здатен менторити джунів, але я б не сказав, що це буде повноцінний менторинг — радше інструкції для конкретних проєктів.
Як я згадував раніше, DevOps складається з різних аспектів — таких собі точок відповідальності, з якими ви або працювали, або ще будете працювати. Якщо ви — вже досвідчений зубр DevOps — у такому випадку варто підписатися на CNCF, Hashicorp, Monitorama конференції й чекати апдейтів. Якщо ви — DevOps Manager — в такому випадку конференція DevOps Days саме для вас. Для поліпшення коду і рішення можна показати свої напрацювання хлопцям зі спільноти ukrops.club — завжди дуже цінні подарунки, поради, вектори розвитку.
В інтернеті є дуже багато навчального базового контенту на цю тему й поріг входу дуже низький. Майже завжди йде після CI та відповідає вже за саму доставку готового продукту до користувача чи на клієнтську інфраструктуру. При налаштуванні CD також знадобляться знання Linux, як і знання мережі та різних протоколів (SSH, SFTP, WINRM чи банальні bastion-сервера). Тут також потрібні знання Docker, Ansible чи популярний на сьогодні Helm. Щодо софт скілів, важливо розуміти, що системний адміністратор — фахівець, який не може бути ізольованим у компанії та професійному середовищі. Йому постійно доводиться спілкуватися з людьми, тому інтровертність доведеться побороти.
Хоча, звісно, така освіта буде плюсом, бо дасть вам базу — як теоретичну, так і практичну. Звісно, заробітна плата може відрізнятися в залежності як від типу вашого досвіду (сапорт, білд-інженер, SRE тощо), так і від швидкості сприймання інформації. Тобто реально стати Senior чи Architect після 3-4 років, але це радше виключення, ніж правило. Часто зустрічаються позиції начебто DevOps-інженера, але насправді це підтримка вже готового продукту або доробляння і виправлення багів за кимось. Таке часто трапляється, коли компанія розробила продукт зі своїми інженерами, а, менш важливий функціонал віддає доробляти в країни, де менша вартість роботи, щоб заощадити кошти.
Тож заходите в YouTube і шукаєте базові речі по CI/CD. Потім переходите до наступних тем, і так можна рухатися до того моменту, коли ви будете мати загальне розуміння всіх аспектів. Вибирай свій варіант підписки залежно від завдань, що стоять перед тобою. Але якщо потрібно пройти повне навчання з нуля до рівня фахівця, краще вибирати Базовий або Преміум.
Automation QA повинен вміти все те, що і мануальник, а ще знати мову програмування та вміти писати автотести. Також у GameDev для рядового QA-інженера важливо принаймні базово розуміти сертифікаційні вимоги до ігор на різних платформах, а також вимоги щодо продуктивності та використання пам’яті. Детальніше — читайте у матеріалі «Хто такий QA в ігровій індустрії».
Відповідно, DevOps Engineer – це інженер, який використовує навички як з царини розроблення, так і зі сфери експлуатації та операційної підтримки. По суті, він підтримує розроблення, деплоїть продукт (запускає на сервері, хостингу) та тестує його працездатність, а також підтримує середовища, де розташовано задеплоєний продукт. Якщо хочеться розвивати комунікативні навички, то далі можна рухатися в бік менеджменту. Якщо ж технічні — то SDET, AQA, Security/Performance, Development тощо. Якщо це комбінація навичок, може бути напрям Head/Lead».
Важливо не лише прийти до розробників та сказати їм, що щось потрібно переробити. Manual QA Engineer перевіряє вручну програмне забезпечення, чи відповідає воно вимогам, виявляє дефекти та помилки. Мануальники аналізують і покращують процес тестування. Вони перевіряють ПЗ і з погляду розробки, і з погляду клієнта, контролюють його якість. Майбутнім абітурієнтам, які обирають професію та планують, де вчитися, в пригоді стане докладна покрокова інструкція «Вступ» від Education.ua.
Робота в кращіх IT командах https://wizardsdev.com/