Фронтэнд и бэкэнд что выбрать

Что выбрать: frontend, backend или fullstack?

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Эксперт в PHP, Java, TeamLead, IT Management, ITIL, DevOps.

В веб-разработке есть три основных типа: frontend, backend и fullstack. Вместе с преподавателями SkillFactory мы разбираемся, чем они отличаются, кому больше подходят и что нужно изучить, чтобы построить карьеру в каждом из них.

Frontend-разработчик отвечает за дизайн сайта, верстку и анимирование. То, что происходит «‎под капотом»‎ — внутренняя логика сайта, взаимодействие с сервером и базами данных, — ответственность backend-разработчика. Fullstack-разработчик должен уметь и то и другое.

Frontend-разработчик

Чем занимается?

Frontend-разработчик отвечает за красивые и понятные интерфейсы. Он делает так, чтобы статичный макет превратился в привлекательную и функциональную страницу в интернете, на которой можно нажимать кнопки, покупать товары и т.д. При этом страница будет правильно отображаться во всех браузерах и на разных устройствах.

Технический стек

Чтобы быть успешным frontend-разработчиком, нужно освоить HTML, CSS и JavaScript. На HTML пишут «скелет» страницы, на CSS настраивают цвета, шрифты и ее внутреннее наполнение. После освоения статичных веб-страниц разработчик учится языку JavaScript, который позволяют добавить на сайт динамичные элементы: слайдеры, калькуляторы, анимации.

Рабочий день

Типичный рабочий день frontend-разработчика начинается со встречи или звонка, на котором обсуждаются задачи, приоритеты и проблемы. Затем он скачивает последние версии кода с GitHub (сервис для размещения проектов и совместной работы над ними), просматривает изменения и комментарии и начинает работать. Помимо этого, ему нужно изучать тематические ресурсы, чтобы быть в курсе современных трендов.

Карьерный рост

Начальный уровень в разработке — стажеры (trainee). Это начинающие специалисты, которые закончили курсы и получили базовые знания. Их зарплаты, как правило, не поднимаются выше 30 тыс. руб.

Следующий уровень — джуниор-разработчики, они обладают небольшим опытом работы с проектами и часто советуются с более опытными коллегами. Зарплата джуниор-разработчика в Москве начинается с 60 тыс. руб.

Мидл frontend-разработчик — это опытный человек, способный самостоятельно и качественно решить большинство задач. Его зарплата обычно начинается от 100 тыс. руб.

Синьор frontend-разработчик обладает большим опытом, самостоятельно принимает решения о разработке, имеет свое видение архитектуры проекта и может его обосновать. Помимо этого, он решает менеджерские задачи, участвует в совещаниях с другими отделами.

Получите перспективную IT-профессию с нуля. Вы освоите полный набор знаний и умений, необходимых для создания визуальной части веб-приложений.

Дополнительная скидка 5% по промокоду BLOG.

Личные качества

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

Алексей Видякин, frontend-разработчик:

«Я работаю frontend-разработчиком в сфере рекламы и маркетинга. Больше всего в работе мне нравится, что можно видеть результат сразу же после написания кода. HTML, CSS и JavaScript позволяют визуализировать свои или дизайнерские идеи, сделать интерфейс приложения удобным и понятным для пользователя».

Backend-разработчик

Чем занимается?

Backend-разработчик решает самые разные задачи, начиная от создания каркаса будущего приложения, заканчивая специфическими бизнес-задачами. Например, в банке такой специалист будет анализировать платежи с банковских терминалов и проверять их корректности для предотвращения краж. Еще он проектирует системы хранения и обеспечивает быстроту обмена данными, контролирует их чистоту и корректность доступа к ним. Помимо этого, backend-разработчик пишет системы для автоматического тестирования и проверяет, корректно ли работает программа.

Технический стек

Backend-части часто пишут на PHP, JavaScript и Go; для больших приложений, например банковских, используется Java. У каждого языка, как и любого инструмента, своя область применения. Backend-разработчики активно используют фреймворки — каркасы приложений, в которых фундаментальный функционал уже оптимизирован, это позволяет сосредоточиться на более конкретных задачах.

Рабочий день

Рабочий день backend-разработчика зависит от места работы. В компаниях, занимающихся разработкой собственного продукта, более размеренный ритм, в котором есть пара больших сессий написания кода в день (по 2–3 часа), короткие встречи для синхронизации с командой, обсуждение архитектурных вопросов. У заказной разработки график более рваный: нужно общаться с заказчиками, быстро вносить правки и участвовать во встречах.

