«Працювати в ІТ можуть всі». Senior-розробники про те, як швидко навчитись кодити

З початком повномасштабної війни з’явилося ще більше охочих ввійти в ІТ, зокрема стати розробниками. DOU вирішив поспілкуватись із Senior-девелоперами про те, як вони використовували б свій нинішній досвід, якби знову довелося входити в ІТ, щоб оформити це в поради для новачків.

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

«Один з важливих критеріїв успіху швидкого опанування кодингу — допомога хорошого ментора»

Юлія Шалева, Senior Salesforce Engineer в Avenga

Я дізналася про Salesforce 10 років тому, коли мій чоловік почав працювати Salesforce-розробником. Раніше я працювала в банку, проте сім років тому вирішила змінити роботу. Я вибрала саме цей напрям, адже мій чоловік міг бути для мене особистим ментором. Проте в мене не було технічної освіти та знадобився певний час на навчання. Перед тим як влаштуватися на роботу в ІТ, я вивчала основи, а згодом стала працювати Salesforce-адміністратором.

Один з важливих критеріїв успіху швидкого опанування кодингу — допомога хорошого ментора. Ця людина даватиме вам завдання, перевірятиме їх та підказуватиме, куди розвиватися. На мій погляд, самому це робити майже нереально.

Далі потрібно багато тренуватися: шукати можливості працювати з реальними завданнями на реальних проєктах. Наприклад, коли я офіційно була адміністратором, то паралельно мені давали девелоперські завдання: спочатку простіші, потім складніші. Їх перевіряли та підказували мені, як краще писати код; робили зауваження щодо його чистоти. Кожне завдання можна реалізувати різними методами, але передусім варто звертати увагу на пошук оптимального варіанта написання коду — чіткого та лаконічного.

Після пів року інтенсивного навчання мене перевели в development department і я почала працювати Salesforce-розробницею. Ще п’ять років тому спеціалістів у цій галузі було дуже мало. Знайомі мене часом запитують: що почитати й подивитися, щоб потрапити в ІТ? Можу порадити безкоштовну платформу із Salesforce.

Проте не буває так, що ти прочитав книжку, записався на співбесіду, й тебе взяли на роботу. Новачкам спочатку треба знайти компанію, яка буде готова взяти Trainee, й підготуватися до того, що перші пів року доведеться пахати. Передусім варто звертати увагу на можливість здобути практичний досвід, а менше — на зарплату й проєкт; а також активно ходити на співбесіди. Якщо не вдаватиметься знайти оплачувану роботу, намагайтеся влаштуватися інтерном, щоб просто покрутитися в цьому ІТ-світі.

Крім того, варто шукати компанії, які мають свої ІТ-школи (є платні та безкоштовні). Щоб вступити до них, потрібно готуватися, показувати свою активність і вмотивованість, оскільки після навчання відкривається можливість влаштуватися до компанії на роботу.

Читати також: Що таке Salesforce і чим вона цікава для досвідчених розробників

«Моїми головними проблемами було те, що я боялася помилитися, порівнювала себе з іншими»

Катерина Редько, Lead Developer at Netpeak Core (Netpeak Group)

У мене був багаторівневий шлях в IT. У 10 класі в моєму житті почалось програмування, яке мені сподобалось настільки, що закортіло розібратись, як працює комп’ютер. Тому вирішила вищу освіту здобути за комп’ютерною спеціальністю. Університет допоміг структурувати знання щодо галузей та рівнів розробки, зробити декілька проєктів.

У мене пішов деякий час, щоб зрозуміти для себе, чого я хочу від ІТ. Я провела ціле дослідження вакансій, щоб скласти план персонального розвитку на джуніора, підібрала курси (як безоплатні, так і платні), і методично рухалась ним, позначаючи досягнення. Також кожен день вирішувала цікаві задачі на Codewars. Від початку дослідження до запрошення на роботу як джуніор-програміста минуло 7–8 місяців. Щодо складання персонального плану, то цей підхід мені так сподобався, що й нині його використовую.

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

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

З того, що мені дуже допомогло на карʼєрного шляху:

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

Тим, хто бажає навчитися швидко кодити, я б радила:

  • не марнувати свій час: планувати, рухатися й менше вагатися;
  • системно приділяти час навчанню та практиці;
  • не забувати про своє здоров’я;
  • спілкуватися з фахівцями зі сфери;
  • дослухатися до себе: чи зможеш ти все життя вчитися, розвʼязувати чиїсь проблеми та отримувати від цього задоволення. Можливо, це не твоє, — і це нормально.

