Fullstack Engineer (React, Typescript, NodeJS)
Мэтч
Покажет вашу совместимость с вакансией
Описание вакансии
О компании
Selfwork строит AI-экосистему для фриланса и B2B-выплат. Два продукта в одной кодовой базе (монорепо, общий бэкенд, разные фронтенды):
AI Freelance Marketplace: чат с AI-агентом, который собирает бриф, мэтчит заказчиков и фрилансеров и ведёт сделку до оплаты. Есть пользователи, мы ищем product-market fit, часто релизимся и проверяем гипотезы.
B2B Payroll: международные выплаты контракторам. Есть платящие клиенты, продукт приносит выручку.
Чем предстоит заниматься
- Чат. Это центральная точка нашего фриланс маркетплейса: общение заказчиков и исполнителей, AI-агент, который ведет сделку (брифы, офферы, поддержка, верификация), стриминг ответов LLM в реальном времени. Впереди переезд UI с собственного кита на shadcn/ui.
- Публичные сайты. Основной сайт на SSR, лендинги кампаний под разные рынки, блог и статьи, встроенный чат-интро с AI, лид-формы и аналитика конверсий. Сайты должны быстро грузиться, хорошо индексироваться и легко расширяться новыми страницами и языками.
Фичи end-to-end на фронте и бэке: реализация, тесты, деплой, проверка после релиза.
Работа с БД, очередями и интеграциями LLM вместе с senior-разработчиком.
Наш стек
Frontend: React, TypeScript, TanStack Query, Tailwind, shadcn/ui
Сайты: Astro (SSR), TypeScript, Tailwind
Backend: Node.js, Fastify + Zod, PostgreSQL, MongoDB, Redis
Realtime и LLM: WebSocket, SSE, Vercel AI SDK
Очереди: NATS JetStream
Инфра и качество: Linux, Docker, GitLab CI/CD, Vitest, Playwright
Нам важно, чтобы у кандидата были:
- Уверенный TypeScript на фронте и на бэке.
- React: hooks, производительность, работа с большими списками; TanStack Query.
- Уверенные HTML и современный CSS (семантичная вёрстка, адаптив, доступность), Tailwind.
- Node.js-бэкенд на TypeScript: понимаешь, как устроены роутинг, валидация и REST API без тяжёлого фреймворка.
- Опыт с PostgreSQL.
- Умение писать тесты: unit на Vitest, TDD будет плюсом.
- Linux, Docker и Docker Compose на рабочем уровне.
- Сильная сторона хотя бы в одном из направлений (чат или публичные сайты) и готовность уверенно расти во втором.
- Понимание очередей и событийной модели - будет преимуществом.
Будет большим плюсом, если работал с чем-то из списка ниже:
- Опыт разработки чата и realtime: опыт с WebSocket и чатами (переподключение, порядок и доставка сообщений, оптимистичные обновления, пагинация истории, статусы прочтения и присутствия), SSE и стриминг данных на клиент.
- LLM: интеграция в любом виде: вызов моделей через API, стриминг ответов, tool calling, работа с промптами и контекстом (Vercel AI SDK, OpenRouter).
- UI: shadcn/ui (Radix + Tailwind), TanStack Virtual.
- Сайты: Astro или другой SSR/SSG без Next.js / Nuxt; сборка быстрого сайта на чистом HTML + Vite; Preact и Signals.
- SEO и производительность: Core Web Vitals, мета-теги и Open Graph, sitemap, hreflang, оптимизация шрифтов и изображений.
- Аналитика: настройка событий и воронок (PostHog, GA4 или аналоги).
- Backend: Fastify + Zod, MongoDB, Redis, Elasticsearch, ClickHouse, NATS JetStream / RabbitMQ.
- опыт Финтех: продукты с деньгами (балансы, тарифы, калькуляторы, оплаты, чекауты, уровня «подключил Stripe» достаточно);
- Доставка: участие в CI/CD и деплое, e2e-тесты на Playwright; если щупал AWS или другое облако - это плюс.
- Мультиязычные сайты под разные рынки (EU / PL / US), базовое понимание GDPR (cookies, шрифты, трекинг); анимации без потери производительности.
С чем познакомишься у нас (не ждём на входе)
Kubernetes / k3s, realtime-брокеры (Centrifugo и аналоги), агентные фреймворки и RAG, offline-first на IndexedDB, Storybook, миграция UI-кита.
Подход к работе
- Используешь AI как помощника, а не как разработчика: часть кода пишешь руками, внимательно ревьюишь всё, что написал агент, и можешь объяснить каждую строку в своём MR.
- Ответственный: доводишь задачи до конца без постоянного контроля.
- Замечаешь проблемы (в чате, скорости, SEO, конверсии страницы), приходишь с вариантами решения и обсуждаешь их с senior.
Условия
- Официальный B2B контракт, полностью удалённо, гибкий график.
- Доход 2000-3000$, выплаты в $/€/USDT с инвойсами.
- До 30 дней оплачиваемого отпуска и 15 sick days в год.
- Прямая коммуникация с CTO и senior, минимум бюрократии, рост через ревью и работу бок о бок с senior.
Этапы найма
- Отклик: резюме + GitHub или проекты, если есть.
- Скрининг с HR, 30–45 минут.
- Техническое интервью, 1 час.
- Оффер.
Будьте осторожны: если работодатель просит войти в их систему, используя iCloud/Google, прислать код/пароль, запустить код/ПО, не делайте этого - это мошенники. Обязательно жмите "Пожаловаться" или пишите в поддержку. Подробнее в гайде →
Вакансия размещена на Hirify напрямую от HR/нанимающего менеджера