The Doppler Quarterly Fall 2017 | Page 39

Service Models Cloud Stack Who is Responsible Stack Components User Infrastructure User Interface Transactions Reports Dashboard OS Programming Language App Server Middleware Database Monitoring IaaS Vendor supplies: • Infrastructure Security Application Stack Authorization Application Authentication Administration Registration Login You do this: Figure 1: Shared responsibility model for IaaS As game changing as IaaS was, I still had to mess around with a lot of network- ing, storage and virtual server configurations. As a developer, all of these “IT plumbing” tasks were slowing me down from building working software. That’s when I started leveraging Platform as a Service (PaaS) solutions like Heroku. PaaS solutions took abstraction to a whole new level. Now low-level infrastruc- ture like networking, compute and storage were managed for me. Database and application stacks were off my plate as well. The problem with PaaS was that it was too prescriptive and often times too expensive. The public cloud providers evolved from basic compute, network and storage APIs to higher level managed services like database as a service (Azure SQL Database), streaming (AWS Kinesis) and machine learning (Google Machine Learning Engine). Now developers could pick and chose various “PaaS-like” services and combine them with IaaS capabilities as needed. Goo- gle and Microsoft also provide their own PaaS solutions that are integrated with the core services of their IaaS offering such as security, monitoring and logging services. Combining IaaS and PaaS services has become the way forward over the last few years but it still required a significant amount of work to create the original landing zone (core infrastructure design) in the cloud due to security and reg- ulatory requirements. FALL 2017 | THE DOPPLER | 37