SaaS Startup Checklist

Development

Deployment

Resources

Cross Browser Testing

API

Documentation

Domain Name

Hosting

Virtual Private Server (VPS)

Dedicated Server

Cloud

Automated Deployment

Backups

Database replication and frequent, off-site backups.

Redundancy and Failover

Server redundancy and fail-over, load balancing. Multiple, redundant hosting providers to handle datacenter outages.

Alert and Monitoring

  • PagerDuty - Provides SaaS IT on-call schedule management, alerting and incident tracking.

Transport Layer Security

Keep your customer's data safe by using an encrypted connection with an SSL certificate. Mandatory for registration and login pages.

Content Delivery Network

Optimise delivery of web pages, block threats and limit abusive bots and crawlers.

YSlow! Web Performance Best Practices and Rules

Yahoo!'s Exceptional Performance team has identified a number of best practices for making web pages fast.

  1. Minimize HTTP Requests
  2. Use a Content Delivery Network
  3. Avoid empty src or href
  4. Add an Expires or a Cache-Control Header
  5. Gzip Components
  6. Put StyleSheets at the Top
  7. Put Scripts at the Bottom
  8. Avoid CSS Expressions
  9. Make JavaScript and CSS External
  10. Reduce DNS Lookups
  11. Minify JavaScript and CSS
  12. Avoid Redirects
  13. Remove Duplicate Scripts
  14. Configure ETags
  15. Make AJAX Cacheable
  16. Use GET for AJAX Requests
  17. Reduce the Number of DOM Elements
  18. No 404s
  19. Reduce Cookie Size
  20. Use Cookie-Free Domains for Components
  21. Avoid Filters
  22. Do Not Scale Images in HTML
  23. Make favicon.ico Small and Cacheable

Application Performance Monitoring

Monitor application performance and track historical trends. Should include page load times, error rates, slow transactions, servers resource usage. Correlate performance metrics with deployments/releases. Alerting for severe performance degradation.

  • NewRelic - A powerfully simple way to monitor your Web & Mobile applications.

Error Tracking

Aggregate client and server errors, exceptions and failures. Should include stack traces, environment information, intelligent notifications, trend analysis.

  • Sentry - Know immediately when things happen in your application. Engage users before they have a chance to report a problem.
  • Airbrake - With deploy tracking, logging, dupe detection and a dashboard to track your exceptions, managing and triaging errors has never been easier.
  • RayGun - Real time error reporting you can set up in under 5 minutes!
  • Exceptional - Tracks errors in web apps. It reports them in real-time and gathers the info you need to fix them fast.
  • Errbit - The open source, self-hosted error catcher.
  • Google Stackdriver Error Reporting - Real-time exception monitoring and alerting. No limits.

Analytics

Client-side error tracking

  • Errorception - Simple and painless way to find out about JavaScript errors, as they occur in your users' browsers. All you need to do is insert a script tag on your page, and you will start recording errors as they happen in real-time.
  • QBaka - Cloud-based frontend error monitoring and analytics for web services & mobile HTML5.
  • JSLogger - Log Javascript errors and events in the cloud.
  • Muscula - Log your JavaScript errors, so you can fix them.
  • BugSense - Get actionable reports on the health of your Javascript apps & websites!
  • ExceptionHub - Easy Setup, drop in code and start collecting errors.

Social Media

Register appropriate usernames/pages on social media sites. Configure alerts for mentions, complaints and praise.

Status Page

Externally hosted resource displaying real-time system availabilty, historical uptime, latency, past incidents.

  • StatusPage.io - The best way to create a status page for your app or website.

Image Optimisation

User Authentication