JavaRush /Java блог /Random UA /Тернистий шлях від автостопника до автоматизатора
Руслан Ш.
23 рівень
Москва

Тернистий шлях від автостопника до автоматизатора

Стаття з групи Random UA
Всіх вітаю! Поки є вихідні, можу трохи описати свій шлях, який привів мене до професії QA Automation Engineer. Тернистий шлях від автостопника до автоматизатора.Шлях цей був дуже довгий і довгий. Почалося все у далекому 2014 році. Мені 28, я щасливий балбес-мандрівник, вже кілька років мандрую автостопом і бюджетно різними країнами, підробляю випадковими заробітками (відеозйомками, торговим посередником), в деяких місцях осідаю надовго і знаходжу роботу, пов'язану з туризмом та туристами. Вільне життя мені подобалося, але тут настав кінець 2014 року: криза та падіння рубля. Російськомовні туристи зникли надовго, і я зрозумів, що ця сфера сильно залежить від купівельної спроможності людей, у тому числі від локальних і глобальних криз. І я почав думати: чим же таким цікавим я міг би зайнятися, щоб на цей вид діяльності не сильно впливали всі ці "світові катаклізми"? На той момент, у мене була вагітна дружина, долар коштував близько 90 рублів і заощаджень, які у нас були, вистачало лише на пару-трійку місяців. Мені завжди подобалися комп'ютери, технології. Я навіть сам трохи вивчав програмування на Delphi після школи, але далі калькулятор справа не пішла. І ось через багато років я знову подумав про IT-сферу. Я зрозумів, що це величезний ринок, який зараз зростає шаленими темпами. Він не настільки сильно залежить від світових криз, і це саме та сфера, яка мені також цікава, окрім подорожей та туризму. Я почав вивчати ринок, читати статті, дізнався, які мінімальні навички та знання потрібні, щоб влаштуватися на джуніор позицію Java-розробника. Випадково знайшов сайт javarush і перші 10 рівнів були пройдені за тиждень. Такий формат мені сподобався, тому що я запам'ятовую інформацію найкраще за допомогою практики, а її тут було достатньо. Користуючись акцією під Новий Рік, набув "довічної передплати" в січні .]. До весни 2015 року я дійшов до 20 рівня, заощадження добігли кінця, і нам довелося повернутися до Росії. Після повернення я став готуватися до співбесід. Пройшов додатково курс з HTML & CSS, навчився верстати сторінки та сайти, додавати найпростіші JS-скрипти. Але після першого десятка співбесід моя мотивація впала. Я сходив ще на пару десятків співбесід, щоб зрозуміти свої прогалини у знаннях. І виявив, що моїх знань мало для роботодавця на той момент. Тому я на довгий час забив на навчання та на мрію про зміну професії. На той час якраз народився син, треба було забезпечувати сім'ю, тож "часу на розгойдування" вже не залишилося. Вимушено пропрацював у сфері оптової та роздрібної торгівлі, складів та логістики до 2018 року. І лише до цього моменту зрозумів, що мрію про програмування та роботу в ІТ — рано поки що кидати. Я виявив, що моїх знань може виявитися достатньо для розробки автотестів на Java і QA роботи. І тоді я вирішив дати другу спробу змінити свою діяльність. Щоб отримати мінімальний досвід роботи, я влаштувався асесором-тестувальником в Яндекс. Ми займалися ручним тестуванням різних додатків, знаходабо баги, описували їх, складали тест-кейси та чек-листи. Оплата була відрядною та невисокою, але досвід був ціннішим. До осені 2019 я пропрацював асесором, принагідно читаючи книги, і вирішуючи завдання на Javarush. У жовтні 2019 року я звільнився і вирішив ходити на співбесіди доти, доки мені не запропонують оффер. Подумав, що якщо я зараз не зможу, то на третю спробу мені вже не вистачить духу. Склав резюме, оновив його: тепер у графі "Досвід роботи" красувався запис про рік практичного досвіду з ручного тестування веб, мобільних та десктоп додатків. Можливо, цей досвід і не зовсім "за профілем", але він дозволяв виділити моє резюме із сотень подібних, і мене стали частіше кликати на співбесіди. Позицію автоматизатора я тоді навіть не розглядав серйозно спочатку. Думав пропрацювати рік-два на посаді manual тестувальника, а потім дивитися у бік автоматизації тестування та інших напрямків. Але доля вирішила інакше. Я продовжував ходити співбесідами всю осінь і початок зими. У грудні моя мотивація знову почала зникати, я намагався і посилено готувався, знав теорію тестування, розібрав усі популярні питання щодо java-співбесід. Але поки що була тиша. Тільки до кінця грудня я отримав перший оффер на позицію мануального тестувальника до однієї з великих аутсорс компаній. Я вже оформлював документи, радіючи, що встиг до Нового року, але в останній момент замовник передумав брати співробітника на проект, або старт проекту відклали. Мені порадабо поки що пошукати сторонні варіанти. І тут мені зателефонували ще з однієї аутсорс-компанії і запропонували пройти у них внутрішні курси за напрямом автоматизації тестування на java. Для цього потрібно було пройти невеликий тест на знання мови. який був дуже схожим на ораклівську сертифікацію "OCA". Після проходження тесту, які пройшли його, очікувало внутрішнє навчання. Воно складалося з циклу лекцій та домашніх завдань, в рамках яких ми в короткий термін написали кілька утиліт, познайомабося з JDBC, rest assured, soap, і написали свій невеликий фреймворк на Селеніумі. І за результатами всіх завдань кількох людей прийняли до штату. Так що прямо під Новий рік: мені 33 роки і я отримую оффер на позицію "Інженера з автоматизації тестування". Також я на своєму досвіді дізнався, що проходження співбесід, допомога у навчанні програмування та написання різних програм та утиліт у рамках стажування на порядок збільшують швидкість навчання та підвищують мотивацію. Особливо, коли ти бачиш результат своєї роботи і знаєш, що можеш застосувати це в реальному проекті. На даний момент випробувальний термін пройдено, я 5-й місяць займаюся підтримкою фреймворку і написанням автотестів на java і cucumber, на одному з проектів замовника. Робота мені подобається, особливо менший рівень відповідальності порівняно з розробниками, звідси менший рівень стресу. Я написав інструкцію до конфлюенсу щодо входу в проект для новачка. З проектом більш-менш розібрався, багато чого з коду колись доведеться рефакторити (МБ і мені), але це залежить від того, як скоро я перейду в інший проект. Дні йдуть за днями, одна тяга в джирі за іншою, і мені подобається те, чим я тепер займаюся. Я допомагаю спростити та полегшити підтримку якості продуктів, автоматизувати деякі процеси всередині компанії, зняти навантаження постійного регресійного тестування з функціональних тестувальників та обов'язків з написання авто та api тестів з розробників. Шлях вийшов важким і довгим, але того вартий. Що буде далі – я не загадую. Може розвиватись у напрямку SDET, а може вирішити піти в розробники ПЗ — життя покаже. Усім, хто прочитав усе це, можу лише побажати не здаватись. Якщо вирішабо щось змінити в житті, то йдіть до кінця, навіть якщо трапляються тимчасові затримки та перешкоди на дорозі. Поради наостанок: я 5-й місяць займаюся підтримкою фреймворку та написанням автотестів на java та cucumber, на одному з проектів замовника. Робота мені подобається, особливо менший рівень відповідальності порівняно з розробниками, звідси менший рівень стресу. Я написав інструкцію до конфлюенсу щодо входу в проект для новачка. З проектом більш-менш розібрався, багато чого з коду колись доведеться рефакторити (МБ і мені), але це залежить від того, як скоро я перейду в інший проект. Дні йдуть за днями, одна тяга в джирі за іншою, і мені подобається те, чим я тепер займаюся. Я допомагаю спростити та полегшити підтримку якості продуктів, автоматизувати деякі процеси всередині компанії, зняти навантаження постійного регресійного тестування з функціональних тестувальників та обов'язків з написання авто та api тестів з розробників. Шлях вийшов важким і довгим, але того вартий. Що буде далі – я не загадую. Може розвиватись у напрямку SDET, а може вирішити піти в розробники ПЗ — життя покаже. Усім, хто прочитав усе це, можу лише побажати не здаватись. Якщо вирішабо щось змінити в житті, то йдіть до кінця, навіть якщо трапляються тимчасові затримки та перешкоди на дорозі. Поради наостанок: я 5-й місяць займаюся підтримкою фреймворку та написанням автотестів на java та cucumber, на одному з проектів замовника. Робота мені подобається, особливо менший рівень відповідальності порівняно з розробниками, звідси менший рівень стресу. Я написав інструкцію до конфлюенсу щодо входу в проект для новачка. З проектом більш-менш розібрався, багато чого з коду колись доведеться рефакторити (МБ і мені), але це залежить від того, як скоро я перейду в інший проект. Дні йдуть за днями, одна тяга в джирі за іншою, і мені подобається те, чим я тепер займаюся. Я допомагаю спростити та полегшити підтримку якості продуктів, автоматизувати деякі процеси всередині компанії, зняти навантаження постійного регресійного тестування з функціональних тестувальників та обов'язків з написання авто та api тестів з розробників. Шлях вийшов важким і довгим, але того вартий. Що буде далі – я не загадую. Може розвиватись у напрямку SDET, а може вирішити піти в розробники ПЗ — життя покаже. Усім, хто прочитав усе це, можу лише побажати не здаватись. Якщо вирішабо щось змінити в житті, то йдіть до кінця, навіть якщо трапляються тимчасові затримки та перешкоди на дорозі. Поради наостанок:
  • не будьте як я ;) вивчіть Java Core краще, як мінімум до 30-40 рівня javarush, потім буде набагато легше на стажуванні або у випробувальний термін;
  • GIT обов'язковий, є багато різних безкоштовних обучалок + обов'язково почитайте про Maven і Gradle, це основні інструменти на проекті;
  • хоча б на базовому рівні освойте SQL запити;
  • також важливе знання HTML+CSS+JS. Хоча б на базовому рівні;
  • Spring фреймворк, тут досить зрозуміти концепцію контексту з бінами.
PS: Якщо що, запитуйте, відповім у коментарях, а щось може додам в основний текст, тому що деякі моменти і нюанси просто забув описати під час написання даного тексту.
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