Карьерный рост

Карьера начинается с позиции джуниор-разработчика. В течение испытательного срока он изучает процессы разработки, общается с командой и очень много работает. Первые полгода-год джуниор набирается опыта. Если за это время до конца было доведено много задач, багов было немного, а производительность сравнима с более опытными коллегами, можно просить о повышении.

Дальнейший рост может быть разным, как ветки прокачки в компьютерных играх: если вы прокачиваете технические навыки (hard skills), можно вырасти до уровня архитектора. Если вы чувствуете тягу к построению процессов, можно освоить методологии управления Scrum или Agile и обучать команды. Если есть уклон в классический менеджмент, можно вырасти до тимлидов и CTO (Chief Technical Officer, технический директор): в этой области нужно уметь организовывать и строить процессы, а также не бояться общаться с заказчиками.

Личные качества

Ответственность: на плечах такого специалиста лежит очень многое. Но самое главное качество программиста — научиться думать абстракциями. Если человек не может перейти с материального уровня на уровень функций, объектов, паттернов, то ему будет сложновато.

Александр Пряхин, работает в IT-менеджменте, до этого — backend-разработчик на PHP и Java:

«Моя профессия нравится мне динамикой. То, что вчера казалось фантастикой, сегодня – реальность. Посмотрите, как Тони Старк в фильме „Железный человек“ 2010 года с телефона показывает видео на телевизоре. Сейчас это обыденность. Программисты создают экосистемы, цифровые миры, высокопроизводительные системы. Разве это не круто?»

Освойте с нуля программирование на Go и бэкенд-разработку высоконагруженных приложений и станьте незаменимым специалистом. Дополнительная скидка 5% по промокоду BLOG.

Fullstack-разработчик

Чем занимается?

Fullstack-разработчик — это универсальный солдат. Он сам создает веб-приложения, начиная от проектирования структуры, заканчивая его размещением на сервере. Обычно он не разрабатывает крупные проекты: для этого необходима плотная работа frontend- и backend-команд. Часто он занимается небольшими проектами для крупных компаний или фрилансом, что дает свои плюсы: он не зависит ни от кого, кроме заказчика. А если возникнет необходимость, всегда можно переквалифицироваться в backend- или frontend-разработчика.

В fullstack-разработку часто приходят люди, создающие собственные стартапы. Например, WhatsApp был основан двумя разработчиками, Яном Кумом и Брайаном Эктоном. Для создания MVP (minimum viable product, минимально жизнеспособный продукт) им пришлось освоить fullstack-разработку. Поэтому часто это не чистое программирование со строгой методологией, а творчество, позволяющее специалисту реализовывать свои идеи.

Технический стек

Что должен знать fullstack-разработчик:

Рабочий день

День fullstack-разработчика обычно начинается с разбора тикетов (заявок пользователей) по системам, находящимся на поддержке. После решения срочных проблем продолжается работа над текущим проектом. На фрилансе много времени будет занимать общение и составление технических заданий, а в крупных компаниях обычно есть единая методология ведения проектов, например Agile.

Карьерный рост

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

Зарплата начинающих fullstack-разработчиков в Москве стартует от 60 тыс. руб. в месяц, а у экспертов доходит до 300 тыс. руб.

Личные качества

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

Олег Ледванов, fullstack веб-разработчик:

«Я работаю fullstack-разработчиком в крупной компании из сферы телекоммуникаций, а до этого работал на фрилансе. Работа нравится мне тем, что можно быть ответственным за проект целиком и ни от кого не зависеть. Помимо этого, я могу пробовать новые фреймворки, мне не нужно ни с кем согласовывать свой стек и подстраиваться под компании».

Fullstack-разработчик на Python

Освойте программирование и fullstack-разработку на Python и Django. После обучения наш карьерный центр поможет вам подготовиться к собеседованию и предложит несколько вакансий на выбор. Дополнительная скидка 5% по промокоду BLOG.

Источник

Стать программистом: фронтенд vs бэкенд

Чем занимается каждое из направлений

Фронтенд-разработка

Занимается версткой и программированием страниц. Всё, что вы видите и с чем взаимодействуете на сайтах: дизайн, кнопки, листалки, схемы — относится к этому направлению разработки.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбратьКоротко и схематично о фронтенде. Слева направо: HTML — CSS — Javascript.

