Як працювати як розробник програмного забезпечення

Автор: Peter Berry
Дата Створення: 19 Lang L: none (month-012) 2021
Дата Оновлення: 1 Липня 2024
Anonim
Урок 1. Вступ в тестування ПЗ. Цикл розробки ПЗ (SDLC)
Відеоролик: Урок 1. Вступ в тестування ПЗ. Цикл розробки ПЗ (SDLC)

Зміст


Ніколи не було кращого часу стати розробником програмного забезпечення. Попит на розробників програмного забезпечення постійно зростає, як і різноманітність робіт, які вони мають виконувати. Тоді виплата.

Згідно з USNews.com, середній розробник програмного забезпечення в 2017 році склав 101 790 доларів. За даними Gorroo.io, середній розробник C # заробляє 102 000 доларів на рік.

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

Середній розробник C # заробляє $ 102 тис. На рік.

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


Що робить розробник програмного забезпечення?

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

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

Типи розробника програмного забезпечення

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


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

Ще одна відмінність, яку слід врахувати: розробник програмного забезпечення та інженер програмного забезпечення, в чому різниця?

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

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

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

Які навички та кваліфікації потрібен розробник програмного забезпечення?

Щоб бути розробником програмного забезпечення, вам потрібно навчитися програмувати.

Наступне питання: "яка найкраща мова програмування для вивчення" чи "які мови програмування хочуть роботодавці?"