Яких помилок варто уникати?

  • Соромитись просити фідбек про свою роботу.
  • Не обмінюватись з іншими досвідом.
  • Робити все самому геть до зриву дедлайну.
  • Зупинятись на вивченому, «забивати» на саморозвиток.
  • Працювати безоплатно.
  • Жалкувати гроші на курси чи книжки.

Новачку потрібно врахувати, що навчання — це марафон, а не короткий забіг. У нього можуть опускатись руки, деякі задачі невимовно дратуватимуть, але попри все треба доводити розпочате до кінця.

«Мій шлях до джуніора був сповнений помилок»

Олександр Лівітчук, Senior JavaScript Developer у SoftServe

Я навчався в Одеській державній академії будівництва та архітектури. Одного разу я зустрів свого знайомого, який на 4 курсі вирішив покинути виш. І запитав йому, чому він вирішив це зробити. Знайомий відповів, що почав вчити С++.

Я поцікавився, з чого можна починати, як потрапити в ІТ. Він порекомендував книжку HTML & CSS від O’Reilly. Ця книжка стосувалася верстки, і я почав опановувати її, вчити фронтенд, який, своєю чергою, тісно пов’язаний із JavaScript. Став навчатися в «Комп’ютерній Академії Шаг» в Одесі. Проте згодом покинув її, бо зрозумів, що навчання дуже розтягувалося в часі. Після цього шукав різні курси з JavaScript (а у 2014-му їх ще було не так багато).

Загалом мій шлях до джуніора був сповнений помилок. На жаль, у мене не було нікого, хто міг би підказати, як розробити дорожню мапу. Тому від моменту, коли я дізнався щось про ІТ і коли потрапив на першу роботу, минуло два роки.

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

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

У мене є знайомі, які хочуть в ІТ, але створюють перед собою перешкоди. Мовляв, щоб стати Python-розробником, треба купити MacBook Pro. А щоб його придбати, потрібно десь заробити гроші. Тому насамперед раджу не відкладати навчання. Я теж так робив, чекав «знаку долі». Зараз я дивлюся англомовні курси на Udemy (їх можна переглядати із субтитрами та прокачувати свою технічну англійську). Також мені дуже «зайшов» тренер з веброзробки Максиміліан Шварцмюллер.

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

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

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

Роман Рудяк, Senior Software Developer в ELEKS, CEO & Founder FaineTech

Я працюю в ІТ-індустрії вже понад 10 років. Наприкінці 4-го курсу навчання я потрапив на практику в ELEKS, після чого залишився у компанії. За десятиліття мені довелося працювати на 15 проєктах — як у межах стартапів, так і великих корпорацій. Це дало змогу здобути досвід і розуміння, як працює бізнес. І ще я точно знаю, як потрібно розвивати спеціалістів-початківців, бо сам пройшов весь цей шлях до посади Senior Software Developer.

На мою думку, потрібно розділяти — вміти кодити та вміти бути інженером. Щоб бути інженером, потрібно розвивати уяву, бачити структуру коду; розуміти, як використати те чи інше рішення, щоб код запрацював.

Як на мене, варто відвідувати співбесіди й виконувати тестові завдання, де скажуть (або ти сам можеш виявити), що ти робиш добре, а над чим варто ще попрацювати.

Ментором може бути й твій друг, і колеги, з якими навчаєшся. Ви обмінюєтеся досвідом, обговорюєте пройдене, і це теж допомагає розвиватися. Після працевлаштування менторство не має припинятися, так буде легше скласти план карʼєрного розвитку.

На мій погляд, всі можуть працювати в ІТ, зокрема навчитися кодити. На жаль, я бачив багато крутих людей, які здавались зарано. Вони або вигорають, або занадто засмучуються через помилки. Проте вивчення кодингу — це процес; і як в будь-якому іншому процесі тут треба діяти виважено, робити перерви, пробувати знову й знову.

Помилки — це досвід, не бійтеся їх припускатись. Важливо навчитися засвоювати інформацію, мислити, дивитися на завдання ширше. Тому я заснував проєкт CareerBoost, мета якого — допомогти спеціалістам-початківцям стартувати кар’єру в ІТ.

«Найголовніше — вміти розставити пріоритети»

Григорій Коваль, Senior .NET Developer у Ciklum

