Social games development involves balancing conflicting requirements between conventional and casual games. The process starts like packaged goods development but evolves into a web service model. Design and development is iterative with implementation, testing, and continuous service releases. Tools are separated into modular components like game tuning, asset management, and monitoring. Analytics are integrated at all levels for simple stats and detailed tracking. The architecture is designed for scaling without scaling through siloed design and limiting single points of failure. Fault tolerance is built into multiple layers to fail gracefully on the platform and API levels through techniques like queuing, batching, and asynchronous calls. Monitoring is integrated with stats and uses dynamic alerts.