О проекте
Нужен fullstack-разработчик для разработки и поддержки продуктовых модулей.
Работа ведётся в экосистеме из 3 продуктов:
- Платформа внутренних сервисов — API, события, инфраструктурные модули для других продуктов.
- Продукт CRM / backoffice — бизнес-функции, интеграции и поэтапное развитие/вынос функциональности.
- Логистический продукт — сервисы на Python/FastAPI и SPA-интерфейсы для пользователей и администраторов.
Бэкенд-часть — сервисы и API на Python для продуктового слоя (интеграции, фоновые задачи, работа с БД, события/шина — по необходимости).
Стек
Frontend (SPA)
- React 19, TypeScript (strict)
- Vite, React Router v6
- Feature-Sliced Design (FSD)
- TanStack Query (серверное состояние)
- TanStack Table (таблицы)
- react-hook-form + Zod (формы и валидация)
- shadcn/ui + TailwindCSS (UI)
- ESLint + Prettier
Backend (сервисы и API)
- Python 3.12+, FastAPI
- PostgreSQL
- Pydantic 2+
- SQLAlchemy 2.0+, Alembic (миграции)
- Redis
- Message broker (RabbitMQ/Kafka) — по задачам
- Асинхронный код (async/await) где применимо
- Паттерны: DDD-подход, Repository/Service, аккуратная обработка ошибок/ретраи/таймауты
Чем предстоит заниматься
Frontend
- Разработка и поддержка SPA: новые разделы/экраны, улучшение UX, исправление ошибок.
- Интеграция с API: состояния загрузки/ошибок, кеширование, инвалидации, retry-логика.
- Развитие дизайн-системы и переиспользуемых компонентов (таблицы, модалки, селекты, формы, кнопки, табы, пагинация, empty state, skeleton и т.д.).
- Поддержание качества: TypeScript strict, линтинг/форматирование без ошибок.
Backend
- Реализация и развитие API для продуктового слоя (контракты, валидация, ошибки, версионирование по необходимости).
- Работа с БД: модели, миграции, индексы, транзакции.
- Фоновые задачи/воркеры по расписанию, интеграции с внешними источниками, обработка нестабильности (ретраи, таймауты, fallback где уместно).
- Проработка границ доменов и структуры сервиса (Domain / Infrastructure / API-слой).
Ожидания
Обязательно
- Коммерческий опыт разработки — от 5 лет (fullstack или суммарно по фронту/бэку).
- Уверенный опыт React + TypeScript и разработки SPA.
- Готовность придерживаться единых договорённостей по фронту:
- проект на React 19 + TypeScript strict, структура по FSD;
- серверное состояние (данные API) — только TanStack Query (кеш/ошибки/инвалидации), без дублирования в глобальных сторах без необходимости;
- формы — react-hook-form + Zod;
- глобальное клиентское состояние (если нужно) — один выбранный инструмент на весь проект (без «зоопарка» решений);
- UI строится на переиспользуемых базовых компонентах (единые обёртки/примитивы): таблица (TanStack Table), модалка, селекты (статические и с API), поля ввода/поиск, кнопки, табы, пагинация, empty state, skeleton и т.д.;
- стилизация — TailwindCSS + shadcn/ui, единообразие компонентов и стилей по всему приложению;
- код должен проходить ESLint + Prettier без ошибок.
- Уверенный опыт Python в продакшене: API, работа с БД, валидация, миграции.
- Практика аккуратной обработки ошибок и интеграций (таймауты, ретраи, предсказуемые ответы).
- Командная разработка: Git, code review, аккуратные изменения.
Плюсом
- Опыт с микросервисной архитектурой и event-driven подходом.
- Опыт с Redis, Kafka/RabbitMQ.
- Docker и базовый CI/CD.
- Наблюдаемость (логи/метрики/трейсы) на практическом уровне.
Условия
- Проектная работа, удалённо.
- Загрузка — full-time.
- Ожидаемая длительность: 2–3 месяца (возможны продления/следующие этапы).
- Коммуникация: чат + созвоны, задачи в трекере.
Откликнуться
Пришлите:
- Кратко про опыт Python (FastAPI/ORM) и React/TypeScript (что делали руками).
- Ссылки на код/проекты (GitHub/репозитории/демо), если есть.
- Доступность (когда старт).