React — JavaScript-библиотека для создания веб-интерфейсов.

Давайте разберём каждую часть фразы.

  • С помощью веб-интерфейсов пользователи взаимодействуют с сайтом — нажимают на кнопки, заполняют формы, пользуются жестами и другими интерактивными элементами.
  • Создавать интерфейсы для больших проектов на React проще, чем на чистом JavaScript, поэтому эта библиотека используется на большом количестве сайтов. При этом в небольших проектах хватит и чистого JavaScript.
  • Большинство сайтов написано на JavaScript. И если вы знаете JavaScript, то вы автоматически можете описать интерфейс с помощью React. При этом, конечно, есть много техник, которые нужно изучить для использования React.

Чем занимается JavaScript-разработчик

JavaScript-разработчики (иногда их называют фронтенд-разработчиками) отвечают за внешний вид сайта или приложения и делают так, чтобы все интерактивные элементы работали, как задумано дизайнерами. Они используют знания в JavaScript, CSS, HTML. React используется именно для описания интерфейсов.

Разработка. UX-дизайнер создаёт макеты пользовательского интерфейса, а JavaScript-разработчики реализуют их как веб-компоненты, которые могут отправлять и получать данные с бэкэнд-сервера. При этом важно разрабатывать компоненты, которые можно использовать повторно, чтобы сократить время на дальнейшую разработку.

Пример задачи, которую может решить JavaScript-разработчик.

Создать кнопку, которая покажет спиннер внутри неё при отправке HTTP-запроса и превратится обратно в обычную кнопку при успешном или ошибочном выполнении запроса.

Тестирование. Как и любой другой код, код на React обязательно должен проходить тестирование. В это время тестировщики (или сам разработчик) будут тестировать функциональность и исправлять ошибки, если они есть. Это касается и поведения элементов, и их внешнего вида.

Планирование. Разработчики участвуют во встречах по планированию спринтов разработки и ретроспективах по разработке функций, чтобы попытаться улучшить их к следующему спринту. Это общая практика для большинства разработчиков, о которой нужно знать.

Работа в команде. В состав команды обычно входят разработчики, веб-дизайнеры, тестировщики и менеджеры проектов. Нужно находить общий язык со всеми этими людьми, и развитие софт-скиллов (навыков, не относящихся напрямую к коду) тоже очень важно.

Какие нужны навыки

Профессиональная разработка на JavaScript — тот этап в карьере, когда разработчик знает достаточно много и уже умеет пользоваться большим количеством технологий. React ещё немного увеличивает список необходимых знаний, но при этом позволяет перейти на новый карьерный уровень и зарабатывать гораздо больше.

Веб-технологии. Минимум, который необходим любому фронтенд-разработчику: JavaScript, HTML, CSS, Sass или Less, Webpack. JS-разработчику обязательны нужно знать как управлять состоянием компонента с помощью Redux и тестировать компонент с помощью Enzyme

Фреймворки. Знание дополнительных фреймворков помогает или увеличить количество задач (а значит и зарплату) на текущем месте работы, или найти новую, так как будет доступно больше вакансий. Список фреймворков: Angular, Vue, Svelte.

Дополнительные библиотеки.

  • Управление состоянием: Redux, MobX, RxJS.
  • Роутинг: React Router.
  • Стилизация: CSS Modules, styled-components
  • Работа со времене: date-fns
  • Запросы к серверу: axios.

Тестирование приложений. В больших компаниях есть отдельные команды тестировщиков, но в начале карьеры в небольших студиях разработчик может быть сам себе тестировщиком. Чтобы успешно проверять свой код, нужно знать React Testing Library, Mocha, Jest, Karma, VCS, понимать, что такое Unit-тесты и владеть методологией TDD.

«Вы просто нажимаете на кнопки, любой так может». 18 глупых вопросов тестировщику

Базы данных. Общее понимание баз данных поможет налаживать взаимодействие с бэкендом. Самые популярные (и нужные реакт-разработчику): MySQL, NoSQL (например, MongoDB), PostgreSQL, Redis. Не обязательно все, но важно иметь хотя бы общее представление.

