JavaRush /Java блог /Random UA /Девелопмент через тестування.
zzzz
13 рівень

Девелопмент через тестування.

Стаття з групи Random UA
Я не письменник, я інженер.
Моя історія розпочалася 7 років тому у місті-герої Мінську. Сам я родом з невеликого районного центру в 100 км від столиці РБ, куди і повернувся після отримання диплома спеціаліста з телекомунікацій . На той момент я трохи знав і вмів верстати статичні HTML-сторінки з невеликими домішками JS. Впевненість на той час ще надавали вміння поводитися з PC та навички сліпого набору на RU та EN розкладках. (Так, я був наївний і не обізнаний). Дуже хотілося влаштуватися Web-верстальником. З англійською взагалі була біда: розуміння тексту – pre-intermediate у кращому випадку, а розуміння на слух, розмовний та лист – повне дно. Стимулом не зупинятися у пошуках роботи мрії був величезний обов'язок, повішений на мене державною організацією (навіть за кордон виїхати не міг). Склав слабеньке резюме (знайшов десь у мережі якийсь варіант). Портфоліо в мене не було. Весною резюме розіслав по всіх великих компаніях Мінська. У той же час спілкувався з друзями, однокласниками, знайомими, які вже працювали в IT сфері, чи не потрібен їм юний, дурний падаван, але з дуже шаленим бажанням навчатися всьому новому. Очікування Перших 3 місяців (кінець весни та майже все літо) відповідей не було взагалі. Моя впевненість у правильності вибору вже зникла. З коштів на існування - дохленька зп дружини, якої ледве вистачало на їжу та відшкодування боргу. І ось наприкінці серпня моєму щастю не було межі - 2! компанії відгукнулися на моє резюме. Пропозиції #1: Перший лист був, можна так сказати, ні про що - закид вудки живий я ще чи ні. На мою відповідь, що я все ще шукаю роботу, мені було запропоновано спробувати пройти навчання в компанії протягом 3 місяців (5 днів на тиждень по 6 годин), за підсумками якого буде ухвалено рішення, чи я гідний. Враховуючи моє фінансове становище та віддаленість мого місця проживання від столиці – одразу відправабо цю пропозицію "ф топку". #2: Другий лист виявився запрошенням на співбесіду. Доля? У "офіс" (пару кімнат у якомусь складському будинку, багато з яких на той час мені здалися чимось схожими на актові зали) я приїхав надто заздалегідь (дякую "добре розвиненою" міжміській системі ВІД). До співбесіди на посаду верстальника я так і не дійшов. Щоб мені не муляти очі співробітникам і не чекати на самоті, HR-спеціаліст запропонувала мені спробувати поговорити на посаду QA-інженера . Хто такі тестувальники, я поняття не мав, але дівчата, які проводабо співбесіду, так чарівно розписували всі принади роботи QA-фахівця, що я зважився на розмову. Розмова була не довгою: хвабон 10-15 вони намагалися зрозуміти що я знаю і вмію, ще хвабон 10 вони розписували принади напряму та проект, на який шукають людину. Довгим було тестове завдання: мені дали "потикати" розроблюваний Web-додаток (це я зараз знаю, що це була відтестована версія, в якій були відомі баги, які, власне, я і повинен був знайти). Чи була ця розмова причиною того, що співбесіду на посаду верстальника зі мною перенесли на іншу дату, чи це просто випадковий збіг, але додому я їхав повний вражень і з обіцянкою дівчат зв'язатися зі мною протягом двох найближчих тижнів з результатами нашої бесіди. Ще більш дивовижним був лист із пропозицією позиції junior test engineer, який прийшов уже наступного дня. Зрозуміло, що чекати на співбесіду на верстальника я вже не став, а в тестувальники пішов з надією і вірою, що працюючи в IT вже легше прокачуватися і переміщатися. Як мені розповіли вже через рік – така швидка пропозиція була викликана тим, що я знайшов серйозні баги, які пропустила їхня QA команда. На додачу їм сподобалися мої знання верстки. Кар'єрне зростання, або коли ж? #1. Ще не Junior. Все почалося з випробувального терміну. За умовами контракту – випробувальний термін 3 місяці, з виплатою 50% від домовленої зп (це був мій перший досвід отримання зарплати у конверті :)). Під час випробувального терміну – інтенсивні курси QA інженера. Кожен день 1-2 тестових завдання: додатки в яких потрібно знайти якнайбільше багів. Були й злети та падіння. Щоранку в мене починалося з підйому о 6.00, швидкого сніданку та 2 годинної їзди на ВІД. 9 годин робота з перервою на обід та 2 години зворотної дороги додому. Першої зпілки вистачило на покриття транспортних витрат. Був і не приємний момент: на одному із тестових завдань я дуже сильно "засипався", набрав лише 10% - навіть порушувалося питання про припинення подальшої співпраці. Домовабося ще кілька тижнів потренувати мене, а вже потім ухвалювати рішення. Випробовувальний термін закрабо достроково. За 2 місяці інтенсивних тренувань мене перетворабо на... #2. Junior Test Engineer. Для мене, як для людини, що приїхала з глибинки і до цього працювала на держ. контору, все в IT було на диво. Особливо незвичним було ставлення до компанії до співробітників. Ніхто на тебе не репетує без приводу, у всіх є конкретні завдання, ніхто не контролює тебе по 10 разів на день. Я потрапив до раю... Але в міру зростання моїх навків, я почав опускатися на землю. Все навчання зводилося до тренувань у тестуванні, написання тестових сценаріїв, оформлення багів та вивчення англійської. Загалом завдяки першим пунктам вивчати англійську виходило так собі. Вивчати ж щось у девелопменті взагалі не виходило. Ось таким мені запам'ятався мій перший рік у IT. #3. Test Engineer. Минув майже рік. Приставка junior "відвалилася", трохи зросла зп. За зиму дуже сильно задовбали по 4 години на день витрачати на дорогу. На сімейній раді було ухвалено рішення перебиратися до столиці. До кінця літа винайняли однокімнатну квартиру на околиці у старій хрущовці. По оренді якраз змогли вписатися до мого бюджету на дорогу. Знову життя однією зп, т.к. у дружини пошуки з роботою не клеїлися ще дужче за мої. Пройшла ейфорія від пристрою IT. Завершився "мій" перший проект (до речі, не вдало, прогорів), команду розформували за іншими проектами. Ось тут я повністю відчув, що таке сидіти на "бенче" для тестувальника. Якщо розробник сидячи на "бенчі" прокачує свої скіли, відвідуючи різні курси та переглядаючи різні відео, то "лавка" тестувальників - це повний "треш". Тебе пхають у всі проекти, де потрібна допомога. За тиждень ти можеш взяти участь у тестуванні 2-3 проектів. Почали виявляти негативні емоції... Непомітно підкралася зима... Новий 2011 рік! Через кілька тижнів після НГ, до мене в личку постукав колега, який нещодавно перейшов до іншої контори. Їм на проект був потрібен терміново тестувальник. Він пропонував мені пройти співбесіду. Співбесіда була суто формальною. Запитали чи вмію я писати sql запити, дали 2-3 завдання написання запитів з допомогою JOIN. Запитали яку зп я погодився б перейти до них. Дали на 25% більше – я майже не думав над ухваленням рішення про перехід. Нова компанія, новий проект, великий, я навіть сказав би, величезний. Понад 200 членів команди лише у Мінську. Приємним бонусом виявабося відрядження до Москви та щоквартальні грошові бонуси. Життя почало налагоджуватися, дружина знайшла хоч і не високооплачувану роботу, але до душі. З боргами розраховуватись стало веселіше. У новій компанії знову довелося проходити навчання (яке зайняло 3 місяці), також був випробувальний термін, який закрив уже через місяць. ЗП на випробувальному терміні не урізали. #4. Middle. У різних компаніях цю позицію називають по-різному (middel, senoir, взагалі без приставки), але в більшості це саме серединна позиція. 3+ роки досвіду роботи в ІТ. Мені вдалося закріпитись у галузі. До моєї думки почали прислухатися. З'явилося небагато часу на навчання. Цій компанії я вдячний за курси англійської мови. Після 2-х років занять я став трохи розуміти мову на слух, без проблем читати технічну документацію за проектом, почав розуміти статті в англомовних газетах. Через рік проект закрився, таку велику команду не так легко розмістити за іншими проектами. Розробникам запропонували пройти перепідготовку Java. Т.к. я все одно знаходився на "бенче", мені вдалося вмовити ПМ-а записати і мене на ці курси. Так відбулося моє перше знайомство із Java. Тривало воно не довго – 4 заняття. Причини дві: курс був розрахований на розробників із досвідом роботи 3+ роки, і мене перевели на новий проект. На новому проекті крім ручного тестування, я стикнувся з автоматизованими тестами. Тести писалися на Delphi-script:). Через півроку на новому проекті почали урізати бюджет, я як останній, хто прийшов - став першим, хто пішов. Знову "бенч"... і очікування на поповнення в сім'ї. #5. А як живуть мідли в Європі? Одного з квітневих днів я якось зустрів одне з колег ще за першим проектом. Ми розмовляли. Колега вже рік тому, як працював у Ризі, був дуже задоволений переїздом. Потім жартома запропонував мені написати резюме і передати йому. Я написав якусь нісенітницю (не письменник я, а інженер) на одну сторінку. Через тиждень пролунав дзвінок із не білоруського номера. Мене запрошували поговорити через Skype. Була не була. Розмова велася російською. Просто поспілкувалися за життя. HR з того боку запропонував спробувати пройти співбесіду на новий проект, що стартує. Все пройшло дуже швидко. Через 2 дні розмова з HR: ось тут за моїми знаннями пройшлися "танком", благо російською. Так само перевірабо рівень моєї розмовної англійської. Ще через 2 дні технічна співбесіда - 10 завдань і 30 хвабон часу, все це онлайн (я вдома перед компом, вони натовпом на іншому кінці "дроту"). За тиждень я отримав оферу. Запустився процес оформлення документів. Через місяць я став татом. Ще через місяць я прогулювався старими вуличками Риги і не міг повірити в те, що сталося. Ще 4,5 роки тому я був простим безробітним хлопцем, з величезним боргом перед державою. Так, із боргом вдалося без проблем розрахуватися перед початком оформлення документів. Старт нового проекту дав змогу прокачатися в автоматизації. Т.к. Перші 3-4 місяці тестувати було особливо нічого, керівництво проекту прийняло рішення освоювати автоматизацію Selenium + Nodejs (не надто популярний стек на той час). То я став автоматизатором. за 3 роки на проекті я створив свій фреймворк із нуля, встиг його вже двічі переписати. #6. Lead. На хвилі успішного проекту автоматизації я взяв ще одну висоту. За цей час встиг 2 рази відмовитись від позиції team lead (не люблю я мітинги, мені подобається возитися з кодом). Навчив свого першого падавана:). Провів кілька співбесід на позицію тестувальника. Але все це не те, чого я колись прагнув. Ну як же без його величності, випадку Літом 2016 я випадково натрапив на проект javarush.ru, перших 10 рівнів пролетів за 2 вечора. Апетит приходить під час їжі, тим більше відпустка на носі. О! та тут ще й знижка на рік... Загалом другу десятку рівнів подужав за 2 тижні відпустки у горах. Осінь... Завантаження на проекті, народження другої дитини, оформлення документів, а ще й майбутній апдейт 2.0 – перерва на 3 місяці. АЛЕ! перерва є тільки для javarush, але не для JAVA. Після відпустки я не давав спокою колегам із серверної команди, задаючи їм питання з незрозумілих тем з javarush, показував їм шматки свого коду, розповідав свої логічні рішення, "підглядав" їх код у репозиторії. Моя активність не залишилася непоміченою. Наприкінці листопада лід серверної команди запропонував мені спробувати свої сабо в Java EE на благо проекту. Для початку це були пробні кроки – 1-2 дні на тиждень. Навесні - 50/50 junior java developer/lead test engineer. Весною зібравши всю волю в кулак - мужньо до 2-3 годин ночі продовжив свої битви на полях javarush. Епілог На сьогоднішній день я працюю у проекті середньої величини. 75% часу – я java developer, 25% – test automation engineer. Як бачите, не завжди потрібні портфоліо. У моєму випадку реальна співбесіда була лише одна - при переїзді до Риги. Що стосується вивчення англійської - у Ризі в кінотеатрах фільми йдуть мовою оригіналу, це стало поштовхом до прокачування сприйняття на слух. Дуже багато технічних курсів дивлюся англійською. Мультфільми з дітьми теж намагаємося дивитися мовою оригіналу. У Ризі курсів англійською ніяких не проходив, мову качаю переглядом відео контенту та прослуховуванням подкастів, а також спілкуванням з колегами. Що стосується співбесід (і як випробувач, і як випробуваний) - не намагайтеся надати собі вагу поняттями, в яких плаваєте. Вивести на чисту воду дуже легко, а ось враження про себе зіпсуєте. Краще чесно зізнатися, що з цим матеріалом не стикався, але за потреби все підтягну. Перед співбесідою не полінуйтеся продумати, що ви хочете/збираєтеся розповідати про себе, про свої попередні проекти, про цілі на найближчі 3-5 років. На моїй першій співбесіді питання "ким я себе бачу через 3 роки" поставило мене в безвихідь. Щодо поточного проекту. Проект побудований на Spring технології. Підтримується "зоопарк" СУБД, для їхнього контролю використовується Liquibase (система контролю та версіонінгу БД). Дуже багато інтеграцій із різними системами. На все це мене "занурабо" навіть без найменшого уявлення що таке Spring, Hibernate і т.п. У всьому цьому доводиться знатися на ходу. Паралельно переглядаю відео туторіали, читаючи уривками книги. PS Ця стаття народилася з відповіді на один із коментарів до попередньої success story. Спробувавши почати відповідати, зрозумів, що для коментаря вже забагато. Не бійтеся помилятися.
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