Fullstack-разработчик

Дата размещения вакансии: 23.07.2026
Работодатель: Копылов Евгений Анатольевич
Уровень зарплаты:
от 200000 RUR
Город:
Москва
Требуемый опыт работы:
От 3 до 6 лет

Компания ищет Full-Stack разработчика для реализации функциональности по готовым ТЗ в AI-продуктах. В проекте есть Principal Architect, который отвечает за архитектуру, безопасность и финальный деплой; зона ответственности разработчика — прикладная реализация, интеграции и базовое сопровождение эксплуатации.

ФОРМАТ РАБОТЫ

Architect готовит техническое задание → вы реализуете → Architect интегрирует и принимает результат. Крайне важна самостоятельность и проактивность в работе.

Технологический стек:

  • Frontend: React 18 + TypeScript + Vite + TailwindCSS

  • Базы данных: Supabase/PostgreSQL (функции, триггеры, миграции, JSONB, RLS)

  • AI и интеграции: LLM API (structured output, function calling), REST/webhook'и, очереди

  • Телефония и real-time аудио: Asterisk/SIP, RTP, потоковые STT/TTS

ЗАДАЧИ

Frontend: реализация React-компонентов и страниц по готовым ТЗ, асинхронные UI-состояния и стриминг результата (SSE/WebSocket), обработка обрыва/переподключения, интеграция с backend API.

Базы данных: написание функций в Supabase/PostgreSQL (RPC, бизнес-логика), триггеры, миграции, работа с JSONB, чтение и правка RLS-политик.

AI и интеграции: работа с LLM через API (structured output, function calling), REST API, webhook'и (приём и отправка), идемпотентность обработчиков, очереди и фоновые задачи.

Телефония и real-time аудио: настройка и доработка сценариев на Asterisk (ARI, Stasis, диалплан), вывод медиапотока в realtime AI-конвейер (STT → LLM → TTS), обработка VAD/barge-in, работа с SIP-транками, аудиокодеками, диагностика задержек/джиттера.

ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ

ОБЯЗАТЕЛЬНЫЕ НАВЫКИ

Не ожидаем экспертизы во всех блоках сразу: важно реальное глубокое владение хотя бы одним направлением (бэкенд/фронтенд или телефония/real-time аудио).

Frontend: React 18 (2+ года), TypeScript (уверенное владение), TailwindCSS (или готовность быстро освоить), React Hooks, асинхронные UI-состояния (стриминг SSE/WebSocket, progress, реконнект), React Router.

Базы данных: Supabase/PostgreSQL — уверенное владение SQL, функции и триггеры, понимание RPC и миграций, JSONB, чтение и правка RLS-политик.

AI и интеграции: LLM через API (structured output, function calling), REST API, JSON, webhook'и, идемпотентность обработчиков, очереди и фоновые задачи, OAuth, rate limits, Python и асинхронное программирование.

Телефония и real-time аудио: Asterisk на прикладном уровне (ARI, диалплан), диагностика звонка по SIP-трейсам (sngrep/tcpdump), SIP-транки российских и международных операторов (trunk, DID, routing), вывод медиапотока в AI-обработчик в реальном времени (RTP), аудиокодеки телефонии, ресемплинг и буферизация, потоковые STT/TTS (Realtime API / ElevenLabs-класс), VAD и barge-in (задержка 300–500 мс), запись разговоров (хранение, отдача по ссылке), версионируемый REST-контракт с платформой.

Общие навыки: Git (commit, push, pull, merge, ветки), чтение технических заданий и API-документации, английский B1+.

ЖЕЛАТЕЛЬНЫЕ НАВЫКИ

Frontend: Опыт с React Query / TanStack Query, Zod для валидации, React Hook Form, понимание паттернов проектирования (HOC, Render Props, Custom Hooks).

Базы данных: Углублённая работа с JSONB, оптимизация SQL-запросов и работа с индексами.

Инфраструктура: Базовое знакомство с Docker, Kubernetes/Terraform (не экспертный уровень — достаточно не теряться в терминах).

Телефония: Опыт с WebRTC, FreeSWITCH, Kamailio/OpenSIPS или Twilio, разработка и эксплуатация голосовых AI-ботов/IVR/колл-центров в проде, массовые обзвоны (AMD, STIR/SHAKEN, A2P 10DLC), базовое системное администрирование Linux (systemd, безопасность, бэкапы).

ЛИЧНЫЕ КАЧЕСТВА

  • Внимательность к деталям — работа с ТЗ требует точности

  • Умение читать документацию — каждый день новые API и технологии

  • Командная работа — тесная связь с Architect

  • Понимание бизнес-логики — чтобы код решал реальные задачи

  • Самостоятельность — Architect даёт задачу, вы её выполняете без микроменеджмента

  • Любознательность — готовность изучать новые технологии и инструменты

  • Аккуратность в коде — читаемый, поддерживаемый код

ЧТО МЫ ПРЕДЛАГАЕМ

  • Удалённая работа

  • Гибкий график (главное — результат)

  • Чёткие технические задания (не нужно гадать что делать)

  • Работа с современным стеком (React 18, TypeScript, Supabase/PostgreSQL, Python, AI/Realtime-интеграции)

  • Опыт интеграции с внешними API и AI-сервисами

  • Участие в продукте с реальными пользователями

  • Работа над интересными задачами (AI, автоматизация, real-time аудио)

КАК ОТКЛИКНУТЬСЯ

Резюме: с опытом работы (React, Supabase/PostgreSQL, TypeScript, Python — и/или опыт с телефонией/real-time аудио, если это ваш профиль).

Портфолио: ссылки на GitHub-проекты, скриншоты интерфейсов либо примеры работы с аудио/телефонией, примеры SQL-функций или миграций, описание проектов на React + Supabase/PostgreSQL либо Asterisk/SIP/real-time аудио.

Сопроводительное письмо: расскажите о последнем релевантном проекте — что делали, какой стек использовали, какой был результат.

Тестовое задание: небольшое практическое задание (4-6 часов), состав определяется исходя из вашего опыта — может включать React-компонент, SQL-функцию для бизнес-логики, либо работу с потоковым аудио/телефонией. Показать результат (код + скриншоты / запись).