Пятнадцать лет строю и масштабирую распределённые системы — застал переход индустрии от bare-metal серверов и монолитов к cloud-native, Kubernetes и GitOps. Берусь за то, что команды откладывают: технический долг, выкладка релизов с нуля и удержание систем в рабочем состоянии.
Шесть переходов, которые сегодня продают готовыми решениями. Я проходил их, когда готовых решений не существовало.
Слой API и контракты
API / Backend — Node.js, TypeScript, OpenAPI, gRPC, NGINX
Референсная архитектура. Клиентский код под NDA, поэтому страница описывает устройство системы и логику решений, а не конкретное внедрение.
Публичная REST-поверхность поверх gRPC между сервисами, оба генерируются из одного контракта. Написанные руками клиенты расходятся с сервером на следующей же неделе; сгенерированные вместо этого валят сборку — единственная обратная связь, приходящая достаточно рано, чтобы быть полезной.
Версионирование явное и только аддитивное: новые поля опциональны, удаление требует окна устаревания, шлюз умеет отдавать две версии сразу. Скучно — и именно это позволяет бэкенд-команде выпускать, не согласуясь с каждым потребителем.