Я свічнувся в ІТ сім років тому. На той момент мені було 28; я закінчував працювати на тодішній роботі й не знав, чим займатися далі. Шукав стабільності та хотів себе реалізувати.

Я не знайшов нічого кращого, як піти в ІТ-школу у Львові. Там познайомився з одним викладачем і майже одразу пішов до нього на індивідуальні заняття, бо мені так значно зручніше навчатися. Ми потоваришували, і навіть після закінчення тримісячного курсу він мені ще майже рік допомагав на волонтерських засадах. Я хотів опанувати С++, але ментор порадив перемкнутися на щось легше, тож я обрав С#. Озираючись у минуле, розумію, наскільки мені допоміг наставник. Потім я вступив до академії від SoftServe, після навчання мені вдалося влаштуватися туди на роботу.

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

Деякі новачки, як і я колись, просто «злітають у небо», коли вдається вдало закрити тікет; і дуже падають духом, коли щось не вдається. Виходить синусоїда: від стану «я найкращий» до «я нічого не заслуговую, мене завтра звільнять». Натомість варто допомогти собі, повірити в себе. Це як внесок у бізнесі: якщо ти не готовий вкладати свій час і зусилля у себе, значить ти у себе не віриш. Тоді чому інші мають це робити? Показуй, чого ти вартий.

Водночас не слід бути самовпевненим — варто завжди себе перевіряти. Краще сказати «мені треба ще 30 хвилин», ніж відповісти, що «я все зробив, можете мене похвалити», але насправді щось пропустити.

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

Найголовніше — розставити пріоритети. Під час навчання та роботи показуйте свою зацікавленість і готовність опанувати програмування, попри різні обставини. Ваш розвиток і робота — це ще одна важлива сфера життя, на рівні з іншими. У той день, коли в мене був розпис у РАЦСі, я його не пропустив і не переніс, бо розумів, що є дві однаково важливі для мене речі — це моя робота і розвиток, моє щастя і сім’я. І казати, що щось важливіше — важко. Адже як прогодувати сім’ю, якщо не можеш себе прогодувати? Або як нормально працювати, якщо не буде родини, яка буде тебе підтримувати?

Людям, що хочуть опановувати програмування, можу порадити книги Герберта Шилдта.

«Потрібно постійно запитувати в колег фідбек»

Олексій Болдирєв, Senior PHP Developer у Aventus IT

Я в ІТ з 2008 року. Навчався у Національному технічному університеті «Дніпровська політехніка» [раніше Національний гірничий університет, або НГУ, — ред.]. Під час цього поверхово ознайомився з PHP, а далі почав вивчати його самостійно. Зараз я б не пішов навчатися в університет, бо знання швидко «старіють».

Вміти добре писати код — це пів справи. Багато людей думає, що програміст має лише генерувати код. Насправді це творча професія. Будь-яку задачу можна розвʼязати у безліч способів. Ваше завдання — вміти застосовувати знання відповідно до ситуації; розуміти, що і як за певних умов працюватиме, а що — ні.

Найбільша помилка — боятися її припуститись. Натомість потрібно постійно запитувати в колег фідбек.

Що ще? Рекомендації від редакції

  • Ментори в тилу — платформа, яка допомагає знайти наставника. Усі гроші, отримані за менторські сесії, підуть на допомогу ЗСУ.
  • CodeCombat і Coding Game — ресурси, за допомогою яких можна відточити навички у цікавому форматі.
  • На GitHub можна знайти колекцію безкоштовних книг з програмування.
  • Herding Code — на цьому сайті зібрані тематичні подкасти зі скриптами, які допоможуть практикувати listening skills і вчити нові слова, пов’язані з IT.
  • LeetCode — одна з найвідоміших платформ із завданнями для розробників, що набула репутації «вхідного квитка» до FAANG.
Похожие статьи:
В этом году мы собрали 8117 анкет, и самое время посмотреть на обновленный портрет украинского айтишника. Сразу отметим, что...
DOU продовжує серію коротких Zoom-інтерв’ю з керівниками українських IT-компаній, щоби дізнатися, як сьогодні почувається...
Компания IDC опубликовала свой прогноз по рынку планшетных устройств в 2016 году. По данным аналитиков данной фирмы, в...
У лютому-березні Rozetka скоротила зарплати й звільнила більшу частину айтівців. СЕО компанії Владислав Чечоткін...
Привет, меня зовут Дмитрий, я занимаюсь разработкой кросс-платформенных решений, игр, веб-сервисов и мобильных...
Яндекс.Метрика