Top tips for building scalable web applications

  1. Choose the correct tool for the job - not the most popular.
  2. Implement caching to reduce costs
  3. Utilise multiple levels of caching to avoid cache misses
  4. Make use of SQL and NoSQL together where it makes sense
  5. Avoid using local disks - use object storage API in the cloud
  6. Make the application stateless unless there is a good reason to store state
  7. Make use of asynchronous communication where possible
  8. Use queues to make your tasks atomic - easy retrieved when they fail
  9. Always have the ability to roll back your code for failed deploys
  10. Load test your applicatino every day
  11. Root out a single point of failure
  12. Automate everything to run continuously

Source