API-first подход в межсервисном взаимодействии

Архитектура в DevOps, DevOps для CTO

Доклад принят в программу конференции

Тезисы

При проектировании систем незаслуженно мало внимания уделяется важности API-first подхода.

По своей сути этот подход является продолжением древней мудрости «месяцы кодирования берегут часы проектирования».

Появление стандартов типа OpenAPI, GraphQL или gRPC позволило соединить кодификацию знаний и предварительное продумывание системы, прежде чем кидаться что-то кодить.

На нашей практике работа со схемами (в нашем случае это OpenAPI) позволяет коллегам из разных миров (яваскрипт, руби, продавцы, продакты) общаться на том языке, который достаточно техничен, чтобы быть превращаемым в исполняемый код, но достаточно высокоуровневый, чтобы все участники общения могли смоделировать будущую систему в голове и найти нестыковки с собственной картиной мира.

Хочу рассказать про наш удивительный опыт внедрения API-first подхода, который позволил нам:

* разгрести многолетний бардак в API
* вслед за ним вскрыть массу проблем в дизайне ПО
* при проектировании новой большой системы устранить массу проблем до написания первых строчек кода и сэкономить минимум год работы.

Автор проекта https://flussonic.com

Видео