Задачи фронтенд-разработчика — сверстать и «оживить» сайт, обеспечить корректность его работы на всех устройствах. Для этого специалисту необходимо знание языков разметки HTML и CSS и языка программирования JavaScript, а также педантичность и внимательность.

Часто для перехода в ИТ-сферу выбирают именно фронтенд-разработку. Она не требует углубленного знания математики и подходит людям и с гуманитарным складом ума.

Бэкенд-разработка

Отвечает за внутреннюю функциональность сайта. Бэкенд-разработчик работает с сервером — невидимой частью сайта, где хранится вся информация. Он создает базы данных и управляет ими, проводит интеграции с внешними сервисами и занимается всем, что находится «под капотом» сайта.

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

«Бэкенд есть у сайтов, мобильных приложений и даже у игр. Последние тоже „общаются“ с серверами и передают данные о вашей игре. Все платежные системы, системы оповещения, отправки писем и многое другое — все делается на бэкенде». Алексей Симоненко, директор по развитию в HTML Academy

Для бэкенда существует несколько языков программирования: PHP, Python, Ruby и другие. Поскольку они сильно отличаются между собой, мы остановимся на одном из них — PHP.

PHP — один из самых популярных и стабильных языков бэкенд-разработки. По данным W3tech.com, на нем написано 79% сайтов. PHP находится в топе языков программирования более 20 лет.

Рынок труда для фронтенд- и бэкенд-разработчиков на PHP

Динамика вакансий

По данным hh.ru, оба направления востребованы примерно одинаково. При этом востребованность специалистов растет.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Уровень конкуренции

Уровень конкуренции за рабочие места среди бэкенд-разработчиков ниже, чем у фронтенд-разработчиков и в целом по рынку. В апреле 2021 года hh.индекс (соотношение количества активных резюме к вакансиям) составлял:

Уровень зарплат фронтенд- и PHP-разработчиков (по данным hh.ru за 2021 год), в рублях

Уровень зарплат для фронтенд-разработчиков несколько выше, чем для PHP-разработчиков.

Зарплата PHP-разработчиков находится в диапазоне от 75 до 155 тысяч рублей, в среднем специалисты получают 110 тысяч рублей. Зарплата фронтенд-разработчиков лежит в диапазоне от 85 до 180 тысяч рублей и в среднем составляет 125 тысяч рублей.

РегионНаправление разработки1-й квартиль
(минимум по рынку), тыс. руб
2-й квартиль (медианная зарплата), тыс. руб3-й квартиль (максимум по рынку), тыс. руб
РоссияPHP75110155
РоссияФронтенд85125180
МоскваPHP100140175
МоскваФронтенд110150200
Санкт-ПетербургPHP85120160
Санкт-ПетербургФронтенд100140180
РегионыPHP60100130
РегионыФронтенд70100150

Какой вы программист?

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

🌟 Фронтенд-разработчик🔥 Бэкенд-разработчик
✓ Визуальная часть
То, что вы делаете, видно сразу. Эстетика, педантичность и быстрый результат.
✓ Глубинное устройство
Бэкенд не покажешь маме со словами
«Смотри, это я сделал»,
но без него ничего не работает.
✓ Узкая направленность
Фронтенд — всегда верстка
и программирование на JavaScript.
✓ Возможность выбора
Много языков программирования.
Возможность работать сразу
на нескольких популярных языках.
✓ Постоянные обновления
Фронтенд постоянно развивается —
и разработчикам придется учиться всегда.
✓ Стабильность
Радикальные изменения в бэкенде происходят редко. Это направление требует фундаментальных знаний.
✓ Низкий порог входа
Освоить фронтенд может даже человек
с гуманитарным складом ума.
Где-то придется подтянуть математику, но в целом всё реально.
✓ Хардкор
Приготовьте знание и любовь
к математике, сложным задачам, оптимизации, алгоритмам
и всему техническому.
Только бэкенд, только хардкор!

Чтобы выбор был еще проще, пройдите бесплатный тренажер « Знакомство с веб-разработкой». За два дня вы на практике познакомитесь с HTML, CSS, JavaScript и PHP и точно определитесь.

Полноценное обучение

Для тех, кто готов погрузиться в программирование, в HTML Academy открыт набор на программы «Фронтенд-разработчик» и «Бэкенд-разработчик». Обучение фронтенду займет у вас 1 год и 3 месяца, бэкенду — 1 год и 2 месяца.

На каждой из программ вас ждут:

