Назад к вакансиям

Senior Golang разработчик

245 000 – 260 000 ₽в месяц
Top SelectionРФУдалённоот 5 летКонтракт
SQLPostgreSQLJavaKubernetesCI/CDDockerGoMicroservicesRedisGitLab CIMySQLGrafanaPrometheusGolangApache KafkaHTTPHelmhighloadВысоконагруженные системы

Описание

Обязанности

  • Проектировать архитектуру сервисов и микросервисов, выбирать подходящие паттерны и подходы
  • Писать высокопроизводительный, безопасный и поддерживаемый код на Go с учётом особенностей конкурентности (горутины, каналы, примитивы синхронизации)
  • Определять и реализовывать контракты API (REST, gRPC, GraphQL), согласовывать их с другими командами
  • Глубоко оптимизировать производительность: профилировать, выявлять и устранять узкие места, работать с аллокациями памяти и блокировками
  • Выстраивать надёжную стратегию тестирования: покрывать код юнит, интеграционными и property-based тестами, проектировать тестовые данные и фикстуры
  • Работать со сложными схемами взаимодействия с БД (PostgreSQL, MySQL, Redis и др.): проектировать индексы, оптимизировать запросы, реализовывать транзакции и паттерны распределённых блокировок
  • Интегрировать сервисы со внешними системами и очередями сообщений (Kafka, RabbitMQ, NATS), обрабатывать ошибки и реализовывать механизмы повторных попыток и дедлайнов
  • Участвовать в проектировании и настройке CI/CD-пайплайнов, автоматизировать деплой, валидацию и rollback
  • Настраивать контейнеризацию (Docker) и оркестрацию (Kubernetes), работать с Helm-чартами, определять resource requests/limits, readiness/liveness probes
  • Внедрять и поддерживать инструменты мониторинга, логирования и трейсинга (Prometheus, Grafana, Jaeger, ELK), настраивать алерты и SLO/SLI
  • Вести код-ревью, наставлять младших разработчиков, формировать стандарты качества кода и best practices в команде
  • Управлять техническим долгом: планировать рефакторинг, оценивать риски и влияние изменений, приоритизировать задачи
  • Участвовать в разборе инцидентов, проводить постмортемы, предлагать и внедрять меры по предотвращению повторных сбоев

Требования

  • Высшее техническое образование (CS/инженерия) либо подтверждённый индустриальный трек
  • Опыт работы от 5-7 лет в разработке, из них 3-4 года на Go в продакшене
  • Опыт работы на Java
  • Ключевые навыки: Go (базовая конкурентность, работа с каналами и горутинами), SQL (PostgreSQL/MySQL), Docker, CI/CD (GitLab CI/GitHub Actions), базовые инструменты мониторинга (Prometheus/Grafana)
  • Опыт высоконагруженных систем
  • Проектирование микросервисов
  • Умение писать и поддерживать тесты
  • Опыт работы с HTTP/gRPC API
  • Английский B2 и выше
  • Опыт работы с Kafka, RabbitMQ, NATS
  • Знание и опыт применения паттернов проектирования
  • Опыт разработки авто-тестов (юнит, интеграционные, property-based)
  • Опыт работы с Docker, а также с K8S на уровне раскатки микро-сервисов
  • Уверенное владение командной строкой Linux
  • Опыт с Helm-чартами, настройка resource requests/limits, readiness/liveness probes
  • Опыт с Jaeger, ELK, настройка алертов и SLO/SLI

Будет плюсом

  • Переход с Java на Go (здорово, если есть хороший бэкграунд на Java)

Условия

  • Заработная плата от 245 000 до 260 000 ₽
  • Полная занятость
  • Формат работы: можно удалённо