12 навыков, которые помогут бэкенд-разработчику найти первую работу

6
Аватар автора

Влад Пруд

старший бэкендер Т⁠—⁠Ж

Страница автора

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

🐍 Разобраться в Python

Это один из самых популярных языков для бэкенд-разработки. Новичкам важно разобраться в основах синтаксиса: операторах, циклах, структурах данных и функциях. Базу Python можно изучить на бесплатном курсе на Stepik, углубиться в подробности — на Real Python, почитать официальную документацию — на The Python Tutorial

💾 Освоить веб-фреймворки

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

😎 Разобраться в базах данных

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

🌐 Закрепить теорию сетей

Понимание того, как функционирует интернет, необходимо при создании веб-сервисов. Изучите принципы сетевого взаимодействия между компьютерами, разберитесь в HTTP-протоколе и HTTPS, в шифровании SSL/TLS

💡 Понять, как использовать Git

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

🔢 Научиться работать в терминале

Это программа для работы с операционной системой. Терминал используют для управления серверами, запуска скриптов и установки пакетов. Джуниорам понадобятся базовые знания команд, например для запуска программы или удаления папки. Подробнее можно почитать на freeCodeCamp

🤖 Получить представление о REST

Архитектура REST поможет понять, как создавать API для взаимодействия между клиентом и сервером. Изучать ее несложно, но для полного понимания требуются время и практика. Начать можно со статьи про REST-сервисы

🔎 Приучить себя писать тесты

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

📚 Погрузиться в CI/CD и Docker

CI, или Continuous Integration, — процесс, в котором на каждой отправке код проверяется на работоспособность и качество. CD, Continuous Delivery, — доставка кода в продакшен после успешного ревью. Вместе с тем нужно понять работу Docker: он облегчает разработку и тестирование. Начинающим специалистам хватит официального урока на Docker Docs и материала на «Хабре»

✏️ Научиться следить за стилем и качеством кода

Писать чистый и читаемый код помогут специальные программы — линтеры. Вот основные: Flake8, Black, Pylint. Если пишете на Python, изучите код-стайл и рекомендации по гайду от Real Python

🇬🇧 Подтянуть английский язык

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

🍦 Развить софт-скиллы

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

📚 Порекомендуйте, где и как учиться

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

Что почитать тем, кто хочет войти в профессию:

Новости из мира образования, советы по карьере и учебе, вдохновляющие истории — в нашем телеграм-канале: @t_obrazovanie

Влад ПрудЧто еще необходимо знать бэкендерам? Поделитесь мнением в комментариях:
  • LanaВообще есть такая штука как "developer roadmap", можно найти для любого направления. Вот, например, для бэкенд девелопера https://roadmap.sh/backend Можно понять, куда копать и развиваться. Еще пропустили Message Brokers, тоже очень важная тема11
  • Panzer KaiserМеньше всего бэка пишется на пайтоне. Он восстребован, но точно не в бэке его основная ниша. Для бэка есть PHP, Java, Go, да даже C#.3
  • МихаилДаниил, интерпретируемый язык в бэке? А вы любите изврат0
  • Артем СавельевLana, а что тогда такое бэкенд разработка, если "фреймворки не нужны" ?0