Хоча, безумовно, правда, що деякі мови програмування користуються більшою потребою у клієнтів та роботодавців (Python, Java, JavaScript, PHP, Swift, C #, C ++, Ruby), правда полягає в тому, що це повністю залежить від того, яку роботу ви хочете виконати. . Ось кілька прикладів.

Повний розробник стеків

Python, JavaScript, PHP та Ruby - всі мови, які використовуються для веб-розробки. Якщо ви працюєте на інтернет-порталі або оновлюєте веб-додатки, такі як Twitter, деякі з них, ймовірно, будуть корисні. У цій ролі також може бути вигідним зрозуміти бази даних (SQL) і знати свій шлях навколо сервера.

"Повний розробник стеків" - це веб-розробник, який досяг своєї остаточної форми: той, хто може обробляти всі аспекти веб-дизайну та обслуговування, від переднього кінця (HTML, CSS, JavaScript), до заднього кінця (PHP, Python, Ruby) до обслуговування сервера. Цей тип професіоналів дуже затребуваний.

Ось чудовий курс від Udemy, якщо ви хочете дізнатися більше: Full Stack Web Developer Bootcamp.

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

Якщо ви зацікавлені в розробці програм для Android, вам потрібно буде вивчити Java або Kotlin (в ідеалі обидва). Вам потрібно ознайомитись з Android Studio, Android SDK (Kit для розробки програмного забезпечення) та всіма новими концепціями, які Google постійно впроваджує (наприклад, миттєві програми чи бульбашки).

Детальніше: Як знайти роботу розробником Android

Якщо ви хочете заробляти додатки для iOS на життя, вам слід вивчити Swift та Objective C та ознайомитись з Xcode. Якщо ви хочете зробити програми для Windows або перейти на платформу, вам знадобиться C # та розуміння Visual Studio.

Розробник ігор

Щоб стати розробником ігор, тоді вам обов'язково слід вивчити C # та в ідеалі C ++. Вам слід ознайомитись з великими ігровими двигунами (Unity та Unreal), і ви, можливо, захочете додати у свій набір навичок трохи CAD.

Кінцевий посібник по об'єднанню для розвитку ігор в Удемі - це гарне місце для початку.

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

Потім є конкретні інструменти, які компанії використовуватимуть для управління своїм робочим процесом та співпрацювати над більшими проектами. Коли я відвідав Facebook у Лондоні кілька місяців тому, я ознайомився з багатьма різними інструментами, якими компанія користується, щоб підтримувати проекти. Вони включають Phabricator, Mercurial, Sapienz та ін.

Звичайно, такі інструменти, як Github (використовується для контролю версій), ймовірно, будуть корисні інженерам-розробникам та розробникам, що працюють у різних галузях. Додаткові програми для управління проектами, як Asana або Basecamp, також дуже корисні для віддаленої роботи. Покажіть, що у вас є досвід у цих сферах, далі буде закріплено ваше резюме та зробити вас ще більш працездатними.

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

Найкращі сертифікати розробників програмного забезпечення

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

Коротка відповідь - ні. Більш довга відповідь - ні, але це, безумовно, допомагає.

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

Детальніше: Майбутня захист вашої кар’єри та зарплати як аналітика інформаційної безпеки

Так само ступінь дасть вам перевагу перед іншими кандидатами під час подання заявки.

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

Існує багато визнаних галузевими сертифікатами, які дадуть вам певну кількість прихильності при подачі заявки на посади.

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

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

Просто виберіть Google роботи, який вас цікавить, і знайдіть найвідоміші сертифікати в цій галузі. Якщо ви не впевнені, виберіть одну з найбільших мов, наприклад, C # або Java, або шукайте інформатику або повний стек-курс, який покриє багато місця.

Вам потрібні сертифікати, щоб бути розробником програмного забезпечення?

Найдешевшим варіантом буде стати розробником програмного забезпечення без сертифікації та кваліфікації. Але чи можна знайти роботу як чисто самоучка-розробник?

Я можу вам гарантувати, що це так, адже саме це я і зробив. Я вивчив BASIC програмування на ZXSpectrum, і звідти просунув свої знання з QBASIC, B4A, потім Java, C #, Python тощо.

Те, як я зміг це зробити, полягав у тому, щоб дозволити моє резюме говорити за мене. Я розробив успішний додаток для Android, який мав понад 100 000 платних завантажень, працював з деякими досить великими іменами ззаду, а потім написав технічну книгу з розробки ігор для Apress Media (Springer).

Ці досягнення дають таку ж впевненість для клієнтів, як і сертифікат, і дозволяють мені стягувати плату набагато більше, ніж я міг би інакше.

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

Більшість сайтів-фрілансерів, таких як UpWork, також надають короткі тести, які ви можете виконати, щоб продемонструвати своє основне розуміння.

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

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

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

як тільки ви знаєте одну мову програмування, зрозуміти інші порівняно просто.

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

Як навчити себе коду

Навчити себе коду - це складний процес, і передові концепції, такі як об’єктно-орієнтоване програмування, можуть бути важкими гайками для зламування. На щастя, в Інтернеті є величезна кількість безкоштовного матеріалу; ми вже виділили кілька чудових курсів з Удемі, і є ще багато інших. У нас є, наприклад, курс для розробників Android, яким керує Гері Сімс.

Ось ще кілька чудових інструментів для вивчення коду прямо зараз:

  • Чудовий курс, який навчить Python для науки про дані.
  • C # пакет кодування
  • Дев'ятипрофесійний навчальний пакет для веб-розробників

І тут є безліч чудових курсів на таких сайтах, як SkillShare.

Дивись також: Як почати розробку додатків Android для початківців у 5 кроків

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

Пошук оплачуваної роботи як розробник програмного забезпечення

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

Пошук роботи на позаштатній основі переважно полягає у використанні сайтів із списком вакансій, фрілансерних веб-сайтів, таких як PeoplePerHour або UpWork.

Також є сайти-фрілансери, які спеціально спрямовані на розробників програмного забезпечення та інженерів. До них відносяться код оренди і навіть переповнення стека.

Є й інші способи заробити гроші на досвіді як розробник програмного забезпечення. Ви можете стати письменником (як я в кінцевому підсумку) та писати підручники для блогів чи книг для технічних видавців. Ви могли викладати через онлайн-курси; чому б не створити власний курс Skillshare?

Якщо ви хочете отримати найкращий комфорт і прослуховування, коли мова йде про вушні навушники, вам потрібно буде кашляти багато тіста. Дві найкращі моделі в преміум просторі навушників Bluetooth - Bo...

Усі не втрачаються, якщо на вас це впливає: просто запустіть оновлення мікропрограмного забезпечення через UB.Нове оновлення прошивки для навушників Boe QC 35 II, здається, створює проблеми деяким кор...

Наша Рекомендація