Koios: A lightweight workflow service combined with server-driven UI for a better customer experience

Bài tóm tắt Zillow 2024 3. Quy mô lớn Độ khó: Dễ

Zillow · 2024 · 3. Quy mô lớn · Độ khó: Dễ — bài gốc

Bối cảnh

  • StreetEasy (thương hiệu của Zillow cho New York): mỗi lần muốn hỏi người dùng thêm một câu (lần đầu mua nhà? đã có khoản vay chưa?) là một giải pháp làm riêng trên web và app, mất vài tháng tới vài quý; sửa lại thì vướng schema dữ liệu cứng và tích hợp.

Thay đổi chính

  • Koios: dịch vụ workflow nhẹ + server-driven UI. Luồng nghiệp vụ (cây quyết định: node là hành động, nhánh là kết quả) mô tả bằng JSON trên server; client web và mobile vẽ theo đó.
  • Sửa câu hỏi hay nhánh chỉ cần deploy template JSON mới, không deploy web/app. Template ở nhiều mức (workflow, trang, phần tử) dùng component của design system.
  • Nhánh quyết định gọi dữ liệu back-end qua GraphQL federated; kích hoạt workflow theo sự kiện realtime của người dùng.
  • Kết quả workflow đi qua Kafka vào kho Snowflake, và qua nền tảng clickstream vào data lake; tiến trình của người dùng trong workflow xem được bằng distributed tracing thay vì tích hợp analytics riêng.
  • UI admin cho người không viết code tạo bảng hỏi, xem phiên bản và chủ sở hữu. Dự định thêm A/B test nhiều workflow.

Vì sao

Bài học cho SWE

  • Server-driven UI hợp với luồng thay đổi thường xuyên và đồng dạng (bảng hỏi, form), không phải mọi màn hình.
  • Tracing có thể làm luôn việc theo dõi funnel nếu mỗi bước là một span.

Liên quan