This document discusses microservices and provides recommendations for developing microservice architectures. It begins by comparing experiences developing large and small systems. Microservices are then defined as independently deployable services that communicate via lightweight mechanisms like HTTP. Examples are provided of companies that pioneered microservices like Amazon and Netflix. The document concludes by recommending developers start small with microservices, focus on principles over specific technologies, and address challenges of distributed systems through monitoring, resilience patterns, and infrastructure support.