Бэкенд-разработчики работают с базами данных, веб-серверами и серверными скриптами, API. Эти специалисты отвечают и за интеграцию большинства сервисов с вашим веб-сайтом. Именно благодаря бэкендщикам работают такие вещи, как шеринг в соц-сетях, reCAPTCHA, оплата онлайн, возможность проверить баланс на карте. Именно на бэкенде автоматизируются процессы. В целом, без backend developer’а может обойтись только сайт-визитка.
Обязанности
- Разработка и оптимизация самой логики и алгоритмов работы веб- или мобильных приложений, их архитектуры
- Обеспечение корректной работы вычислительной логики сайта
- Проектирование баз данных и управление ими
- Интеграция внешних сервисов
- Разработка API вашего сервиса, чтобы он мог интегрироваться с другими сайтами
- Покрытие тестами бэкенд кода
- Обеспечение/повышение сетевой безопасности сервиса
Скиллы
Что должен знать backend разработчик?
- Один или несколько «серверных» языков программирования. Это могут быть PHP, Python, Java, Ruby, Perl. Часто используется и Node.js.
- Системы управления базами данных: MongoDB, MySQL, PostgreSQL и т.д.
- AJAX — технология обновления данные в браузере без перезагрузки страницы.
- Фреймворки, которые позволят решить задачи на проекте быстрее и эффективнее. Например, Django (на Python), Rails (Ruby), Laravel (PHP), Spring (Java).
- Основы фронтенда — для проектирования приложения и взаимодействия с фронтендщиками.
- Принципы работы веб-серверов, таких как Apache, NGINX, IIS и т.д.
- Системы контроля версий, например, Git, Mercurial, CVS, SVN
Плюсом будет, если специалист понимает принципы работы UNIX-систем и умеет составлять ТЗ.
Набор скиллов зависит от задач. На небольшом проекте может быть достаточно знания PHP (или даже Node.js), Ajax и умения работать с какой-то одной СУБД. А для крупного интернет-магазина нужно уметь работать с такими технологиями, как Docker, Kubernetes, работать с высокими нагрузками, знать системы мониторинга.