Источник

Frontend или Backend?

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Это две огромные отрасли и по сути я сейчас стою перед выбором дальнейшего пути! Frontend явно симпатизирует мне больше так как я работаю с этим! По з/п не суть важно, просто хотел узнать большая ли разница! Я просто боюсь ошибиться и потерять время, что в наше время, очень дорогой ресурс!Спасибо за совет.

Как говориться «За двумя зайцами погонишься, ни одного не поймаешь».

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

В большинстве случаев новички всегда предпочитают front-end =)

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Почему пару лет назад при устройстве в хорошую веб студию ты должен был уметь все!
А теперь как не взглянешь на нового соискателя, так он ни только php толком не знает, но и про html слышал краем уха, не говоря уже об sql.

А по вопросу — оставайтесь в frontend’е. Вашу работу проще показать начальнику, проще похвалиться и попросить повышения зп.

К примеру я ушел на Backend и RESTfull API. В итоге начальник не понимает даже что я делаю. Да, что-то важное. Но мне нечего ему «показать» что бы сказать «вот какой я молодец, дай мне премию или надбавку к зп». Зато JS все счастливые и довольные.

> пару лет назад при устройстве в хорошую веб студию ты должен был уметь все!
на это и сейчас расчитывают

Источник

Из фронтенда в бэкенд

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

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

При этом некоторые работодатели всячески это приветствуют и считают чем-то вроде предохранителя от выгорания – человек сменит фокус внимания, сменит департамент или отдел, но не сменит саму работу в целом.

Меня зовут Костя, и я работаю в QIWI почти 4 года. Сегодня расскажу вам, как успешно перешел из frontend-разработки в backend.

Frontend

В QIWI я с конца 2014 года, начинал работать как разработчик iOS–приложений, и, в принципе, пару лет занимался разработкой QIWI-кошелька. При этом не могу сказать, что было скучно – задачи были довольно разные и в рамках одного приложения: мы занимались интеграцией кошелька с другими нашими сервисами, чинили баги, подтягивали анимацию. Кроме этого, был занятный опыт по созданию приложения для Apple Watch. Потом немного расширил фокус и поработал еще и над iOS-приложением для «Совести».

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

И вот примерно тогда я начал потихоньку переходить в бэк. В плане гибкой методологии это даже удобно – я переключался, в первом спринте мог делать какие-то задачки по бэкенду, а во втором проводить интеграцию API, которое я же и написал.

Но в бэкенде на то время было слишком мало разработчиков и слишком здоровенный бэклог, так что в итоге я все же переключился на бэкенд полностью. То, что я делаю сейчас, это классические задачи бэкендера – пишу код в наших микросервисах, чиню баги, занимаюсь рефакторингом, постигаю Kotlin. Есть возможность работать и над свежим продуктом компании – QIWI Инвестор.

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

Так что тут сложилась win-win ситуация – я хотел помочь команде и продукту (перевес в разработке был сильно не в сторону бэкендеров) и набраться новых знаний. Тимлиды все поняли и отпустили меня без каких-то претензий, продакт тоже.

Кроме этого, знания хотелось именно диверсифицировать, чтобы не привязываться к одной платформе (Android мне немного не по душе, но и Apple все же сдает позиции). Ну и было желание в случае чего уметь взять и сделать себе приложение самому (и фронт, и бэк), если вдруг появится какая-то клевая идея. Пока вот не пригодилось, правда.

Backend

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Никого не раздражало, что первое время я явно работал не так эффективно, потому что во многое надо было въезжать (но в долгосрочной перспективе команда-то все равно в выигрыше).

Конечно, у меня и до этого был небольшой опыт в разных сферах – мобильные игры и веб, но это все были, скорее, попытки нащупать что-то свое, нежели именно набивание практического серьезного опыта.

Впечатления от бэкенда после фронтенда

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

Набраться опыта и делать что-то крутое можно в любой области, было бы желание и усидчивость, здесь практики сходятся – сделать что-то (и сделать хорошо), и чтобы это работало надежно и легко поддерживалось. Причем для бэкендера не столь критично наличие или отсутствие опыта во фронте. Если разраб учитывает все мелочи, сам продумывает корнер-кейсы и в целом понимает, как будут использовать его API, то он и без фронт-знаний сделает все, как надо.

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

Что в итоге

Backend-разработка стала для меня еще одним хорошим опытом – я научился писать код и проводить ревью, продумывать архитектуру. Это на самом деле интересно.

