Вакансия: Программист Full-stack
Зарплата: 49 000 - 50 000 руб.
Форма занятости:
Метод работы:
Полный рабочий день
Задачи: Кастомизировать Strapi под нужды проекта: дорабатывать модели данных, плагины, API и внутреннюю архитектуру CMS. Разрабатывать собственные Custom Field Plugins для Strapi, включая новые типы полей и их интеграцию в Content Manager. Глубоко кастомизировать Strapi Design System / Admin Panel на React: injection zones, custom pages, settings sections, custom permissions. Разрабатывать собственные Strapi providers для upload, email и authentication. Расширять Strapi v5 через Document Service API, middleware и custom document operations. Разрабатывать и поддерживать собственные database migrations Strapi, включая миграции больших production-инсталляций между major-версиями. Проектировать и развивать multi-tenant архитектуру Strapi, включая row-level tenant isolation. Разрабатывать и поддерживать frontend-часть проекта одновременно на React и Vue 3/Nuxt. Интегрировать новые возможности CMS в редакторскую систему и пользовательский интерфейс. Развивать собственный rich-text редактор на базе ProseMirror/Tiptap, включая custom extensions и интеграцию редактора непосредственно в Strapi Admin. Реализовывать real-time collaborative editing на базе Yjs/CRDT, синхронизацию документов и разрешение конфликтов. Проектировать REST/GraphQL API и генерировать типизированные TypeScript-клиенты на основе OpenAPI-контрактов. Оптимизировать GraphQL API: persisted queries, DataLoader, устранение N+1. Проектировать сложные структуры данных в PostgreSQL с использованием JSONB, GIN/GiST indexes. Работать с PostgreSQL Row-Level Security (RLS) и интегрировать database-level security с application-level authorization. Использовать PostgreSQL LISTEN/NOTIFY для event-driven взаимодействия. Работать с PostgreSQL Logical Replication / CDC, обрабатывая изменения контента как поток событий. Реализовывать temporal data / audit trail / versioning контента на уровне PostgreSQL. Строить event-driven интеграции на базе NATS JetStream. Использовать Debezium + PostgreSQL CDC для распространения изменений между сервисами. Интегрировать Meilisearch/Typesense со Strapi и обеспечивать синхронизацию поискового индекса через lifecycle/document events. Реализовывать сложные модели авторизации через Open Policy Agent (OPA), Casbin и Keycloak. Интегрировать Strapi с OIDC, включая roles/claims mapping и service-to-service authentication. Настраивать OpenTelemetry для Node.js/Strapi: custom spans, propagation context и distributed tracing. Развивать архитектуру монорепозитория и общие пакеты между backend и frontend. Работать с Module Federation между React и Vue. Оптимизировать SSR-приложения, включая Edge Side Includes / fragment caching для CMS-driven страниц. Работать с Docker, GitLab CI/CD и production-инфраструктурой. Анализировать производительность и production-проблемы на уровне frontend, Node.js, Strapi и PostgreSQL. Участвовать в архитектурных обсуждениях и самостоятельно принимать технические решения.
Образование:
Высшее образование — специалитет, магистратура
Опыт:
6
Контакты:
Для просмотра контактов необходимо авторизоваться на сайте.
Войти