Однією з найпривабливіших позицій в сфері ІТ була і залишається професія фул-стек розробника. Але як стати настільки універсальним фахівцем? Розповідаємо, хто такі full-stack developer’и, скільки вони заробляють і як ними стати.
Якщо коротко, фул-стек розробка поєднує в собі два напрямки: фронтенд- і бекенд-розробку. Тобто розробник створює не лише візуальну складову програми – той самий користувацький інтерфейс, який ми бачимо на екрані і з яким можемо взаємодіяти (фронтент). Серед інших його обов’язків – створення бекенду і бази даних кожного сайту, які користувач не бачить, але без яких не функціонуватиме жоден сайт.
Окрім згаданих технологій, фул-стек розробник повинен глибоко розумітися на архітектурі та життєвому циклі розробки програмного забезпечення. Фактично, такий спеціаліст може без проблем займатися одним проєктом від старту до фінішу. Саме тому програмістам-новачкам слід задуматися над тим, щоб стати універсальним розробником. Не вивчати лише один бекенд чи фронтенд, а поглиблювати свої знання настільки, щоб стати в цій сфері незамінним спеціалістом. Фул-стек розробники саме такі – незамінні. Та й ІТ-компаніям в багатьох ситуаціях вигідніше наймати саме фул-стек фахівців, хоча і не завжди.
Що цікаво, бекенд-розробники отримують найвищі зарплати, а не фронтенд- чи фул-стек розробники. Станом на літа медіанна зарплата трьох професій становить:
Зазначимо, що цифри, наведені вище – це «чиста» зарплата, тобто після сплати податків. Окрім високої зарплати, роботодавці також можуть запропонувати бонуси та програму страхування, гнучкий графік роботи і сприяння в навчанні. Всі ці речі в сукупності становитимуть не меншу цінність, ніж сама зарплата.
Як бачимо, фул-стек спеціалісти набагато вигідніші в плані найму, ніж фронтенд- та бекенд-розробники. Але є й інший бік медалі – двоє людей виконають вдвічі більше роботи, ніж одна людина. Тому для деяких проєктів краще розподіляти функціональні обов’язки між кількома спеціалістами, аніж доручати всі завдання одному фул-стек девелоперу.
Цілком очевидно, що на фул-стек розробника потрібно довше навчатися. Бекенд- і фронтенд-розробники вже через півроку, а то й раніше, можуть пробувати свої сили на фрілансі. Але вивчення всього спектру необхідних технологій фронтенду і бекенду займе не менше року. Це за умови, якщо ви сумлінно навчатиметесь і не закинете справу на пів дорозі. Звичайно, це відносні цифри, адже комусь треба довше вчитися, щоб опанувати потрібну навичку, а хтось хапає все на льоту. Орієнтуйтеся на свій темп і графік прогресу, не дивіться на інших. Натомість переймайте їхній досвід і вміння, вчіться в них, а не комплексуйте, що у вас повільніше виходить навчатися. Тайм-менеджмент і графік навчання – два найвірніші помічники, якщо вирішили опанувати професію full-stack developer’а.
Наразі існує багато технологічних стеків, щоб успішно реалізувати себе як фул-стек розробника. Виділимо трійку найпоширеніших: MEAN, MERN, LAMP.
Для оволодіння стеком MEAN вам доведеться вивчити такі технології: MongoDB, Express.js, Angular, Node.js. Для опанування стеком MERN на додачу до MongoDB, Express.js та Node.js доведеться вивчити React. І, нарешті, технологічний стек LAMP, який складається з Linux, Apache, MySQL, PHP.
Повторимося, це лише найпопулярніші стеки технологій, один з яких доведеться опанувати full-stack розробнику. Не забуваємо також, що бути розробником означає постійно вчитися чомусь новому. Можливо, з часом з’являться нові технологічні інструменти, і їх теж доведеться вивчити, щоб іти в ногу з часом і зберігати актуальність на ринку праці.
Помилково вважати, що фул-стек розробнику знадобляться лише хард скіли. Мовляв, потрібно вміти писати код, і більш нічого. Але давайте поміркуємо: окрім знання мов програмування та фреймворків, окрім розуміння принципу роботи баз даних та інших технічних моментів хіба не потрібно чітко висловлювати свої думки? А вміння слухати інших та ефективно співпрацювати з усією командою, від тім ліда до джуніор-спеціалістів? А додамо ще вміння проявляти наполегливість, коли потрібно, вміння працювати під тиском та розв’язувати проблеми, що охоплює аналітичне мислення. Творчість, адаптивність і терпіння – теж запишемо сюди. От і виявляється, що софт скіли теж необхідні такому ІТ-фахівцю.
Так, знати і вміти потрібно багато, щоб стати фул-стек розробником. Але й великі можливості відкриваються перед цими ІТ-спеціалістами. І це може бути як горизонтальний розвиток кар’єри, так і вертикальний. Горизонтальний – якщо розробник захоче перейти від одного технологічного стека до іншого, опанувати нову мову програмування чи фреймворк, щоб збільшити свою цінність на ринку праці. Наприклад, початківець обирає вивчати фронтенд-розробку, вивчає «золоту зв’язку» HTML + CSS + JavaScript, а потім переходить до вивчення мови Python, щоб опанувати бекенд. Це і є той самий горизонтальний розвиток. І можливості для розвитку тут фактично безкінечні.
Якщо говоримо про вертикальний розвиток, ви можете вирости від позиції джуніора до Senior full-stack developer. За п’ять-шість років це реально зробити, якщо є мотивація. Якщо й посада сеньйора набридне, можна розглянути позицію керівника команди чи архітектора програмного забезпечення. Можна навіть стати керівником проєкту або продукту, де ви більше займатиметеся стратегічним плануванням і управлінням ресурсами.
Хочеться порадити дівчатам і жінкам не боятися опановувати мови програмування. Ви можете розібратися в будь-якій технології, що стосується програмування, якщо сильно цього захочете. Для підтвердження цих слів зазирніть на ютуб-канал ужгородського розробника «Фрілансер по життю» і подивіться інтерв’ю з жінками, які працюють в ІТ. Почерпнете для себе порцію натхнення і мотивації.
До речі, якщо вирішите опановувати професію full-stack розробника з фронтенду, згаданий ютуб-канал стане вашим незмінним помічником. А лайв-стріми автора каналу зі створенням сайтів сподобаються кожному новачку. Крім того, автор регулярно проводить стріми з розбором чужих робіт. Маючи великий досвід в сфері фронтенду, йому є що сказати про роботи новачків. Критичні зауваження та цінні поради – і все безкоштовно. Виявляється, безкоштовне і якісне навчання теж існує.
Якщо маєте можливість заплатити за хороші ІТ-курси – платіть. Не маєте можливості чи бажання витрачатися – дивіться ютуб-канали, присвячені вивченню JavaScript, Python та інших мов програмування.
Серед книг, які варто прочитати кожному фул-стек девелоперу, найперше назвемо «Ти не знаєш JS» автора Кайла Сімпсона. Ця книга дасть глибоке розуміння JavaScript. Для вивчення бекенду зверніть увагу на книгу Майка Кантелона «Node.js in Action». А якщо вирішите писати бекенд не на JavaScipt, а на мові Java, прочитайте «Java: The Complete Reference» Герберта Шилдта.
Окрім «Фрілансера по життю» зверніть увагу на такі ютуб-канали, як Traversy Media та The Net Ninja. Тут ви знайдете навчальні посібники і велику кількість відеоуроків, які пояснюють початківцям різні аспекти веб-розробки.
Але пам’ятайте, що переглянуті уроки і прочитані книги не замінять практики. Практика щодня, багато практики, ще більше практики. Дивіться, читайте, аналізуйте, не бійтесь помилятися. Адже без помилок, тобто багів, неможливо уявити професію full-stack розробника. Не забувайте також звертатися за порадою до друзів програмістів, якщо такі люди є у вашому оточенні. Знайдіть серед них ментора, який може суттєво допомогти в навчанні.
Нагадуємо, що познайомитися з іншими статтями, які розповідають про перспективні професії, можна в розділі Все про професії.
Новачок на роботі. До нього завжди придивляються. Від того наскільки новий співробітник уважний, тактовний та обачний залежить, як його прийме колектив, як складатимуться взаємини з керівництвом. Треба докласти чимало зусиль, щоб перше враження було гідним, адже другого шансу може й не бути.
В сучасному ритмі життя, коли треба скрізь встигнути і багато чого зробити, наша пам'ять час від часу дає збій. Не завжди пам'ятаємо, де лежать документи, забуваємо про заплановану зустріч, вийшовши з дому, важко згадуємо, чи вимкнули з розетки праску тощо. А причина такого збою – перевтома, часті хвилювання, і, як не дивно, одноманітність.
Підвищення по службі чи в іншій діяльності, досягнення популярності, слави тощо – це все кар'єра. А з чого починається це сходження і коли? На це запитання дає відповідь соціолог із Оксфорда Марк Тейлор.
Декілька порад від наших експертів про те, як, повернувшись до роботи, правильно застосувати «відновлений багаж сил».
Впавши, піднімаємося, обтрушуємо одяг, хочемо зробити крок, але біль у забитих колінах не дає ступити. Адже йти треба, хоча б до медпункту. Одні встають і, перемагаючи біль, йдуть далі, а в інших сил вистачає лише до кабінету лікаря або самому перев'язати собі рани, а деякі не можуть навіть піднятися від сильних забитих місць, розчарування та зневіри. Що робити і як допомогти собі?