Системы контроля версий. Инструменты, в которых обязательно ведётся работа в любой команде программистов. На выбор: GitHub, GitLab, Bitbucket, Subversion.

Облачные платформы. Многие компании переносят сайты (особенно, если нагрузка большая) на облачные сервисы, поэтому хорошо иметь представление о работе и этих систем. Среди популярных: Amazon AWS, Microsoft Azure, OpenStack Apache, Google Cloud Platform.

Управление проектами. Списки задачи и найденные ошибки удобнее всего вести в специальных программах — таск-трекерах и баг-трекерах. Поэтому важно представлять, как работают Jira, Basecamp, Trello, Asana или ClickUp. Они построены на одних и тех же принципах, поэтому достаточно знать, как в целом устроены такие системы.


«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.

ТелеграмПодкастБесплатные учебники

Читать дальше

Как составить хорошее портфолио

Как составить хорошее портфолио

Портфолио — это важный инструмент для любого разработчика, особенно для начинающего. Оно показывает ваши навыки, опыт и квалификацию, привлекает внимание работодателей и повышает шансы на получение оффера мечты.

Читать дальше
Айти
  • 30 июня 2023
Что нужно уметь верстальщику

Что нужно уметь верстальщику

В нулевых никаких фронтов не было, и человек, который делает сайты, был просто человеком, который делает сайты. Мог и на HTML что-то собрать, и стили прописать, и на JavaScript алерты наставить, где нужно. Веб-разработка была маленькой, смешной, но самодостаточной. А потом понеслось.

Верстальщики стали больше писать на JavaScript и начали поглядывать в сторону именования «фронтендер», но всё ещё очень любили делать файлы style.css на десять тысяч строк.

Сейчас же грань размылась — теперь нет разработчиков на React, которые не понимают, как сверстать макет и обвязать всё стилями. При этом спрос на чистых верстальщиков ещё остался — им не обязательно в совершенстве владеть JavaScript, а вот глубоко понимать, как быстро, точно и качественно из макета сделать страницу — обязательно.

В этом и заключается суть работы верстальщиков. Они берут у дизайнеров макет (это картинка, на которой нарисован сайт — К.О.) и собирают из него страницу. Пишут HTML, CSS, используют магию гридов, флексов, какой-нибудь БЭМ. Стараются, в общем, делают. Молодцы.

С другой стороны, HTML сейчас даже в некоторых школах изучают — но отчего-то сразу после школы никто не спешит платить первокурсникам по 500$ за вёрстку. И тут мы приходим к тому, что в 2023 году требуют от верстальщика работодатели.

Мы в HTML Academy работаем над тем, чтобы верстальщики после двух наших интенсивов по вёрстке находили работу, а после интенсива по JavaScript делали это вообще без проблем. И для того, чтобы чему-то обучать, мы должны понять, что требуется рынку сейчас и какие требования выставляет работодатель к верстальщику, чтобы мы могли покрывать такие требования на курсах.

Читать дальше
Айти
  • 8 июня 2023
Веб-разработка. С чего начать

Веб-разработка. С чего начать

На старте бывает непонятно, какой язык программирования выбрать первым. На самом деле, нет идеального языка, который раз и навсегда определит вашу карьеру. Освоить новый язык программирования — всё равно что выучить ещё один иностранный. Сначала надо определиться, что вам больше подходит: фронтенд или бэкенд.

Читать дальше
Айти
  • 2 июня 2023
Как попасть в компанию мечты, если там закрыты все вакансии. Советует HR

Как попасть в компанию мечты, если там закрыты все вакансии. Советует HR

Если вы мечтаете работать в определённой компании, но не нашли вакансий на сайтах по поиску работы — ещё не всё потеряно. Проверьте объявления на других площадках. Если и там ничего нет, воспользуйтесь «обходными путями»: начните со стажировки или познакомьтесь с рекрутёром.

Читать дальше
Айти
  • 14 февраля 2023
Что почитать начинающему разработчику

Что почитать начинающему разработчику

Книга — источник знаний. Можно погрузиться в новый язык программирования, изучить фреймворк, получить ответ на интересующий вопрос и много другое. Мы собрали подборку книг, которая поможет понять, как попасть в мир IT, развиваться в карьере и чего ждать от профессии.