Но при этом, попробовав вживую что фронт, что бэк, я не скажу, что в случае чего сразу выбрал бы бэкенд в самом начале карьеры. Для меня все же важно видеть и понимать, как мой продукт воспринимают пользователи. С бэкендом это все довольно призрачно.

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

Источник

Что выбрать — frontend или backend

Веб-пространство – наиболее популярная часть IT-мира, поэтому нет ничего удивительного в том, что стать его частью хочет огромное количество людей. Если быть блогером или каким другим «гуманитарием» вам не по душе, а оставить свой след в вебе очень хочется — придётся разобраться в различиях фронтенда и бэкенда. Наш краткий обзор вам поможет.

Начнём с азов, то есть определений.

Чтобы вам было проще понять, проведём простую аналогию. Веб-страница – это симпатичная девушка (или парень, кому что ближе). Представьте ваше знакомство или свидание.

Первое, на что обращаете внимание — внешность. Это фронтенд. Ваш фокус постепенно переходит с крупных и ярких деталей к мелочам – чтобы волосы были причёсаны, кожа ухожена, ну и в целом видно, что человек к свиданию готовился. Так и с сайтами, только в этом случае вы рассматриваете таблицы, кнопки, блоки, картинки и прочее. Как и с человеком, в первую очередь здесь важны аккуратность и общий приятный вид, а уже потом яркие акценты. Эти задачи решаются frontend-разработчиками, «стилистами» веб-пространства.

Рано или поздно на свидании ваш собеседник открывает рот, то есть показывает первые признаки бэкенда — свой интеллект. Умение привлечь внимание не внешностью, а поведением — небольшое дело, но чтобы удержать фокус, действительно надо постараться. С сайтами точно так же. Необычная функциональность — хорошо, но по-настоящему круто, когда он построен на безупречном фундаменте, интуитивно понятен и работает как надо. С этой задачей приходится справляться бэкенд-разработчикам.

Что предстоит учить

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

Обязательный минимум фронтенд-разработчика

HTML — язык гипертекстовой разметки. Иначе говоря – главный инструмент для создания внешнего облика веб-страницы: текст, картинки, таблицы, блоки и прочие базовые элементы дизайна. Сайты на чистом HTML уже не встречаются, но без знания этого языка во фронтенде делать нечего.

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

JavaScript — в отличие от предыдущих представителей, это полноценный язык программирования, формально относящийся к фронт-енду. Фактически возможности JS куда шире организации «внешности», на нём можно создавать многие «серверные» фичи. Лишь бы у разработчика была фантазия, а в браузере стоял интерпретатор.

На выбор для будущего бэкенд-разработчика

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

Python — один из самых простых языков для изучения. Прекрасно справляется с обязанностями «двигателя» веба благодаря удобству и фреймворку, речь о котором пойдет чуть позднее.

Ruby — ещё один язык серверной части, в своё время набравший сумасшедшую популярность благодаря веб-фреймворку.

SQL — язык для обработки баз данных, без которого бэкенда, можно сказать, не существует. Любую социальную сеть, интернет-магазин или просто страницу, изобилующую информацией, трудно представить без привязки к внешним базам.

Go — язык, в своё время специально разработанный корпорацией Google для высоконагруженных сервисов. Так как такую характеристику имеет большинство сервисов Google, и справляются они со своими задачами на отлично язык быстро ушел в народ.

Java — универсальный и мощный язык программирования, предназначенный для разработки веб и корпоративных приложений, банковского программного обеспечения, высоконагруженных сервисов, мобильных приложений, ПО для встраиваемых систем, отлично подходит для автоматизации тестирования. В меньшей степени подходит для разработки игр и desktop приложений. Совсем не подходит для frontend-разработки, есть конечно инструменты позволяющие разрабатывать frontend, но на самом деле Java код транслируется потом в JavaScript.

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

Фреймворки front-end

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

React.js — данный фреймворк, как и многие другие фреймворки frontend, ориентирован на применение JavaScript. Чтобы в первом приближении оценить его, скажем одну вещь — он разрабатывается и активно применяется компанией Facebook Inc. Их социальная сеть и сервис Instagram — лучшая реклама React.js.

Angular — продукт другой корпорации, Google. Получил большую популярность благодаря удобству и инструментам по созданию material design – тренду, не теряющему популярность уже более 5 лет.

