Описание
Ищем разработчика для поддержки и развития проектов в области психологических исследований. Наши системы помогают собирать и анализировать исследовательские данные. ИИ-интервьюер реализует механизм проведения адаптивного интервью, принимая на вход текстовые и голосовые ответы. Исследовательская платформа обеспечивает проведение экспериментов, управление участниками, расчёт и экспорт результатов. Нужен специалист с сильным Python-бэкендом, который также уверенно работает с Vue / Nuxt и умеет интегрировать LLM, ML-модели в приложения.
Задачи
•Развивать API и бизнес-логику на FastAPI.
•Работать с PostgreSQL: дорабатывать схемы данных, писать миграции, оптимизировать запросы.
•Поддерживать фоновые задачи и очереди на RabbitMQ, Celery и aio-pika, обеспечивать корректные повторы и обработку сбоев.
•Дорабатывать интерфейсы личных кабинетов пользователей на Vue 3 / Nuxt.
•Дорабатывать ИИ-интервьюера: сценарии диалога, интеграции с провайдерами LLM и распознавание речи.
•Писать тесты, разбирать ошибки, участвовать в развертывании и мониторинге сервисов.
Требования
•Уверенное владение Python и асинхронным программированием: asyncio, конкурентные операции, работа с внешними API.
•Практический опыт с FastAPI, SQLAlchemy 2.0 async, Alembic и Pydantic.
•Знание PostgreSQL: индексы, ограничения, анализ планов выполнения и оптимизация запросов.
•Опыт работы с RabbitMQ и хотя бы одним подходом к фоновым задачам: Celery или aio-pika.
•Понимание идемпотентности и повторной обработки сообщений.
•Опыт разработки на Vue 3 / Nuxt с TypeScript: Composition API, SSR, взаимодействие с API.
•Понимание безопасной авторизации: JWT, access/refresh-токены, httpOnly cookies, RBAC, CSRF и CORS.
•Опыт интеграции LLM API: обработка таймаутов, ошибок и лимитов, логирование запросов.
•Умение работать с Docker и Docker Compose.
•Опыт тестирования Python-приложений с pytest.
•Готовность разбираться в существующем коде и доводить изменения до работающего результата.
•Высшее техническое образование.
•Опыт от 24 месяцев.
Будет плюсом
•LangGraph и LangChain, построение диалоговых агентов.
•Whisper / faster-whisper, WebSocket, запись и обработка голоса в браузере.
•Запуск готовых моделей через PyTorch и HuggingFace Transformers.
•Nginx, Linux, Prometheus, Grafana и Loki.
•Работа с GPU и CUDA в Docker.
•Опыт разработки систем опросов, тестирования или работы с исследовательскими данными.
•Глубокая экспертиза в обучении ML-моделей не требуется: основной фокус — разработка приложений и интеграция готовых моделей.
Условия
Преимущественно дистанционная работа, но необходимо иметь возможность приезжать 1 раз в несколько месяцев и подписывать документы, график работы обсуждается индивидуально. Зарплата: 150 000 ₽.