Жан-Дени Грез о построении API-продуктов: «API — это не продукт»

Startup Grind 1,3 тыс. 16 мин 3 мин 26.02.2021
Главное

Как быстро масштабировать API-стартап: уроки от Plaid 0:04

Скорость итерации — главный двигатель успеха для любой растущей компании, однако работа с API-продуктами накладывает уникальные ограничения, отличающие их от привычных UI-интерфейсов. Жан-Дени Грез, технический директор компании Plaid, на встрече с комьюнити Startup Grind рассказал, почему классические методы «быстрого запуска» здесь не работают и как выстроить архитектуру так, чтобы не утонуть в техническом долге.

🛠 Специфика API как продукта 2:05

В отличие от таких UI-продуктов, как Instagram, где разработчик может принудительно «подсадить» пользователя на новую кнопку или функцию через интерфейс, API требует от клиента активных инженерных действий. Грез выделяет несколько «острых углов», с которыми сталкивается каждый создатель API:

🚀 Стратегии ускорения разработки 6:45

Для поддержания высокой скорости итерации без потери клиентской базы необходимо использовать несколько подходов:

  1. Дизайн-партнеры: Это компании с сильной инженерной командой, готовые глубоко интегрироваться с вами на всех этапах жизни продукта. Грез отмечает, что Stripe успешно применял эту модель с компаниями вроде Lyft и Shopify.
  2. Новые пользователи как полигон: Для новых клиентов вы всегда предоставляете «лучшую» (актуальную) версию API через гайды по быстрому старту. Это позволяет быстрее внедрять инновации, хотя и требует осторожности, чтобы не игнорировать потребности старых, крупных клиентов.
  3. Техническое версионирование: Грез рекомендует использовать версионирование на уровне конкретных фич или клиентов, а не просто API в целом.
  4. Использование «прокладок» (shims): Внедрение трансляционных слоев (shims) позволяет изолировать технический долг, связанный с поддержкой множества версий, в одном месте кода, вместо того чтобы разбрасывать условия if-else по всей системе.

💡 API — это не продукт 12:38

Ключевой инсайт для зрелого стартапа, по мнению Греза: API — это не сам продукт, а лишь строительный блок. Реальный продукт — это то, что клиенты создают поверх вашего кода.

Хотя поддержка старых API требует времени и часто приводит к компромиссам — например, когда 2% клиентов просят отсрочку депрекации, и вам приходится идти навстречу из-за бизнеса — именно эта сложность создает высокий «ров» вокруг вашего бизнеса. Сложность копирования всей экосистемы Plaid делает практически невозможным для конкурента просто «скопировать и заменить» ваш продукт.

💬 Цитаты

«API — это не продукт. Продукт — это то, что ваши разработчики-клиенты строят поверх API.»

Жан-Дени Грез 12:38

«Технический долг — это враг скорости.»

Жан-Дени Грез 06:21
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
API (Application Programming Interface)
Интерфейс программирования, позволяющий разным программам взаимодействовать друг с другом.
Shims (Прокладки)
Слои кода, которые изолируют сложность различных версий API, позволяя не переписывать основное ядро.
Deprecation (Депрекация)
Процесс вывода из эксплуатации старых версий или функций программного обеспечения.
Breaking change (Ломающее изменение)
Изменение в API, которое требует от клиентов модификации их кода, иначе интеграция перестанет работать.
📊 Цифры
⚖️ Другая сторона
Стартапы и бизнес Plaid Jean-Denis Greze API startup technical debt product iteration