Вакансия • Backend-разработчик, Алматы
Backend-разработчик в проекте отвечает за проектирование, разработку и поддержку серверной логики, API и функций управления данными микросервисов. Основная цель Backend-разработчика — гарантировать, что каждый микросервис эффективен, масштабируем и соответствует техническим и бизнес-требованиям проекта.
Обязанности:
-
Техническая экспертиза в разработке бэкенда:
-
Знание соответствующих языков: Отличные навыки в языках программирования бэкенда, таких как Java (Spring Boot), Python (FastAPI), Node.js, Go или C# (.NET Core).
-
Опыт работы с архитектурой микросервисов: Знание принципов проектирования микросервисов, таких как проектирование на основе домена, развязка сервисов и межсервисное взаимодействие.
-
Разработка API: Экспертиза в создании API RESTful и gRPC, включая проектирование конечных точек, обработку запросов и обеспечение безопасного обмена данными.
-
-
Навыки работы с базами данных и управления данными:
-
Знание баз данных: Опыт работы как с реляционными (например, PostgreSQL, MySQL), так и с NoSQL базами данных (например, MongoDB, Cassandra), а также способность оптимизировать запросы и управлять схемами.
-
Моделирование данных: Способность проектировать структуры данных, которые соответствуют функциональным требованиям каждого микросервиса.
-
Понимание согласованности данных: Знание методов обработки согласованности данных, транзакций и окончательной согласованности в распределенных системах.
-
-
Понимание DevOps и CI/CD:
-
Конвейеры CI/CD: Знакомство с инструментами CI/CD (например, Jenkins, GitLab CI/CD, GitHub Actions) и способность автоматизировать интеграцию и развертывание кода.
-
Контейнеризация: Опыт работы с Docker для упаковки микросервисов и понимание Kubernetes для развертывания и масштабирования.
-
-
Знание безопасности:
-
Безопасность API: Знание защиты API с использованием OAuth2, JWT и других методов аутентификации и авторизации.
-
Шифрование данных и контроль доступа: Опыт работы с шифрованием данных и управления контролем доступа для обеспечения безопасности данных.
-
-
Навыки решения проблем и отладки:
-
Устранение неполадок: Способность диагностировать и устранять проблемы в среде распределенных микросервисов.
-
Оптимизация производительности: Навыки анализа и повышения производительности приложений, включая эффективную обработку данных и ресурсов.
-
-
Знакомство с методологиями Agile/Scrum:
-
Опыт Agile: знакомство с принципами Scrum, включая работу в циклах разработки на основе спринтов.
-
Навыки совместной работы: способность тесно сотрудничать с членами кросс-функциональной команды, такими как разработчики интерфейса, инженеры DevOps и тестировщики QA.
-
-
Разработка и внедрение микросервисов:
-
Разработка внутренних служб: проектирование и внедрение серверной логики для каждого микросервиса, обеспечение их соответствия функциональным и нефункциональным требованиям.
-
Реализация API: создание RESTful и/или gRPC API для каждого сервиса, определение конечных точек, которые обеспечивают безопасный и эффективный обмен данными с другими сервисами или клиентами front-end.
-
Обработка бизнес-логики: кодирование сложной бизнес-логики в внутренние службы, такие как расчет цен, управление заказами или обработка бронирований.
-
-
Управление базами данных и моделирование данных:
-
Проектирование баз данных: проектирование и создание схем баз данных и моделей данных, которые поддерживают потребности каждого микросервиса.
-
Оптимизация доступа к данным: оптимизация доступа к данным и запросов для обеспечения быстрой и эффективной обработки запросов.
-
Обеспечение согласованности данных: реализация методов согласованности и синхронизации данных, особенно для данных, совместно используемых несколькими сервисами.
-
-
Интеграция API и межсервисная коммуникация:
-
Реализация межсервисной коммуникации: обеспечение бесперебойной коммуникации между микросервисами с использованием протоколов обмена сообщениями (например, Kafka, RabbitMQ) и API по мере необходимости.
-
Документация API: документирование конечных точек API, форматов запросов и ответов, а также требований аутентификации для обеспечения ясности для других членов команды и внешних потребителей.
-
Обработка ошибок и устойчивость: реализация надежных механизмов обработки ошибок и повторных попыток для управления сбоями и обеспечения устойчивости сервиса.
-
-
Оптимизация производительности и масштабируемость:
-
Оптимизация кода и запросов: постоянная оптимизация кода, запросов к базе данных и механизмов кэширования для повышения производительности и сокращения задержек.
-
Обеспечение масштабируемости: проектирование бэкэнд-сервисов таким образом, чтобы они были масштабируемыми, что позволяет увеличивать нагрузку и пользовательский трафик по мере роста проекта.
-
Мониторинг и метрики: интеграция инструментов мониторинга для отслеживания производительности сервиса, сбора метрик и обнаружения узких мест производительности.
-
-
Реализация безопасности:
-
Безопасные API и данные: Внедрите элементы управления аутентификацией и авторизацией (например, OAuth2, JWT) для защиты API и предотвращения несанкционированного доступа.
-
Защита данных: Убедитесь, что конфиденциальные данные зашифрованы, а доступ к критически важной информации ограничен в соответствии с политиками безопасности.
-
Управление уязвимостями: Сотрудничайте с инженерами по безопасности для выявления и устранения уязвимостей безопасности, выполняя регулярные проверки кода и конфигураций.
-
-
Тестирование и обеспечение качества:
-
Написание unit, модульных и интеграционных тестов: Разработайте автоматизированные модульные и интеграционные тесты для проверки функциональности сервиса и обеспечения качества кода.
-
Сотрудничество с QA: Тесное сотрудничество с инженерами по QA для проверки функциональности, проведения проверок кода и обеспечения соответствия каждого микросервиса критериям приемки.
-
Отладка и разрешение проблем: Быстрое выявление и устранение ошибок, проблем с производительностью или других технических проблем, возникающих во время разработки или в процессе производства.
-
-
Непрерывная интеграция и развертывание (CI/CD):
-
Создание и развертывание микросервисов: настройка конвейеров CI/CD для автоматизации создания, тестирования и развертывания микросервисов.
-
Интеграция с инструментами DevOps: сотрудничество с инженерами DevOps для настройки контейнеров Docker, конфигураций Kubernetes и автоматизации предоставления инфраструктуры.
-
Непрерывное совершенствование: участие в обзорах кода и ретроспективах для выявления областей для улучшения методов кодирования, тестирования или развертывания.
-
-
Сотрудничество с кросс-функциональными командами:
-
Участие в мероприятиях спринта: участие в планировании спринта, ежедневных стендапах и ретроспективах для соответствия целям и приоритетам команды.
-
Работа с командами по продукту и бизнесу: сотрудничество с владельцем продукта и бизнес-аналитиком для понимания требований, расстановки приоритетов функций и уточнения технических потребностей.
-
Поддержка команд фронтенда и интеграции: обеспечение плавной интеграции между бэкенд-сервисами и фронтенд-приложениями, предоставление поддержки и устранение неполадок при необходимости.
-
- Оформление по трудовому кодексу РК
- График ПН-ПТ с 9:00 до 18:00 (гибкий)
- Удаленная работа
- Карьерный рост
- Бонусы по KPI
- Отличная команда
Если Вас заинтересовала вакансия, просим пройти предварительное интервью, заполнив форму.
ПОДЕЛИТЬСЯ
Похожие вакансии:
Работа в России, Алматы - Свежие вакансии на Kit-Jobs.Ru
Работа в городах России - свежие вакансии (469929) на Kit-Jobs.Ru: Вакансия работодателя • DIGITAL TRAVEL CONCIERGE (ДИДЖИТАЛ ТРЭВЭЛ КОНСЬЕРЖ) - Backend-разработчик, Алматы. Здесь Вы можете ознакомиться с вакансией работодателя бесплатно онлайн.
Наш портал является бесплатным онлайн сервисом поиска работы по базе вакансий от прямых работодателей, по размеру заработной платы и прочим параметрам в регионе Алматы. На портале также имеются такие разделы как: ежедневно обновляемая база свежих вакансий по всем городам России, юридические консультации, сервисы, форма для создания резюме онлайн в формате .DOC, новости рынка труда России и другие разделы.