«Написання коду для мене — це акт творіння». Java-розробниця - про те, як свічнулася в ІТ за вісім місяців
Оксана Лащенко — Junior Java-розробниця у GlobalLogic. Через сімейні обставини їй довелося з нуля опановувати нову сферу. Оксана поринула в самостійне навчання, після цього — в пошуки ментора та курсів. І за вісім місяців після входу в ІТ отримала перший офер.
Про свої перші кроки в професію, вибір мови, інтенсивне навчання, підйоми о 4 ранку, щоб здати домашку, онбординг під час пандемії та багато іншого Оксана розповіла в інтерв’ю.
З чого все починалося: «Освоювати нову сферу довелося через трагічні обставини»
Я Java-розробниця. До того як увійти в ІТ, закінчила економічний виш, кілька років працювала менеджеркою та економісткою у приватних компаніях. Ще кілька років суто виховувала дітей.
Освоювати нову сферу довелося через трагічні обставини. Мого чоловіка викрали й убили два з половиною роки тому. Він був топменеджером великої компанії у Харкові. Я залишилась сама з двома дітьми й мала визначитись, як жити далі.
Я хотіла довести своїм дітям та собі, що можу чогось досягти. Маючи за плечима золоту медаль у школі, математичний клас, олімпіади з англійської та фізики, у якийсь момент я присвятила себе тільки сім’ї, бо не бачила перспектив у роботі. Коли чоловік загинув, я стала головою сім’ї. Мені потрібно було змінити вектор і повернутися до себе, до власних бажань і амбіцій. І це було як paradigma shift — фундаментальна переоцінка цінностей.
Та робота, яка була в мене до цього, не могла дати фінансову стабільність і була мені не дуже цікава. Наша сім’я була доволі забезпечена, тож питання грошей не стояло гостро.
Знаєте, деякі знайомі досі вважають, що я могла й не працювати, але я хотіла цього, прагнула жити далі, розвиватись, дати щось своїм дітям.
«До IT я була гламурною блондинкою, яка займалася балетом, фітнесом, а ще математикою»
Коли я опікувалась дітьми, то мала багато хобі. Я була гламурною блондинкою, яка займалася балетом, фітнесом, а ще математикою. Ми з дітьми ходимо на гурток з олімпіадної математики багато років. Я теж сиділа з ними за партою та вирішувала олімпіадні задачі. Завжди любила задачі, тому зрештою і пішла в розробку.
А ще я добре знаю англійську. Коли шукала роботу після вишу, знання мови не було таке потрібне, як сьогодні. І в якийсь момент це стало розчаруванням. Я хотіла працювати в іноземних компаніях, але
Ми з чоловіком багато подорожували, спілкувалися з іноземцями, я дивилась фільми, читала англійською, для мене ця мова була як повітря. При цьому я ніколи серйозно її не вчила. Два роки тому я прийшла з дитиною в International house, щоб перевірити її рівень і заодно свій. Виявилося, що в мене С1. Попри те, що англійська не була ключовою перевагою для отримання першої роботи, думаю, вона мені ще стане в пригоді.
Домашнє навчання: «Чоловік подруги — джавіст, він допоміг мені зробити перші кроки»
Отже, постала потреба вибирати, чим займатися далі. В ІТ багато спеціальностей, я могла швидко зайти в HR, але хотіла займатися саме розробкою. Я вважаю, що розробка — це основа галузі і її найбільша цінність.
Написання коду для мене — це акт творіння. Мені було цікаво. Я спочатку думала, що цього треба багато вчитись, але бачила приклади людей, які зробили це досить швидко. І в якийсь момент моя подруга спитала: «А чому ти не хочеш піти в розробку? У тебе гарна англійська, ти добре знаєш математику». Це був як момент істини. Точно! Як я сама цього раніше не побачила? Я вирішила спробувати.
Чоловік подруги Андрій — джавіст, він допоміг мені зробити перші кроки. Це був жовтень 2020 року. Мені було байдуже, яку мову програмування вчити, Java цілком підходила. Уже пізніше я збагнула, як мені пощастило саме її опановувати. Отже, Андрій дав мені книгу Шилдта англійською — Java: The Complete Reference, Eleventh Edition, сказав завантажити Intellij IDEA, освоїтись на GitHub. Мовляв, ось ще задачі на LeetCode, займайся, якщо будуть питання, я допоможу.
Я почала вчитись. Прокидалась зранку, сідала за підручник і до роботи. І так цілий день. План був такий: почати з теорії, а коли почну орієнтуватися — додавати практику. LeetCode спершу був доволі важкий для мене. Ми списувались кілька разів з Андрієм, і він давав мені поради. Ще в університеті я непогано писала на Pascal, знала основи алгоритмів, умови та цикли, але спочатку програмувала суто в процедурному стилі.
Пам’ятаю, як після двох тижнів навчання взялася розв’язувати задачі з комбінаторики разом з дітьми. Там було багато обчислень, і в якийсь момент я вирішила написати програму з обчислення кількості варіантів розміщення королів на шаховій дошці, щоб вони не били один одного. Це була моя перша програма. Потім я додала можливість введення різних фігур, і програма обчислювала результат для різних фігур окремо. У мене були неймовірні враження: кілька рядків коду — і відбувалася магія.
Було круто розуміти, що є велика кількість інформації, усе безкоштовне, буквально бери і вчи, усе залежить від тебе. Могла вчитись 6 годин, бувало 8.
Перший мій підручник був Java: The Complete Reference Шильдта, про який я вже згадувала. Я стала читати, пам’ятаю, як дійшла до ООП, а що це таке — незрозуміло! Залипла в ютуб і гугл.
Просиналась зранку — везла дітей в школу і на телефоні в навушниках слухала лекції. Постійно перебувала в потоці інформації. Відкрила для себе DOU.
Так я вчилась два місяці, а потім взялася за алгоритми. Почала читати книжку Grokking Algorithms. Згодом написала програму про Binary search, а потім зрозуміла, що теорія теорією, прості програми — це добре, але треба рухатись далі.
Пора було відпрацьовувати навички та знання на практиці. Тоді я підписалась на JavaRush на 20 курсів за два місяці. Там була купа маленьких програм, і я відпрацьовувала виклики функцій, основні методи. В той момент побачила, що є компанії, які набирають студентів, які вже щось знають, вивчили Java Core і математику. І мріяла потрапити в одну з таких.
Тоді частина компаній давали список тем, за якими братимуть студентів на навчання. Я переглядала їхні вимоги. А паралельно з цим займалась функціональним аналізом, згадувала алгебру, комбінаторику.
Так тривало чотири місяці. І в якийсь момент мені здавалось, що я вже багато всього знаю, а насправді знала тільки Java Core. Я добре орієнтувалася в особливостях мови програмування, структурах даних, вирішувала алгоритмічні завдання легкого і середнього ступеня важкості. Але розуміла, що мені потрібне менторство, бо я уперлась зі своїми знаннями. Треба було рухатися далі, в супутніх до Java технологіях, будувати глибший план розвитку вже з професіоналами.
Курси: «Співбесіда тривала 30 хвилин англійською мовою, там був live-кодинг»
Коли я серйозно вирішила, що шукатиму компанію, яка бере на навчання, знайшла Mate academy, які набирали нульовий курс Java. У мене було два тижні, щоб подати заявку. Щоб долучитися, треба записатися, виконати тестове і пройти співбесіду.
Оплатити курс можна після навчання, ще два роки треба віддавати 17% від зарплати. Я стала гуглити інформацію про них. Знайшла на ютубі інтерв’ю із засновниками, один з них, Рома Апостол, — математик і призер Міжнародної олімпіади з математики. «О, наші люди», — подумала я, це мене переконало приєднатись.
Тестове на вступ складалося із чотирьох завдань, на виконання яких давали 24 години. Пам’ятаю, це було 8 березня, вихідний день, діти не в школі. Я все відклала і виконала тестове, останнє завдання вирішувала п’ять годин поспіль.
Mate відповіли, що рекомендують перед співбесідою зробити 40 завдань на Codewars. До співбесіди залишилось три дні, я встигла зробити 30. Інтерв’ю тривало 30 хвилин, українською і англійською мовами, ще там був live-кодинг — за 10 хвилин потрібно було виконати три завдання, два легких і третє більше складне. Після практики на Codewars я розв’язала все за шість хвилин.
29 березня
Ми починали з того, що 60 хвилин вирішували алгоритмічні задачі. Потім в нас була лекція, на якій ми обговорювали попередньо пройдений матеріал. Були лекції у записі, ми мали їх пропрацювати до уроку.
Потім були домашні завдання, доволі об’ємні та складні. Вчилися робити код-рев’ю одне одному. Загалом ми складали два екзамени, і через місяць після старту був перший. З 50 осіб на потоці 10 не «стягнули»: хтось пішов після першого екзамену, хтось не витримав темп, когось виключили через протерміноване домашнє.
Курс тривав чотири місяці, але через три я отримала роботу. Я вважаю, що без академії я б не зробила це так швидко. Там зацікавлені, щоб ви знайшли роботу. Великі аутсорси співпрацюють з нею, роблять запити на академію і просить рекомендувати студентів для співбесіди.
Кілька моїх однокурсників у GlobalLogic потрапили, хтось в EPAM, SoftServe, були й більш дрібні фірми. Академія брала кількох студентів і пропонувала на співбесіди. Нас запитували, чи ми хочемо в певні компанії, а тоді подавали резюме, і компанії з нами зв’язувалися. І далі ми напряму спілкувалися. Мене рекомендували в GlobalLogic, я хотіла потрапити в цю компанію.
Чи справедливо те, що доведеться два роки віддавати 17% від зарплати? Я вважаю, що варто дивитись на те не, що втрачаєш, а що отримуєш. Я читала історії про 50 інтерв’ю перед офером, а сама влаштувалася з першого ж на роботу.
«Я була відома тим, що писала величезну кількість конспектів»
Я вважаю, як би людина не старалась, вона не змусить себе так працювати, як під зовнішніми стимулами. Мені здавалось, що самостійно я вчилась дуже багато. Але коли я зайшла на курси, то були випадки, коли лягала о 12 ночі і вставала о 4 ранку, бо мені треба здати домашнє. Я відправляла дітей у школу на таксі й сиділа вчилась.
Ще у нас були регулярні технічні чеки. Кожну п’ятницю — підсумкове опитування. Ми збирались на
Ми з однокурсниками разом готувались до техчеків. Щочетверга в нас були зідзвони. Ми live-кодили, бувало, що зідзвонювались о 19:00 і сиділи до 24:00. Вирішували завдання перед екзаменами. Коли постійно варишся в цій інформації і її систематизуєш, вона починає складатись в красиву картинку. Ми вчили Java Core досить поглиблено: структури даних, особливості Java 8 (стріми і функціональні інтерфейси), Dependency Injection, ООП, SOLID, SQL, JDBC, Hibernate, Spring, Unit Testing, принципи clean code та best practices.
А найважче під час навчання було те, що я почувалася «дівчинкою в районі 40 років» поруч із
Я була відома тим, що писала величезну кількість конспектів. Наприклад, у нас була лекція, яка розрахована на годину — у мене це займало три, бо я слухала, конспектувала, переслуховувала. Я не знаю, як інші це робили. Були задачі, які давалися складніше, можливо, через вік. Але я старалася все робити ґрунтовно.
З групою у Києві, травень 2021
Пошук роботи та онбординг: «Намагаєшся вловити ритм, яким живе проєкт: зустрічі, ретроспективи, планінги, дейліки, рев’ю, пул-реквести...»
В кінці
На проєкт я потрапила через два місяці, перші півтора місяця в мене був ментор і тривав онбординг. Ми з ним відпрацьовували технології, з якими я мала працювати на продакшені. Зідзвонювались щодня на
Наставник давав завдання, що прочитати і зробити. Я писала код, він дивився, і ми з ним це обговорювали. Цей весь час тривав процес отримання дозволів, бо в нас серйозний замовник і сек’юрний проєкт. Всі дозволи мені надали через два чи три тижні після того, як закінчився рівень Trainee.
Проєкт мені подобається. Це фінтех-домен, вважаю його дуже перспективним. Та й люблю тему фінансів, інвестування, моя економічна освіта тут стала в пригоді. Сучасний стек технологій — Java 11, AWS, Kafka, мікросервіси. Багато чого вчу вже на проєкті.
Для мого проєкту бажана англійська на рівні B1-B2, цього достатньо. С1 у нас мають менеджери, продакт-менеджери, БА. Поки мені бракує розмовної англійської. Останній рік я розвивала найбільше технічні навички, бо розуміла, що англійська в мене і так добра. Зараз треба згадувати, відточувати скіли.
Щодо онбордингу, то спочатку ти приходиш і не розумієш, що відбувається. Намагаєшся вловити ритм, яким живе проєкт: зустрічі, ретроспективи, планінги, дейліки, рев’ю, пул-реквести на GitHub.
Через якийсь час з’являється розуміння. Ти не просто робиш те, що сказали, а розумієш, що й для чого. І це усвідомлення — важливе. Так, припускаєшся помилок, але це нормально, ти на них вчишся. Я брала тренінги й досі записуюсь на них, щоб паралельно розвиватись. Загалом перші пів року — адаптація до роботи на продакшені. Я намагаюся брати складніші задачі, ніж дають на мій рівень, це допомагає мені вчитися швидше.
Ще я онбордилася під час пандемії. В офісах компанії через обмеження було дуже мало людей. Тож у мене все відбувалося дистанційно. А на етапі Trainee хотілось більшої взаємодії, занурення. В офісі легше когось про щось запитати. Зараз я звикла, якщо мені потрібно щось з’ясувати, то зідзвонюємось з колегами.
Наразі мені подобається віддалений формат. У мене двоє дітей, і я їх бачу. Якби була в офісі, не знаю, як би вдавалося спілкуватися.
Джуніором я стала після пів року роботи в компанії.
Життя після входу в ІТ: «У моїх дітей був крутий батько, яким вони пишались, а тепер у них є крута мама, якою вони пишаються»
Моє життя змінилось, у мене з’явилась мета, впевненість у собі. ІТ класне тим, що чітко розумієш свій курс, бо багато шляхів уже прописано, є купа можливостей. Можна йти й розвиватись всередині однієї компанії або ж їх змінювати.
Ринок описаний, а розвиток у сфері прогнозований. Ти розумієш, що якщо все буде нормально і не напартачиш, будеш вчитися, то зароблятимеш стільки-то. А ще за два роки стільки-то. Можна релокуватися і спробувати життя в іншій країні. Переді мною відкрився увесь світ.
Коли на початку
Рідні теж раділи, коли я змінила сферу. В моїх дітей був крутий батько, яким вони пишались, а тепер в них є крута мама, якою вони пишаються.
Моїм синам 12 і 15 років, я вже їм так сильно не потрібна. Вони багато вчаться та обоє займаються програмуванням. Молодший точно хоче бути розробником, а старший має більше менеджерський склад розуму.
Із синами
Втім треба сказати, що зараз мені бракує часу на хобі. За останній рік мені довелося кинути балет і фітнес. Я розуміла, що повинна зробити ривок і весь ресурс скерувати на досягнення цілі. Перший рік адаптація, буває так, що доводиться овертаймити, бо хочеться вирішити задачу швидше. Мене ніхто не змушує, але я така людина — працюю, поки геть не втомилась або поки не дійшла розуміння, як розв’язати проблему — тоді все, можна згортатись.
Коли багато вчишся, споживаєш безліч інформації — це ресурсозатратно. На хобі сил не залишається. В майбутньому мені б хотілось це збалансувати.
У мене багато знайомих запитують, чи варто переходити в ІТ з інших професій. Вони питають, а потім починають шукати причини, чому ні. Наприклад: «Ти ж любила математику, а я її не знаю». Я кажу: «Ну і що, вона не дуже потрібна».
Тут не треба питати, тут треба робити. Насправді, коли я визначилась з професією, для мене одним з одкровень стала цінність часу. Кожна година — цінна. Час дорожчий за гроші. Це ресурс, який не повернеться. Варто скласти собі план і діяти — щодня щось для цього робити.
Про плани: «Хочу пройти магістерський курс із Computer Science у харківському виші»
Стати Middle в нашій компанії можна за два роки. Великі аутсорси мають дещо довший процес зростання грейду. Мабуть, мідла можна швидше отримати, змінивши роботу. Але мене зараз усе влаштовує.
Наразі вчу ще С++. Імпонує Python, там багато ML і математики, але поки намагаюсь концентруватися на одному напрямі й не розпилюватися. Я про свій вибір Java не шкодую. Мені подобається, що це бекенд, бо тут багато специфічної бізнес-логіки, адже всі застосунки різні, і це цікаво.
Крім того, ходжу на олімпіадний гурток з програмування онлайн від харківської наукової спільноти QBit. Там усі пишуть на С++. Ми збираємось на лекції раз на два тижні на дві години. Live-кодимо, слухаємо лекції з алгоритмів. Я вже звикла до С ++. Добре її розумію, вона схожа на Java.
Після початку повномасштабної війни компанія допомогла мені переїхати спершу з Харкова до Львова, а потім поселитися у Закарпатській області. У мене є друзі у Будапешті, тож згодом з дітьми переїхали в Угорщину. Увесь цей час я працювала, пропустила тільки дні переїздів. Робочий ноут — це перше, що я поклала у валізу після документів.
Тепер планую переїжджати в Польщу, там, на відміну від Угорщини, розвинене IT і краща адаптація для українців. Я дуже рада, що працюю саме в IT, бо попри війну в мене є робота, я можу підтримувати ЗСУ. У планах — пройти магістерський курс з Computer Science у якомусь харківському виші після нашої перемоги.