Новини високих технологій
» » Які бувають види програмістів? Види діяльності програміста

Які бувають види програмістів? Види діяльності програміста

19-11-2017, 18:49
6 866
Уявіть собі постапокаліптичну картину світу без програмістів. Дракони з «Гри престолів» перетворяться в чорно-білих Годзилл. Зникнуть чати, месенджери і навіть тетрису не буде. Ми потребуємо в програмістах. Вони пишуть коди для смартфонів, комп'ютерів, пральних машин, змушуючи техніку працювати. Але це далеко не все. У професії багато напрямів і спеціалізацій, кожна з яких має свої особливості і складності, зарплата також залежить від того, чим займається програміст.

Web-розробник

Самим затребуваним на 2017 рік видом професії «програміст» є веб-розробник. До цієї категорії відносяться фахівці по створенню сайтів. Умовно веб-майстри діляться на три групи: розробник Frontend; Backend-програміст; Fullstack-девелопер. Далеко не всі знають, що таке клієнтська і серверна частина. Тому роботодавці часто плутають спеціалізації у веб-розробці. На біржах фріланса зустрічаються оголошення, в яких наймачі від фронтенд-майстра вимагають знання фулстак, при цьому платять як за звичайну верстку. Для не посвячених у містерії коду це схожі види напрямків. Програмісти займаються, здавалося б, однією справою. Але інструменти, мову, обов'язки та оклади у Frontend-майстра і серверного розробника різні.

Хто такий фронтенд-розробник?

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


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

Інструменти фронтенд-розробника

Писати код на HTML, CSS і jаvascript не достатньо. Щоб залишатися конкурентоспроможним на ринку праці, Frontend-розробник повинен знати наступне: jQuery. Бібліотека jаvascript з колекцією плагінів і розширень. Замість того щоб писати код з нуля, jQuery дозволяє додавати і настроювати елементи. Наприклад, автозаповнення форм, слайд-панель, таймер, пов'язана анімація. Фреймворки Bootstrap, Foundation, Backbone, AngularJS і EmberJS. Це програмні оболонки підвищують продуктивність ресурсу. Надають готовий дизайн і суттєво полегшують життя розробника. Препроцессоры SASS і LESS. Додають CSS функціональності, обробляє код перетворюючи його в відформатований і крос-браузерний CSS. Популярні CMS - адаптивна верстка і крос-платформеність. Обов'язки та види діяльності програміста включають налагодження і тестування клієнтської частини. Веб-інженер перевіряє окремі блоки вихідного коду помилки. Тестує інтерфейс, дізнається, наскільки користувачам буде зручно взаємодіяти з додатком. Також фронтенд-фахівець повинен розбиратися в азах серверного програмування, технології Node.js крім JS писати на PHP і SQL.

Зарплата і перспективи

Середній оклад майстра становить 66 тисяч 410 рублів в місяць. У США ця сума виростає до 102 тисяч доларів в рік. Високі зарплати, легкість мови розмітки і написання сценаріїв приваблює початківців кодерів до фронтенд-розробці. Освоївши JS, більшість з них переходить до серверних мов. Найталановитіші вчать високорівневі C і Java, поступово освоюють геймдев, створення програм та інші види інформаційної діяльності програміста.

Програміст серверної частини

