Як вибрати найкращий для вас шлях кар’єри в галузі технологій

Dev Ops, мобільний інженер, науковець даних, менеджер проектів та Front End - що найкраще для вас?

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

Я отримую багато запитань про кар’єрні шляхи в техніці. Я думав, що напишу статтю про це, щоб я міг вказувати людям на це. Я буду використовувати статтю Business Insider, в якій перераховано 20 найкращих робочих місць в Америці в 2018 році як посилання. Це хороший перелік відповідних технологічних шляхів із хорошою висхідною мобільністю. Вони користуються великим попитом і дозволять влаштуватися на роботу в хорошу компанію з хорошою оплатою праці. Сподіваємось, це допоможе вам визначитися із шляхом, яким ви підете. Отже, почнемо:

Мобільний розробник

Що вони роблять?

Мобільні розробники - це люди, які створюють додатки для компаній. Якщо ви коли-небудь використовували пристрій Android або iOS, то ви безпосередньо взаємодіяли з роботою розробника мобільних пристроїв. Існують інші платформи для мобільних пристроїв, такі як Windows Phone. Але здебільшого, коли люди кажуть “Розробник мобільних пристроїв”, вони, швидше за все, говорять про розробника Android або iOS.

Чому я повинен вибрати цей шлях кар’єри?

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

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

Як розпочати?

Це залежить від того, чи хочете ви зосередитись на iOS або Android. Я особисто рекомендую вивчати Android з двох причин. Java, мабуть, є більш корисною мовою для вивчення за допомогою Swift або Objective-C, і той факт, що 75% усього світу використовує Android порівняно з 21% за допомогою iOS. Про це повідомляє statcounter.com. Зважаючи на це, якщо у вас є особлива пристрасть до однієї платформи над іншою, йдіть зі своєю пристрастю.

Для Android прочитайте цю статтю. Це перевершує дріб’язковість того, як розпочати. Для iOS перегляньте це відео на raywenderlich.com. Веб-сайт Рей Вендерліха - чудовий ресурс для iOS загалом.

Вчений даних

Що вони роблять?

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

Як приклад можна використати веб-сайт електронної комерції. Оглянувши кілька різних точок даних, науковець зауважує, що лише 0,5% людей, які додають товар у кошик, в кінцевому підсумку роблять покупку. Потім дослідник даних висуває гіпотезу, що це може бути причиною зниження доходів минулого місяця. Вони перевіряють курс три місяці тому і бачать, що він становив 5%.

Схоже, це, мабуть, причина падіння доходів. Вони відкривають це для правильних зацікавлених сторін. Ці зацікавлені сторони з’ясовують, що під час закупівлі сталася аварія, яка спричинила проблему. Можливо, цього не було знайдено, якщо науковий співробітник не працював у компанії.

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

Чому я повинен вибрати цей шлях кар’єри?

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

Як розпочати?

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

Керівник проекту

Що вони роблять?

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

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

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

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

Чому я повинен вибрати цей шлях кар’єри?

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

Скажімо, люди, які чекають на ваш товар, вимагають, щоб ви закінчили його за 2 місяці, коли знаєте, що для доставки якісного продукту знадобиться 4 місяці. Ви повинні мати здатність наводити переконливі докази того, чому вам потрібен додатковий час. Ви також повинні переконатися, що не вклоняєтесь тиску.

Будучи менеджером проекту, потрібно дотримуватися ідеального балансу між датою доставки та якістю.

Може бути і протилежне. Іноді розробники кажуть, що щось займе 1 місяць, коли ви бачили, як це робилося за 3 дні до цього. Ви ставите запитання і з’ясовуєте, що розробник хоче надмірно спроектувати цю певну роботу, хоча ви знаєте, що продукт не потрібен. Ви повинні придумати спосіб, як змусити розробника будувати лише те, що потрібно.

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

Як розпочати?

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

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

Ще один чудовий спосіб увійти в управління проектами - це керувати невеликим проектом із друзями або проектом з відкритим кодом. Практика робить ідеальним, а застосування у реальному житті навичок управління проектами змусить вас виділитися як кандидата.

Ви також можете почати знайомитися з такими інструментами управління проектами, як Trello, Jira, Quip, Excel та багатьма іншими. Знайомство з програмним забезпеченням, яке використовує менеджер проектів, допоможе вам розвинути свої навички в управлінні проектами.

Фронтальний інженер

Що вони роблять?

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

Чому я повинен вибрати цей шлях кар’єри?

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

Ви повинні бути інженером, якщо вам подобається вчитися та користуватися новими мовами та технологіями . Будучи інженером-початківцем, потрібно використовувати HTML, CSS, JavaScript та SQL. Крім того, вам, швидше за все, доведеться знати деякі серверні фреймворки на стороні сервера, такі як Django, Ruby on Rails або .Net.

Ще одна причина розглянути цей шлях - це якщо вас цікавлять проблеми, пов’язані з масштабуванням. Мобільний додаток одночасно обслуговуватиме лише одного користувача. Це пов’язано з тим, що одночасно мобільним пристроєм може користуватися лише одна людина. Веб-сайт повинен одночасно обслуговувати потенційно мільйони людей. Це вимагає іншого мислення та підходу для запобігання виникненню вузьких місць.

Як розпочати?

Це легко :) Просто перевірте курс freeCodeCamp. Це дасть вам усі навички, необхідні для того, щоб стати досвідченим інженером-розробником.

Інженер DevOps

Що вони роблять?

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

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

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

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

Чому я повинен вибрати цей шлях кар’єри?

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

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

Як розпочати?

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

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

Не бачили ролі, яку ви шукали?

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

Я проведу ще один раунд цих оглядів кар’єрного шляху для найбільш заплесканих коментарів.

Сподобалось прочитане?

Прочитайте про те, як я пройшов шлях від розбитого вчителя англійської мови в Японії до роботи у провідній технологічній компанії всього за кілька років!

Вам потрібен ступінь інформатики, щоб влаштуватися на роботу в галузі техніки?

Проходження першого технічного інтерв’ю: як підготуватися.

Свіфт проти Objective-C. Як вони порівнюють?