Senior Golang разработчик
ПятёрочкаМоскваУдалённоот 3 лет5/2Полная занятость
SQLPostgreSQLTypeScriptKafkaGoRedisGolangMongoDBNoSQLМикросервисыNestJSраспределенные системы
Описание
Команда технологической бизнес-единицы X5 разрабатывает сервисы, которые обеспечивают сборку онлайн-заказов в магазинах и дарксторах X5. Системы в реальном времени распределяют заказы и задания между сборщиками, поэтому особенно важны производительность, стабильность и корректная работа под высокой нагрузкой. Ищут опытного Go-разработчика, который будет участвовать в проектировании архитектуры, развитии микросервисов и повышении надёжности production-систем.
Обязанности
- Проектировать и разрабатывать высоконагруженные микросервисы на Go, участвовать в развитии сервисов на NestJS
- Продумывать архитектуру, структуры данных и взаимодействие сервисов между собой и с фронтендом
- Развивать существующие решения, находить узкие места, проводить рефакторинг монолита и микросервисов, оптимизировать критичные участки под нагрузку
- Проводить код-ревью, поддерживать стандарты разработки и следить за качеством кода
- Обеспечивать стабильность production-сервисов: участвовать в дежурствах, разбирать инциденты и устранять их первопричины
- Разрабатывать юнит- и сложные интеграционные тесты, развивать автоматизацию тестирования
- Исследовать и внедрять новые технологии и инструменты для разработки, тестирования и мониторинга
- Документировать технические решения и взаимодействовать с QA и продуктовыми командами
Требования
- Опыт коммерческой backend-разработки от 5 лет, в том числе от 2 лет на Go
- Опыт проектирования и разработки высоконагруженных микросервисов и распределённых систем
- Уверенное понимание принципов построения микросервисной архитектуры и взаимодействия между сервисами
- Опыт работы с Kafka или другими брокерами сообщений
- Практический опыт работы с PostgreSQL и другими SQL- и NoSQL-базами данных
- Знание Redis, MongoDB и gRPC
- Опыт работы с Docker, Kubernetes и CI/CD
- Навыки настройки и использования мониторинга и логирования, в том числе Grafana и ELK
- Опыт сопровождения production-систем, участия в дежурствах, анализа и устранения инцидентов
- Готовность работать с TypeScript и NestJS, поскольку часть сервисов реализована на этом стеке
- Умение писать тестируемый и поддерживаемый код, проводить код-ревью и аргументированно обсуждать технические решения
Будет плюсом
- Опыт разработки в e-commerce, ритейле или логистике
- Опыт создания real-time-систем и работы с WebSocket
- Практический опыт с NestJS и TypeScript
- Опыт оптимизации сервисов под высокую нагрузку и повышения отказоустойчивости распределённых систем
- Знакомство с Elasticsearch и инструментами APM
Условия
- Работа удалённо или из уютного офиса на ст. м. Добрынинская или м. Савеловская в Москве
- Предоставление ДМС со стоматологией, возможность оформить льготный ДМС для родственников, программу страхования жизни и здоровья, а также для путешествий за границу
- Забота о ментальном благополучии: доступ к сервису онлайн-консультаций с психологами Alter
- Корпоративные скидки на доставку продуктов из торговых сетей Х5 и Много лосося
- Бесплатный доступ к сервису Пакет
- Подключение к Prime Zone – программе лояльности с лучшими скидками на рестораны, развлечения, спорт и т.д.
- Доступ к внутренним ресурсам: электронной библиотеке и корпоративному университету, где можно непрерывно обучаться
- Проведение митапов и участие в конференциях
- Трудовой договор
- График: 5/2
- Рабочие часы: 8
Процесс отбора
- 30 минут – встреча с HR
- До 120 минут – знакомство с командой/руководителем
- Совпадение по ожиданиям – предложение оффера