Читать дальше
Айти
  • 9 февраля 2023
Хочу работать в IT, но…

Хочу работать в IT, но…

Изучать что-то новое всегда — волнительное и завораживающее событие. Но некоторые останавливаются, даже не начав. Почему так происходит? По разным причинам, но бывают случаи, что из-за мыслей «ещё рано», «уже поздно», «нет технического образования», «не знаю английский». Мы покажем на примерах, что возраст, наличие образования и знание английского — не проблема для смены профессии.

Читать дальше
Айти
  • 19 января 2023
Как стать фулстек-разработчиком

Как стать фулстек-разработчиком

В отличие от фронтендеров и бэкендеров, фулстек-разработчик способен полностью самостоятельно создать сайт или приложение. Такой специалист отлично разбирается в технологиях, базах данных, серверах, умеет разрабатывать веб-приложения и сайты, знает как фронтенд, так и бэкенд. Давайте узнаем, в чём преимущества профессии, насколько она востребована на рынке и как стать топовым специалистом.

Фулстек-разработчик сочетает несколько направлений и может заменить собой пару более узких специалистов. Главная его особенность — это универсальность. Именно поэтому спрос на таких специалистов всегда есть и постоянно растёт. Многим компаниям выгоднее нанять одного универсального разработчика, чем содержать штат программистов.

Топовых фулстек-разработчиков очень мало, они востребованы и имеют возможность выбирать из ряда предложений то, что им интересно. Джуны с небольшим опытом в сфере фулстек-разработки могут рассчитывать на зарплату от 30 до 100 000 ₽ в месяц. Опытный разработчик получает в среднем вдвое больше — 120—200 000 ₽.

💡 Что должен уметь топовый фулстек-разработчик:

  • Понимать полный цикл процесса разработки.

  • Уверенно знать современный JavaScript (ECMAScript), применять TypeScript.

  • Строить архитектуру клиентских и серверных приложений.

  • Применять ООП и паттерны проектирования на практике.

  • Проектировать и разрабатывать REST API.

  • Проводить автоматизированное тестирование фронтенда и бэкенда.

  • Работать с базами данных.

Зарплаты фулстек-направления

Исследования компании Хабр Карьеры за 2022 год говорят, что средняя зарплата разработчиков в России составляет 140 000 ₽. Сумма немного различается по регионам. В Москве зарплата подросла за год и составляет 180 000 ₽, в Санкт-Петербурге осталась на уровне начала года — 150 000.

Зарплата фулстек-разработчика в среднем составляет 200 000 ₽ в Москве, 160 000 ₽ в Санкт-Петербурге и 130 000 ₽ в регионах.

Этот анализ зарплат составлен по вакансиям сайта hh.ru.

Также специальность фулстек ценится за границей, зарплаты в Европе и в Америке очень достойные. В Нью-Йорке опытный фулстек зарабатывает 3000—3500 $. В Германии работодатели указывают в вакансиях зарплату 2500—4000 $.

Изучив вакансии и уровень дохода, скорее хочется прокачать навыки и стать фулстек-разработчиком. Что же для этого нужно?

Читать дальше
Айти
  • 20 декабря 2022
Какие вопросы задают на собеседованиях

Какие вопросы задают на собеседованиях

Перед первым собеседованием фронтендеры часто сидят и переживают — а что будут спрашивать? А как себя вести? А нужно знать всё-всё или достаточно конкретных вещей?

Короткий ответ — всегда и везде по-разному, угадать тяжело. Некоторые компании составляют собственные уникальные задания, другие берут списки популярных вопросов из интернета. Как повезёт.

Чтобы хоть как-то помочь вам, мы поговорили с коллегами из компаний Affinage и Takeoff-staff, компании Pitchстудии Лепёхина и веб-студии Thmoon. Они рассказали, что спрашивают на собеседованиях, как у них проходит тестовое задание и нужно ли фронтендеру уметь вообще всё, чтобы найти работу.

Читать дальше
Айти
  • 1 декабря 2022