Место бэкенд в веб-разработке

visibility 32
09 Янв в 12:11

Teamlead, PHP & Rails developer Нетологии Максим Смирнов рассказал, кто такие бэкенд-разработчики, какие навыки и умения им нужны и как стартовать новичку.

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

Веб-разработчики работают в трех направлениях:



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

Просто. Бэкенда можно сравнить со строителем, который:

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

Какие навыки нужны
Hard skills — основные рабочие навыки, которые нужны для выполнения задач. Бекэнд-разработчику нужно знать:

языки серверного программирования PHP, Ruby, Python или другие;
MySQL, основы работы с базой данных;
паттерны программирования и фреймворки Ruby on Rails, Yii, Django или другие;
алгоритмы.
Чтобы освоить профессию, нужно понимать работу языка и его окружения, функционирование сетей — стека протоколов TCP/IP, HTTP. Бэкенду нужно разбираться в работе системы версионирования Git и сервера, например, по схеме ubuntu server + nginx + mysql + фреймворк.

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

Soft skills — неспециализированные навыки, которые не связаны с должностными обязанностями прямо, но помогают устроиться на работу, стать частью команды и развивать карьеру:

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

занимается самообразованием;
знает, где и как искать ответы на вопросы по ходу работы;
работает под наблюдением опытных разработчиков;
проходит pull request — опытные специалисты просматривают его код, комментируют и дают рекомендации по улучшению.

Пример вакансии для Junior с superjob.ru. По статистике, в Москве Junior получают 60 000 рублей, в регионах — 30 000.

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


Пример вакансии для Middle c superjob.ru. По статистике, в Москве Middle получают 140 000 рублей, в регионах — 80 000.

Senior. Опытный разработчик, хорошо знает специфику своего стека и особенности его работы в разных окружениях. Может проектировать масштабные задачи и проекты, понимает необходимость использования или отказа от определенных паттернов или решений. Благодаря большому опыту может консультировать других разработчиков. Обладает развитыми soft skills:

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

Пример вакансии для Senior c glassdoor.com. По статистике, в Москве Senior получают 180 000 рублей, в регионах — 120 000.

Полезные материалы для начинающих
«Совершенный код», С. Макконнелл



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

«Рефакторинг. Улучшение существующего кода», М. Фаулер



Автор перечисляет простые шаги рефакторинга — перемещение поля в другой класс, вынесение фрагмента кода из метода, превращение его в самостоятельный метод и другие. Материал для тех, кто хочет предотвратить распад плохо спроектированной программы и улучшить проект.

«Создание микросервисов», С. Ньюмен



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

«Working Effectively with Legacy Code», М. Физерс



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



Оставить комментарий

Ваше имя::


Комментарий::




Ничего не найдено