Pinterest 用新的 Pinconsole 平台统一了工程工具

  • Introduced PinConsole: Pinterest introduced PinConsole, a unified internal developer platform (IDP), to centralize engineering workflows. It was built to address the fragmented developer experience caused by multiple disconnected tools.

    • Integrates Workflows: Integrates common developer workflows like continuous deployment pipelines, monitoring dashboards, alerting, and ownership metadata. Allows engineers to manage releases, access logs and metrics without switching tools.
    • Designed with IDP Model: Inspired by Backstage, Kubernetes, and gRPC, it provides a consistent interface and standard workflows, promoting reuse and uniformity.
  • Supporting Technologies:

    • Entity Data Model: Built an entity data model that syncs with LDAP directory every 60 minutes via Backstage’s ldapOrg provider for accurate ownership tracking and access control.
    • Databases: Uses PostgreSQL databases on AWS RDS for production and staging.
    • Customized Interface: Customized Pinconsole interface with Pinterest’s Gestalt design system.
    • PinCompute Plugin: Provides a unified interface for managing Kubernetes workloads with custom resources like PinApps and PinScalers supported by a custom Kubernetes plugin. Supports multi-tenancy and integrates with security systems, service registry, and artifact repositories.
  • Scalability Optimizations:

    • Apollo Client: Uses cache policies to proactively prefetch commonly accessed data.
    • React.lazy and Suspense: Enables code splitting.
    • Server-side Rendering: Renders critical pages server-side to improve time-to-first-meaningful-paint.
    • Multi-level Caching: Reduces latency and enhances perceived performance by caching CDN assets and API gateway responses.
  • Extensibility and Adoption: PinConsole is designed to be extensible, allowing teams to contribute plugins and workflows. It has reached over 700 daily active users with around 30% of Pinterest engineers using it monthly and a Net Promoter Score above 70. Consistent workflows, discoverable services, and extensible plugin architecture were key factors in its adoption.
阅读 61
0 条评论