Старший разработчик (Java + Go)
IT_ONE
- От 3 до 6 лет
- Удалённая работа
- Удалённо
Описание вакансии
Масштабный высоконагруженный IT-проект в сфере ритейла и электронной коммерции. Мы занимаемся развитием и поддержкой критически важных бизнес-систем, которые обрабатывают миллионы запросов и транзакций ежедневно.
Мы ищем инженера, который присоединится к команде разработки микросервисной платформы. Вам предстоит работать на стыке двух языков — Java и Go, проектировать отказоустойчивые системы и принимать ключевые технические решения для обеспечения стабильности сервисов на высоких нагрузках.
Обязанности
- Проектирование и разработка: Создание и развитие высоконагруженных микросервисов на Java (Spring Boot) и Go.
- Архитектура: Проектирование архитектуры распределенных систем, принятие самостоятельных технических решений и их защита.
- Интеграции: Разработка API (REST, gRPC) и настройка асинхронного взаимодействия сервисов через Kafka.
- Базы данных: Проектирование схем БД, написание и оптимизация сложных SQL-запросов (PostgreSQL).
- Инфраструктура: Упаковка сервисов в Docker, работа с Kubernetes и настройка CI/CD-пайплайнов.
- Качество и оптимизация: Оптимизация производительности систем, участие в код-ревью, написание Unit/Integration тестов.
- Сопровождение: Поддержка production-систем, решение проблем с производительностью и отказоустойчивостью.
Обязательные требования
Опыт и базовые знания:
- Общий опыт коммерческой backend-разработки — от 7 лет.
- Коммерческий опыт разработки на Java — от 7 лет.
- Коммерческий опыт разработки на Golang — от 2-3 лет.
- Уверенное знание Java Core: Collections, Multithreading, Concurrency, Stream API.
- Опыт работы со Spring Framework, Spring Boot, Hibernate/JPA.
- Уверенное знание Go Core: goroutines, channels, context, sync, interfaces, error handling.
Архитектура и данные:
- Опыт разработки высоконагруженных систем (High-load).
- Опыт проектирования и разработки микросервисной архитектуры.
- Опыт работы с распределенными системами (Distributed Systems).
- Владение PostgreSQL, SQL, навыки оптимизации запросов.
- Опыт работы с Kafka и асинхронным взаимодействием.
- Понимание REST API, gRPC.
Инфраструктура:
- Опыт работы с Docker, Kubernetes.
- Опыт работы с CI/CD.
Будет плюсом
- Опыт технического лидерства (Tech Lead / Team Lead).
- Опыт работы с Event-Driven Architecture.
- Знание Redis, RabbitMQ.
- Понимание распределенных транзакций, Eventual Consistency.
- Навыки профилирования Go-приложений (pprof).
- Опыт работы с Prometheus, Grafana, Jaeger.
- Опыт модернизации и рефакторинга legacy-систем.
- Опыт работы в финтехе и платёжных системах.
- Опыт работы с высокодоступными и отказоустойчивыми системами.
- Навыки проведения Code Review, Unit/Integration Testing.
Ключевые навыки
- Проектирование
- PostgreSQL
- Архитектура
- Kubernetes
- Лидерство
- REST API
- Prometheus
- Spring Framework
- Spring Boot
- RabbitMQ
- Hibernate
- Базы данных