Backend – це частина веб-додатки, що знаходиться на сервері. Вона не відображається в браузері, але відповідає за зміни вмісту, забезпечує динамічну роботу і зберігає всю інформацію сайту. Складається з сервера, програми та бази даних. Вид програмістів, які займаються створенням і розробкою цієї частини веб-ресурсу називаються Backend-розробниками.
Програміст серверної частини – це наступний еволюційний щабель після фронтенд-розробника. Його завдання змусити сервер, програму і БД взаємодіяти. Пише на серверних мовах PHP, Ruby, Python, Java і .Net. В якості інструментів для роботи з даними використовує MySQL, Oracle та SQL Server. В описах вакансії роботодавці часто вказують додаткові вимоги: знання фреймворків PHP: Zend, Symfony і CakePHP; досвід роботи з програмним забезпеченням контролю версій (SVN, CVS або Git; навички роботи з операційними системами Linux, Unix, MacOS X і Windows Server. Створення веб-додатки – це складний багаторівневий процес, в якому беруть участь кілька фахівців. Тому бекенд-розробка є командною роботою. При написанні коду, програміст взаємодіє з дизайнерами, верстальниками, менеджерами і замовниками.

Розробник Fullstack

Це вид роботи програміста, який включає в себе всі етапи створення веб-додатки. Fullstack developer –майстер на всі руки, що пише одночасно клієнтську і серверну частину. Перші згадки про професії з'явилися в 2010 році після статті співробітника Facebook Карлоса Буено. З цього моменту компанія наймає працівників виключно рівня Fullstack.

Обов'язки універсального веб-програміста: Серверне адміністрування. Підключення через термінал до віддалених серверів без GUI. Управління клієнтськими групами, брандмауерами, програмами Apache і Nginx. Фулстак-програміст повинен все знати про хмарному хостингу на платформах Heroku, Google Cloud, Azure, AWS і будь-яких інших. Створення бекенду і бази даних. Фахівець повинен розбиратися в базах даних MySQL, PostgreSQL, а також БД noSQL: MongoDB, Redis або Cassandra. Мати уявлення про графових СУБД, таких як Neo4j. Фронтенд-розробка і дизайн. Крім стандартних обов'язків, верстки та підключення JS, Fullstack-майстер проектує макет в редакторах Photoshop або Illustrator. Фулстак-розробники – це фахівці рівня Senior Developer. За ними полюють хедхантери і у них найвищі оклади. В США зарплата Fullstack Developer починається від 70-80 тисяч доларів і від 25-30 тисяч доларів в країнах Східної Європи. На закордонних біржах фріланса, наприклад Upwork, одна година роботи Fullstack-розробника оцінюється в 30$ і вище.

Спеціаліст по створенню і розробці комп'ютерних ігор

Розробка комп'ютерних ігор – одна з найбільш швидкозростаючих сфер ІТ-технологій. За даними аналітичного агентства NewZoo обсяг ринку відеоігор з кожним роком збільшується на 9%. Якщо в 2016 році він склав майже 100 мільярдів доларів, то до 2018 року ця сума збільшиться до 112.5 мільярдів. Тому «інженер відеоігор» – це перспективна і високооплачувану посаду. Інженер, або Game-розробник – загальна назва категорії фахівців, задіяних у процесі створення гри. Головна задача – перетворити ідею в програмний код і змусити всі елементи взаємодіяти. 90% робочого часу програмісти пишуть і налагоджують алгоритми на мові C++, Visual Basic, Java та MEL. Романтики в професії мало. В основному, це рутинний і багатогодинної праця за комп'ютером. Графік зазвичай ненормований. Якщо дизайнеру приходить геніальна ідея терміново щось переробити, всю ніч працює над кодом саме програміст.

Які бувають види програмістів ігор?

Створення консольної, мобільного або комп'ютерної гри – це багаторівневий процес. Починається на стадії проектування, закінчується просуванням і комерційною реалізацією продукту. Також у гри багато окремих аспектів, включаючи інтерфейс, аудіо і відео ефекти, штучний інтелект. Для кожного є окремий вид програмістів: Провідний програміст по звуку: пише утиліти, щоб аудіо і відео ефекти поєднувалися. Розробник ігрового движка. Спеціаліст UI або творець графічного інтерфейсу. Інженер штучного інтелекту для імітації логіки і прийняття персонажами рішень, особливо в іграх, де від гравця залежать дії супротивника. Програміст геймплея: стратегія гри, реалізація механіки і логіки. Інженер пристроїв введення. Пише код для джойстиків, клавіатури, мишки та пристроїв, з допомогою яких користувач буде взаємодіяти з відеогрою. Програміст комунікаційних мереж для багатокористувацьких ігор. За свою працю на благо ігрової індустрії даний вид програмістів отримує зарплату від 60 тисяч рублів. Дохід інді-розробників точно прорахувати складно. Є випадки, коли успішні проекти приносили мільйони буквально за тиждень. Наприклад, гра-хіт Club Punch, Angry Birds і всім відома «Майнкрафт». Існують, звичайно, провальні задумки зразок Ninja Scroll, не виправдали очікування творців.

Системний програміст

Система, софт, або програмне забезпечення – це набір інструкцій для комп'ютера. До них відносяться утиліти, драйвери, команди для процесора, відеокарти, монітора. Пише їх системний інженер зрозумілою для машини мовою, або коді. Розробляється програмне забезпечення під різні операційні системи, включаючи серверні Unix і Windows Server, а також мобільні платформи. Код пишеться на мовах Сі, за рідкісним винятком Assembler. Основне завдання системного інженера полягає в установці, налаштуванні, тестуванні ОС і всіх її компонентів Різні види професії «програміст» вимагають від фахівця певних навичок, досвіду роботи і рівня володіння комп'ютерними мовами. Але праця саме системних інженерів є найскладнішим. Для створення потрібні поглиблені знання інформатики, алгебри, математики та побудови алгоритмів. Системний програміст необхідний у будь-якій сфері ІТ, включаючи автоматизацію процесів виробництва і моніторинг безпеки. У США за працю фахівця готові платити від 87 до 104 тисяч доларів. В Англії 57 тисяч фунтів стерлінгів, у Росії 90 тисяч рублів.

Інженер прикладного програмного забезпечення

Даний вид програмістів створює не системне, а прикладне ПЗ. Це програми, або програми, які взаємодіють з користувачем безпосередньо. Наприклад, текстові та графічні редактори, бази даних, аудіо та відео плеєри. Робота прикладного інженера полягає в написанні коду, його подальшої компіляції, налагодження і тестування. Іноді фахівець оновлює або вносить зміни у вже існуюче. Для програмування використовує високорівневі мови Java, C#, C++, Python, PHP. Прикладні програмісти рідко працюють поодинці. В основному, вони є учасниками стартапів, або входять в штат співробітників компанії, що займається розробкою комп'ютерного софту. «Програміст» – цікава і різноманітна професія з безліччю напрямів і спеціалізацій. Одні роблять віджети для сайтів і проектують API, інші пишуть код для серверів або працюють над графікою Disciples III. Кожен, хто любить програмувати, може реалізувати себе у веб-розробці, стати відомим творцем ігор або писати програми для супутників НАСА.
Цікаво по темі
Скриптові мови програмування: завдання, особливості та переваги
Скриптові мови програмування: завдання, особливості та переваги
Скриптові мови – це високорівневі мови програмування. Використовуються для написання сценаріїв. Від класичних C++, C# і Java відрізняються простим
Кодер - це Кодер: опис, функції та особливості
Кодер - це Кодер: опис, функції та особливості
Є дві думки з приводу програмістів і кодерів. Одне з них говорить про те, що програміст – це просунутий спеціаліст, якого можна назвати архітектором.
Python - середовище розробки. Python 3 для початківців
Python - середовище розробки. Python 3 для початківців
Python - один з найперспективніших сучасних мов програмування. Він гнучкий і простий, його код прозорий і дуже зрозумілий: от за що багато
Що таке нативний додаток? Мобільний додаток
Що таке нативний додаток? Мобільний додаток
У перекладі з англійської native означає «рідний». Нативний додаток розробляється для мобільних телефонів під конкретну операційну систему. Розробкою
Скільки отримує програміст в місяць в різних країнах?
Скільки отримує програміст в місяць в різних країнах?
Програмування – одна з найбільш затребуваних професій сучасності. Однак, незважаючи на зростаючий попит...