Проект - Арх.Tool. (Инструмент архитектурного проектирования). Помогает пользователям строить архитектуры, создавать справочники - это все интегрируется с внутренними системами компании
Обязанности
проектирование архитектуры новых фич с нуля (от базы данных до UI);
оптимизация производительности существующего проекта (улучшение Lighthouse scores, времени загрузки);
интеграция со сторонними API и сервисами;
написание технической документации (ADRs);
участие в найме и адаптации новых разработчиков;
полный цикл разработки: фича от задачи в таск-трекере до продакшена (CI/CD, мониторинг ошибок).
Обязательные требования
Frontend (Next.js & React)
Глубокое знание Next.js (App Router): Кандидат должен уверенно работать с новой архитектурой папок (app/), понимать разницу между серверными и клиентскими компонентами, уметь оптимизировать рендеринг (SSR, SSG, ISR, CSR).
React: Отличное знание хуков, контекста, порталов, паттернов композиции компонентов и производительности (мемоизация, useCallback, React.memo).
Стейт-менеджмент: Опыт работы с современными инструментами (Zustand, Redux Toolkit, TanStack Query) для управления серверным и клиентским состоянием.
Стилизация: Владение CSS-in-JS (styled-components, Emotion), Tailwind CSS, CSS Modules.
Производительность (Web Vitals): Умение анализировать и оптимизировать загрузку страниц (LCP, FID, CLS), работать с бандлерами (Webpack, Turbopack), настраивать код-сплиттинг и ленивую загрузку.
Backend (Node.js)
Node.js и фреймворки: Опыт написания серверной логики на Node.js, желательно с использованием фреймворков (Express, Fastify, NestJS). Понимание принципов GraphQL (Apollo, Pothos),REST API: Глубокое понимание принципов, версионирование, проектирование эндпоинтов.
- Аутентификация и авторизация:
- JWT (полный цикл: access/refresh токены).
- Passport.js стратегии (local, jwt, oauth2).
- Ролевая (RBAC) и разрешительная (ABAC/PBAC) модели авторизации.
API Routes в Next.js: Умение создавать надежные эндпоинты внутри Next.js, обрабатывать middleware, управлять сессиями и cookies.
Безопасность: Понимание основ безопасности веб-приложений (CORS, XSS, CSRF, SQL инъекции), работа с аутентификацией (NextAuth.js / Auth.js, JWT, сессии).
Базы данных и DevOps Базы данных: Опыт работы как с SQL (PostgreSQL, MySQL), так и с NoSQL (MongoDB, Redis). Умение проектировать схемы и писать сложные запросы.
ORM: Опыт работы с Prisma на продвинутом уровне: сложные связи, транзакции, миграции, индексы, оптимизация запросов (query logging, анализ EXPLAIN), Drizzle ORM или TypeORM.
TypeScript: Экспертный уровень. Понимание generics, utility types, advanced types, декораторов, конфигурации tsconfig.json.
Docker: Умение контейнеризировать приложения (написание Dockerfile, docker-compose.yml).
Деплой и хостинг: Опыт деплоя на Vercel (как нативную платформу для Next.js), а также на другие облачные платформы (AWS Amplify, Google Cloud Run, Netlify). Понимание работы serverless функций.
Инструменты и методологии TypeScript: Строгое владение TypeScript (generics, utility types, type narrowing) обязательно. Код должен быть типобезопасным.
Тестирование: Опыт написания юнит-тестов (Jest, Vitest) и интеграционных/сквозных тестов (Playwright, Cypress).
Git: Владение Git flow, умение решать конфликты, проводить код-ревью.
Будет плюсом
Опыт с Turborepo / Nx: Понимание монорепозиториев.
WebSockets: Опыт реализации real-time функциональности (Socket.io, Pusher).
tRPC: Опыт создания end-to-end typesafe API.
Serverless: Понимание архитектуры бессерверных приложений.
Английский язык: Уровень Intermediate и выше (для чтения технической документации и переписки).
Опыт с NestJS-совместимыми библиотеками: @nestjs/axios, @nestjs/throttler, @nestjs/schedule, @nestjs/bull (очереди на Redis).
Знание альтернативных Node.js фреймворков (Express, Fastify) — понимание, что "под капотом" у NestJS.
Опыт работы с Serverless (AWS Lambda + NestJS в режиме standalone).
Понимание принципов теории очередей и обработки фоновых задач.
Знакомство с Kubernetes (k8s) для оркестрации.