Все вакансии России 0

Backend-разработчик (Node.js / TypeScript)

100 000 – 150 000 ₽
Межрегиональная инспекция Федеральной налоговой службы по управлению долгом
Москва Постоянная занятость Полный день

Описание

Мы разрабатываем корпоративные информационные системы: учётные реестры, CRM-подобные решения, системы согласования и маршрутизации бизнес-процессов, аналитические дашборды. Это сложные внутренние платформы с богатой доменной логикой. Сейчас в контуре 26 сервисов: реестры, учётные и справочные системы, дашборды, конструктор опросов и портал как единая точка входа. Ищем разработчика, который возьмёт на себя серверную часть этих систем — от модели данных до эксплуатации в проде.Обязанности Проектировать и разрабатывать HTTP API для внутренних систем: реестры, справочники, согласование, аналитика Отвечать за модель данных: схема, индексы, миграции, агрегаты, политика хранения — с расчётом на реальный объём, а не только на текущую задачу Реализовывать доменную логику бизнес-процессов: состояния и переходы, права на действие в зависимости от роли и контекста, обработка исключений из общих правил Поддерживать ролевую модель на сервере как источник истины: интерфейс отражает права, решение о доступе принимает backend Описывать контракты API в OpenAPI: по спецификации фронтенд генерирует клиент, поэтому контракт — часть разработки, а не документация постфактум Реализовывать серверную часть сложных таблиц и дашбордов: фильтрация, сортировка, серверная пагинация, выборки по большим объёмам, экспорт Развивать интеграции между сервисами и с внешними системами, включая ФНС: таймауты, повторные попытки, идемпотентность Поддерживать на стороне API механизмы актуализации данных: условные запросы (ETag, Last-Modified), корректные заголовки кэширования, эндпойнты, выдерживающие регулярный опрос клиентом Сопровождать свой код в эксплуатации: развёртывание, настройка nginx, логирование, диагностика инцидентов Участвовать в код-ревью, оптимизировать запросы и производительность. Требования. Технически важно: - Продакшн-опыт с Node.js: асинхронная модель и её типичные ошибки, потоки, обработка больших объёмов данных, ES-модули; - Уверенный TypeScript: дженерики, точные типы для контрактов API, слоя данных и доменных сущностей; использование any требует обоснования; - Express или Fastify с продуманной архитектурой: разделение слоёв, валидация входных данных, единая обработка ошибок; - Практическое владение SQL: сложные запросы, чтение плана выполнения, проектирование схемы под нагрузку. MySQL или MariaDB; - Работа с базой через драйвер mysql2: пул соединений, параметризованные запросы, транзакции; - Валидация данных на границе API: Zod или аналогичное решение, единый контракт с фронтендом; - Глубокое понимание HTTP: коды и заголовки, CORS и предзапросы, кэширование, таймауты. Значительная часть проблем интеграции относится к транспорту, а не к логике; - Аутентификация и авторизация: сессии или токены, разграничение прав, аудит действий; - Администрирование своего приложения в Linux и Windows Server: служба или systemd, nginx, разбор логов, права на файлы; - Аккуратность в работе с персональными данными: понимание, зачем IP хранится в виде солёного хэша и почему идентификатор посетителя анонимный; - Уверенное владение git. Будет плюсом: - Аналитический склад ума и интерес к предметной области; - Опыт с реестровыми и учётными системами в госсекторе или крупных организациях; - Опыт frontend-разработки на React и TypeScript: помогает договариваться о контрактах без посредников; - Опыт с NestJS, Prisma, PostgreSQL — пригодится при запуске новых сервисов; - Очереди и фоновые задачи: планировщики, воркеры, BullMQ или аналоги; - Unit- и интеграционные тесты на API: Vitest, Jest, Supertest; - Опыт с временными рядами, агрегатами и разбором логов; - Realtime: WebSocket, SSE; - Осмысленное применение ИИ-инструментов в продакшене; - Python или PHP как второй язык: часть унаследованных сервисов написана не на Node. Стек, с которым столкнётесь: Node.js 20+, TypeScript, Express, MySQL (mysql2 без ORM), nginx как reverse proxy, OpenAPI для контрактов. Фронтенд — React, TypeScript, Vite. Условия оформление в соответствии с 79-ФЗ «О государственной гражданской службе Российской Федерации» стабильный доход в компании Федерального масштаба, а также премирование по итогам работы ежегодный отпуск 30 календарных дней + отпуск за выслугу и ненормированный рабочий день реальные возможности профессионального и карьерного роста социальный пакет, включающий возможность прикрепления к ведомственной поликлинике, льготные путевки в ведомственные санатории удобное расположение офиса в центре города Москвы,; шаговая доступность от м. Новослободская (2 мин.)

Откликнуться
Источник: hh · 17.08.2026

Похожие вакансии в городе Москва

Все вакансии в городе Москва →