Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 1.11 KB

principles.md

File metadata and controls

46 lines (34 loc) · 1.11 KB

Guiding Design Principles for Taskcluster

At the 2016 tc-worker workweek the Taskcluster Platform team laid out our core design principles. The four key principles are:

  • Self-service
  • Robustness
  • Enable rapid change
  • Community friendliness

These are all under an umbrella we call Getting Things Built™. None of our work matters unless it works! Read further for a slightly expanded list of principles!

Getting Things Built™

Self-service

  • Task Isolation
  • API-driven UI Tools
  • Extensibility
  • Granular Security
  • Clearly-defined interfaces
  • Separation of concerns

Robustness

  • Scalability
  • Correctness
  • Minimal Self-hosting
    • Use managed services, e.g. S3, Azure Storage
    • Don't self-host mutable services
  • Stateless services
  • 12-factor applications

Enable Rapid Change

  • Agility
  • Clearly-defined interfaces
  • Microservices
  • Separation of concerns

Community Friendly

  • Transparency
    • Granular Security
  • Public by Default
  • Self-Service