fullstack разработчик LLM-сервисов
Коротко
Develops and maintains the backend of an AI router product on Convex and TypeScript, integrating LLM providers, implementing routing and billing, and building · Needs: Backend development experience in TypeScript; async JavaScript knowledge; Git, code review, CI/CD; Node.js server-side experience; REST API design; external
Описание от работодателя
Описание: Selectel создаёт облачные сервисы в России и предоставляет IT-инфраструктуру для серверов, хранения данных, баз данных, Kubernetes, AI/ML и других задач. Продукт ИИ-роутер даёт единый доступ к ведущим LLM через один API-ключ.
Задачи: Покрывать код тестами и участвовать в code review коллег; Вести техническую документацию: API-справки, схемы взаимодействия и инструкции по подключению новых провайдеров; Декомпозировать и оценивать задачи, участвовать в планировании; Разбирать баги и инциденты в своей зоне ответственности; Разрабатывать и поддерживать бэкенд продукта ИИ-роутер на Convex и TypeScript; Интегрировать новые LLM-провайдеры, унифицировать форматы запросов и ответов, поддерживать streaming, обрабатывать ошибки и лимиты; Реализовывать маршрутизацию запросов между провайдерами: fallback, балансировку и обработку деградации; Учитывать потребление: подсчитывать токены, квоты и лимиты, готовить данные для биллинга; Проектировать и развивать публичный API шлюза, поддерживать обратную совместимость; Управлять ключами и доступами клиентов; Настраивать логирование и метрики запросов, использовать инструменты для разбора инцидентов; Разрабатывать интерфейс продукта в панели Selectel на Angular; Создавать интерфейсы аналитики потребления токенов, расходов и статистики запросов; Собирать экраны на базе внутреннего дизайн-бука; Реализовывать обновление данных в реальном времени.
Требования: Опыт разработки бэкенда на TypeScript; Опыт работы с асинхронным JavaScript: event loop, цепочки promise, обработка ошибок в асинхронном коде и отмена операций; Умение работать с Git, code review и CI/CD; Опыт разработки серверной части на Node.js; Опыт проектирования REST API: версионирование, коды ответов, обратная совместимость и валидация входных данных; Опыт работы с внешними HTTP API: повторные попытки, тайм-ауты, идемпотентность и обработка нестабильных ответов; Понимание потоковой передачи данных: SSE или чанки; Опыт работы с базами данных: моделирование данных, понимание индексов и денормализации; Опыт разработки SPA на Angular, React или Vue; Опыт работы с состоянием приложения и асинхронными данными: загрузка, ошибки, гонки запросов и отмена; Понимание вёрстки на уровне, достаточном для сборки экранов; Будет плюсом опыт работы с Convex, serverless и Backend as a Service: Firebase, Supabase, Cloudflare Workers, Vercel Functions, AWS Lambda, а также Docker и Kubernetes.
Условия: Оформление в официально аккредитованную IT-компанию; Белая заработная плата; Годовая премия по результатам работы до 15% от суммарного оклада за 12 месяцев; 50 000 Бонусных рублей на услуги компании ежегодно; Релокационный бонус при переезде; Бесплатные обеды и кофе-брейки; Гибкое начало рабочего дня до 12:00; Ежемесячная надбавка за некурение; ДМС, стоматология и офисный врач с первого дня работы; Компенсация психологических консультаций онлайн или в кабинете психолога; 50% Оплаты абонемента в фитнес-клуб и спортивный зал в офисе; Внутренние спортивные турниры и корпоративные тренировки; Образовательные мероприятия, внутренняя база знаний и курсы; От 50% до 100% оплаты обучения английскому и еженедельные бесплатные разговорные клубы с носителями; Возможность участия в конференциях по всему миру; Онлайн-библиотека Alpina Digital.