Кто такой Back-End Разработчик и какова его роль?

16 Ноя, 2021
Кто такой Back-End Разработчик и какова его роль?

Хочешь стать Back-End разработчиком? Тогда продолжай читать, потому что именно в этой статье ты можешь найти ответы на свои вопросы. Олег Гаркушенко, разработчик full-stack в Israel IT, поделился своим многогранным опытом и знаниями. Он подробно рассказал, с чего начинается карьера бэк-энд разработчика и раскрыл следующие вопросы:

•Кто такой Back-End Разработчик и какова его роль?

•Что входит в обязанности Back-End разработчика?

•Какими навыками должен обладать Back-End разработчик?

Кто такой Back-End Разработчик и какова его роль?

Для того чтобы ответить на этот вопрос, нужно знать, какую роль играет сам бэк-энд относительно веб-систем в целом. Для прагматичности разработку под веб делят на две основные части: front-end и back-end. Нужно понимать роль каждой из них:

Back-End — это программа, которая находится на сервере и имеет доступ к составляющей информации (базы данных) и делится ею с фронтендом.

Front-End — это интерфейс с которым взаимодействует пользователь, который при необходимости обращается на сервер по актуальным данным.

Back-end разработчик это человек, который занимается созданием и поддержкой технологий которые скрыты от глаз пользователя, то есть находятся вне его браузера и компьютера, на «бэкэнде». Например, человек заходит на сайт интернет магазина, выбирает товары по нужной категории, делается запрос на сервер, там бэкенд обрабатывает этот запрос и понимает, по какой именно категории пользователь хочет увидеть товары. После этого он обращается в базу данных с запросом на получение товаров по конкретной категории. База данных ищет среди всех товаров, принадлежащих этой категории, и возвращает их на бэк-энд, а бэк-энд возвращает их на фронтенд уже в согласованном формате.

То есть мы поняли, что имеем такую последовательность клиенто-серверного взаимодействия:

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

Что входит в обязанности разработчика Back-End?

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

Junior:

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

-обработка запроса на сервер

-получение данных из базы данных

Middle:

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

Senior:

Это уже старший разработчик, который вносит наибольший вклад в нестандартные и трудные задачи. Здесь уже должны быть навыки построения проекта:

-проектирование архитектуры

-анализ бизнес потребностей

-оценка потраченного времени.

Синиор берет на себя ответственность менеджера и отвечает за безопасность данных.

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

Какие навыки должен иметь разработчик Back-End?

Я думаю, что человек, который хочет быть бэк-энд разработчиком, должен иметь такие софт скилс:

•успешно вести и выполнять сложные проекты;

•уметь брать на себя ответственность;

•быть внимательным к деталям

•аналитически мыслить

•уметь работать в команде

•быть инициативной

Относительно хард скилов:

•специалист должен свободно владеть хотя бы одним из перечисленных языков программирования:

C#, NodeJS, PHP, Python, Java.

• владеть фреймворками для этих языков программирования:

С# — .NET; NodeJS – Express, Nest.js; PHP – Laravel; Python – Django; Java – Spring

•уметь работать с такими базами данных MySLQ, MongoDB, PostgreSQL и так далее.

•знание SOAP и REST

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