Vue.js — некое промежуточное звено между Angular и React как по популярности, так и по функциональности. Крупного покровителя не имеет, но обеспечивает такой уровень удобства, что на задачах начальной сложности вы будете считать его своей волшебной палочкой.

jQuery — один из старейших фреймворков для JavaScript, наиболее распространён в современном вебе. 74% из 10 миллионов самых популярных сайтов было создано с использованием jQuery. Простота библиотеки позволяет легко внедрить простые DOM и анимацию за минимальное время с минимальной угрозой негативных последствий.

Фреймворки back-end

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

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

Django (Python) – тот самый фреймворк, который позволяет использовать Python в мире веба на полную катушку. Популярность объясняется очень просто: возможности огромного числа разработчиков веба не дотягивают до PHP, C, Java и прочих языков, а желания творить — хоть отбавляй много. И вот как раз с Python и Django у них всё удачно складывается.

Ruby on Rails (Ruby) – чтобы понять прелесть RoR, надо понимать Ruby и его сообщество. Язык относительно сложный, а вот разработчики на нём добродушные (и любят делиться исходным кодом). Вот и получается, что, используя Ruby on Rails, возможно, будете долго запрягать, зато быстро поедете.

Прочее

Разница в остальных инструментах лежит в области понимания профессии. Фронтенд-разработчики в основном нуждаются в инструментах визуализации (то есть графических редакторах) и в шаблонах. Актуальность знаний здесь играет чуть большую роль.

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

Что читать для знакомства с фронтендом и бэкендом

Мы подобрали ряд книг, ознакомившись с которыми, вы сможете понять, что сложнее — frontend или backend — в вашем случае.

Front-end

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

В отличие от предыдущей книги, здесь практически отсутствует реальный код, зато есть огромное количество справочных данных.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Back-end

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Одна из базовых книг по PHP. Скляра читал, наверное, каждый бэкенд-разработчик. Прекрасно подойдёт тем, кто начинает изучение с нуля. Всё чётко и подробно, а главное – с примерами.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Несмотря на заявленную в заголовке основную тему, читателю предлагается пройти весь путь веб-разработчика, начиная с основ HTML и СSS, и заканчивая довольно сложными сайтами и приложениями с использованием Ruby. Но важно отметить: языкам эта книга не учит, а вот тому, как создавать правильные приложения на «рельсах» – пожалуйста.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

Если вы хотите создавать веб на Java, эта книга будет очень полезна для вас. Языку здесь не обучают, но процесс создания бэкенда с использованием Spring здесь описан простым информативным языком. Следуя по главам шаг за шагом вы на себе ощутите как превращаетесь из зелёного новичка в знающего профессионала.

Фронтэнд и бэкэнд что выбрать. Смотреть фото Фронтэнд и бэкэнд что выбрать. Смотреть картинку Фронтэнд и бэкэнд что выбрать. Картинка про Фронтэнд и бэкэнд что выбрать. Фото Фронтэнд и бэкэнд что выбрать

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

Уровень зарплат

Фронтенд или бэкенд лучше с точки зрения зарплаты? Как и в любой IT-профессии, оценить объективно среднюю зарплату по России или даже Москве для фронтенд или бэкенд-разработчика очень сложно. Начать можно с общих цифр, фигурирующих в недавнем исследовании Хабр Карьеры за второе полугодие 2019 года.

Согласно приведённому графику, разброс зарплат в обоих направлениях веба отличается незначительно, и что важнее — он точно не меньше зарплат фулстек-разработчиков. Если оперировать фактическими цифрами – вход на профессиональный уровень (уверенный junior или начинающий middle) лежит в районе 60-70 тысяч, и далее уходит к средней в 110-120 тысяч рублей. Что ещё важнее, согласно данным Хабр Карьеры, зарплата в разработке выросла в среднем на 6% по сравнению со вторым полугодием.

Для сравнения возьмём ещё статистику с портала trud.com. Вот данные на конец 2019 года по фронтенду:

Для сравнения — заработок среднего PHP-разработчика за тот же период:

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

Но если говорить об опытном специалисте — во всяком случае в крупных городах — найти жирный контракт во frontend проще — из-за ряда стереотипов экспертное мнение в этой области ценится выше, чем в backend. При этом одновременно разработчик уровня senior во фронт-енде может вести куда больше проектов, чем в бэк-енде.

Мы постарались собрать в этой статье всё, чтобы вы смогли сделать выбор в мире веб-разработки. Теперь дело за вами — решиться и попробовать. Удачи!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *