SAAS Application Architecture

I was finally inspired to get this site up and running after listening to a Software Engineering Radio podcast with John Sonmez. In that podcast episode John talks about how a technical blog can really help your career…that’s never a bad thing and as mentioned in my last post, I wanted a place to help others with any tips, tricks or general things I learn.

John suggests coming up with a “theme” for a tech blog…a theme not in the visual sense but a theme regarding the content. With that, I’ve landed on “SAAS Application Architecture”.

My career has taken me to a place where I primary work on software systems which have a publicly facing website and are fairly complex behind the scenes. SAAS (software as a service) can probably be interpreted many ways but in my mind it’s a complex software system composed of multiple services which allows users to manage and analyze some type of data. The type of data and tasks performed are typically within a certain domain. Taking some examples from things I’ve worked on:

  • Eventbrite: event/ticketing domain
  • Clearcare: in-home health care agency domain
  • RoastLog: coffee roasting domain

All of these systems:

  • have publicly facing websites
  • provide users with access to their data 247
  • are comprised of multiple backend systems (databases, caching, microservices, etc)
  • are non-trivial to implement due to the complexities of the domains

With all of that, what I intend to write about here are my experiences building systems like this.

Also, since the previous post I’ve changed themes. The new one is called blackburn and is really slick. It only took a few minutes to completely switch. You can look through the git history for this blog if you’re interested in what I did to make the change.