Backend-разработка
Golang-разработчик
Greenfield: сервис пишется с нуля, архитектурные решения принимает кандидат, легаси нет.
Инфраструктура для LLM в живом продукте: сотни моделей, мультимодальность (изображения, аудио, видео, эмбеддинги). Нагрузка не про CRUD. Это долгоживущие стриминговые соединения и тела запросов по 10+ МБ, то есть задачи на память, конкурентность и таймауты.
Небольшая команда и короткий путь от решения до прода, прямое влияние на продукт
Selectel: собственные ДЦ и облако, возможность настройки кастомных решений
- Санкт-Петербург / Удаленно
- Гибкий
Основные задачи
- Спроектировать и запустить data plane на Go. В его задачи входят приём OpenAI-совместимых запросов, авторизация по виртуальным ключам, маршрутизация и fallback между провайдерами, стриминг ответов
- Поэтапно перенести из текущего бэкенда фичи в новый бэкенд. Миграция должна пройти без даунтайма для клиентов
- Построить синхронизацию конфигурации из админки в data plane: локальный кэш ключей и политик, инвалидация, работа при недоступности control plane
- Довести сервис до 500-1000 RPS: нагрузочные тесты, профилирование, SLO и алертинг
- Покрыть тестами критичные пути (биллинг, роутинг и fallback, авторизация), участвовать в разборе инцидентов и ревью
Мы ожидаем
- Опыт коммерческой разработки на Go в продакшене. Уверенное владение goroutines, channels, context и sync, понимание работы GC и аллокаций, умение профилировать через pprof и race detector
- Опыт разработки сетевых HTTP-сервисов или прокси. Знание net/http, connection pooling, таймауты, retries с backoff и graceful shutdown
- Понимание как LLM используются на практике и как это выглядит в трафике
- Observability: метрики в Prometheus, структурированные логи, трейсинг через
- OpenTelemetry. Умение найти узкое место по метрикам и профилям
- Опыт с Docker и Kubernetes на уровне пользователя: Helm, probes, requests/limits, HPA
Будет плюсом
- Опыт с LLM API (OpenAI, Anthropic Messages): стриминг, tool calling, подсчёт токенов. Альтернатива - опыт с API-гейтвеями (Envoy или самописными)
- Опыт работы с ClickHouse и/или Kafka для потока логов и биллинговых событий
- Опыт с Rate limiting, квоты, учёт потребления: Redis, token bucket, консистентный подсчёт при ретраях и обрывах
- Опыт постепенной миграции монолита: strangler pattern, shadow traffic, canary, feature flags
- Опыт работы с TypeScript
Про здоровье и спорт
- Ежемесячная надбавка за некурение
- ДМС + стоматология + офисный врач* (с первого дня работы)
- Компенсация психологических консультаций: онлайн или в кабинете психолога
- 50% оплата абонемента в фитнес-клуб и спортивный зал в офисе*
- Внутренние спортивные турниры, корпоративные тренировки и участие в спортивных мероприятиях (забеги, велозаезды, заплывы, «Гонка героев», кибертурниры)
- Офисный душ*
Про досуг
- Образовательные мероприятия (мастер-классы, лекции, квизы, экскурсии)
- Тематические киновечера и регулярные вечера настолок (обожаем DnD и спортивную мафию!)
- PlayStation zone*, кикер и настольный теннис
- Несколько крупных тусовок в году, а также зимой ездим гонять на сноубордах и лыжах, а осенью в пейнтбол
Про развитие
- От 50% до 100% оплаты обучения английскому и еженедельные бесплатные разговорные клубы с носителями
- Внутренние обмены знаниями: lightning & thunder talks, Selectel MasterClass
- Внутренняя база знаний и курсов
- Рекомендации по обучению и развитию
- Персонализированный подход к обучению, возможность участия в конференциях по всему миру
- Онлайн-библиотека Alpina Digital
*пока что только для питерского офиса