IT-ликбез

Front-End. Back-End. Full Stack

IT-специальности. Vol. 1
Фото: REDPIXEL.PL / shutterstock
В недавнем материале ALMAMAT Blog привел данные разных организаций, которые стараются мониторить мировое и локальные IT-комьюнити. Подразумевается, что Developer Population – это целый класс специальностей «разработчики программного обеспечения». Специальностей в IT много, поэтому мы выпустим серию материалов и обрисуем функции разных ролей. Кстати, уже сейчас в образовательной системе ALMAMAT можно изучать специальность QA-инженера по программе #Women_in_Tech.
ЧТО НУЖНО РЫНКУ IT
Роли и функции

Чем занимаются Front-End, Back-End и Full Stack разработчики? Смотрим содержание реальных вакансий.
Cпециальность
Front-End Developer
Чем занимается
В описания вакансий чаще всего пишут «Frontend-разработчик». Занимается клиентской стороной пользовательского интерфейса. Средняя зарплата на российском рынке – порядка 70 000-160 000 рублей в месяц, на рынке Кремниевой долины – порядка 100 000 долларов в год. Может работать в офисе и удаленно. На удаленке обычно использует тайм-трекинговую программу и получает почасовую оплату.

Разрабатывает интерфейсы, верстает, участвует в проектировании UI/UX, занимается редизайном. Может отвечать за интерфейс сайта и мобильных приложений.

Фронтэндер владеет английским на уровне чтения технической документации. Знает, например, такое сочетание языков, подходов, инструментов: JavaScript, CSS, HTML, PHP, MySQL, SQL; особенности браузеров; кроссбраузерная верстка; система контроля версий Git, JavaScript-фреймворки Angular и Vue; JS тест-фреймворк Mocha; препроцессоры и сборщики Less, Gulp, библиотеки React и jQuery; JSON; набор для создания сайтов и веб-приложений Bootstrap; пакет модулей JS с открытым исходным кодом Webpack; техники разработки веб-интерфейсов Ajax; различные API. Приветствуется, когда он умеет работать по Agile/Scrum, имеет опыт командной разработки и пользуется Jira. Далеко не всегда все это нужно знать и уметь именно в таком объеме и перечне. Описание требований в вакансиях бывает и лаконичным.

В обязанности могут в каком-то объеме входить тестирование и рефакторинг (улучшение существующего кода). Одно из распространенных требований к фронтэндеру – писать чистый и понятный код.
Cпециальность
Back-End Developer
Чем занимается
В вакансиях чаще всего пишут «Backend-разработчик», «бэкенд-разработчик», «бекенд-разработчик». Занимается серверной разработкой. То есть тем, что «за кулисами»: что не видит пользователь, но благодаря чему работает сайт, веб-приложение и т. п. Выстраивает техническую и бизнесовую логику продукта.

Диапазон зарплаты: 50 000-220 000 рублей в месяц в зависимости от опыта и навыков.

Работает над серверной частью веб-приложения, в некоторых проектах – и iOS- и/или Android-приложений. Разрабатывает функциональные возможности системы, оптимизирует уже существующий код, придумывает новый функционал. Умеет работать по Agile/Scrum. Владеет техническим английским.

Пишет на серверных языках разработки: например, Java, PHP, Ruby, Python. Работает с программной платформой Node.js, которая превращает JavaSript в язык общего назначения. Знает объектно-ориентированное и/или функциональное программирование. Работает с базами данных, системой контроля версий Git, фреймворками, консолями, API. Иногда в его обязанности включают и тестирование.

Суммарно в вакансиях по поисковому запросу Backend-разработчик может быть указано множество языков, технологий, концепций: C++, C#, Java, PHP, Ruby, Python, JavaScript, jQuery, Spring, node.js, HTML, CSS, React, Angular, Vue, Webpack, Redux, Rest, Soap, API, PostgreSQL, SQL, MongoDB, Symfony, Codeigniter, Yii, Zend Framework, Kohana, Magento, Tarantool, Elastic search, Docker, RabbitMQ, Redis, Asyncio, Memcache, Postgres, Composer, Hibernate, Ubuntu Linux, асинхронный код и т. д.

Это не значит, что нужно знать и уметь это все, чтобы найти работу. Проекты разные, как и искомый уровень разработчика. Код в разных проектах пишется на разных языках с применением разных стеков технологий. Разумеется, востребованность разработчика и его доходы растут по мере набора знаний и навыков. Некоторые вакансии действительно содержат длинный список требований. А другие – запрос такого рода: PHP, HTML, CSS, JavaScript (jQuery), ООП и Git.
Cпециальность
Full Stack Developer
Чем занимается
Поскольку фронтенд-разработчик и бэкенд-разработчик тесно связаны в процессе создания продукта, то, по мере накопления опыта, их функции может объединить один специалист с полным стеком. Он так и называется Full-Stack разработчик. В вакансиях можно увидеть написание «Fullstack-разработчик», Fullstack Developer, «фуллстек-разработчик». Этот специалист проектирует обе части архитектуры – и пользовательскую, и серверную.

Диапазон зарплаты фуллстека на российском рынке: 70 000-300 000 рублей в месяц.

Основные требования к фуллстеку в вакансии могут быть описаны, например, так: JavaScript, Node.js, HTML, CSS, React, Angular, Git, Webpack; умение работать в команде; знание методологии разработки и кроссбраузерной верстки. Или так: JavaScript, Django, Python, PostgreSQL, Scrum, Test-Driven Development, Git, внимательность. Или так: C#, .Net Framework, .netcore, MS Visual Studio, React, jQuery, HTML, JS, CSS, понимание протокола HTTP, mongodb, рефакторинг, умение работать в команде, желание развиваться. То есть вакансии разные, но более-менее постоянная часть в них очевидна.
ЧТО НУЖНО РЫНКУ IT
Константы

В описаниях вакансий часто указывают в скобках язык, библиотеки и фреймворки, на которых предстоит работать в проекте. А также позицию/уровень: Senior (старший, синьор), Middle (средний, мидл), Junior (младший, джуниор). Требуемые конкретным компаниям технологии могут быть перечислены в разных сочетаниях. Незнание каких-то технологий наниматели могут и не рассматривать как критичное несоответствие позиции, если соискатель готов изучить их.

В следующий раз мы расскажем о 3 других IT-специальностях. Подписывайтесь на блог в соцсетях и заглядывайте. almamat blog
Almamat рассказывает, как стать QA-инженером