Many companies are looking to platform-as-a-service (PaaS) infrastructure, to enable faster, standardized and more cost-efficient software development across their organization. Yet, some organizations get stalled shortly after implementation. At Crosslake Technologies, we have seen confusion at many companies who have implemented PaaS solutions, struggling with the question of “Now what?”.
In this post, we review the benefits of PaaS and highlight how it can help operations and software development teams evolve the way they work. In the next post in the series, we present a case study using the Pivotal Cloud Foundry (PCF) PaaS solution, and how it is transforming a company that delivers CRM SaaS solutions to better manage member information, organize events and perform fundraising.
The benefits of PaaS
When leveraged correctly, PaaS infrastructure provides tremendous efficiencies for software development; everything below the application layer is automated, in the cloud, and managed by the PaaS. That includes the operating system and components that run in a container (like Docker) that runs on a virtual machine, which itself resides atop a server OS. The next layer down is the physical server with Internet and networking structure, and a cloud storage device backing that up. Teams are left to focus on what’s strategic to their company: the application.
Beyond infrastructure cost efficiencies, PaaS helps a company avoid the costly trap of building an application platform in isolation. Too often, organizations develop a custom software development platform with little forethought around standardization and ease of extensibility. Such platforms suffer from low user uptake.
Quality PaaS platforms, by contrast, provide centralized information management, standard integrations with external services and the ability to reuse code, business logic and standard access rules across the organization. These add up to tremendous resource savings as more and more software and applications get developed over time. More importantly, PaaS platforms remove all the items that can sidetrack a development team, allowing focus on creating the strategic software and applications that differentiate their company from competitors.
Finally, applications built on a native-cloud platform can be deployed at scale faster. Feature and application rollouts that once took months can now occur in a matter of hours or days. As a result, development teams can respond much faster to evolving market needs.
PaaS drives innovative thinking for development and operations
Organizations using a PaaS platform need to view it as a critical first step to something greater. Let’s consider this statement from both the developers’ and operations professionals’ points of view.
For developers, the ideal method of code writing would include a capability for reliably going into production as soon as possible. Unfortunately, not wanting to break a production system, developers perform multiple rounds of testing to ensure the new code is safe to deploy. With PaaS, developers have ways to automatically use a full stack with production-level data in a secure way that does not involve large numbers of users. So, how does that change their thinking around what’s possible?
Such a capability raises exciting new possibilities for the developers. No longer do they need to make trade-offs between what they can and cannot test, worrying who that decision impacts further down the production line. Instead, they have full control to perform advanced testing and full-scale production simulations. With that, individual developers can change their approach to coding, focusing more on the application, which produces business value, and less on the infrastructure. The possibilities become almost endless. Developers can incorporate new APIs quickly and easily, customize a software feature by customer / user segments, apply any number of pre-defined functionality blocks, etc.
From an operations standpoint, a microservices architecture is desirable as it lets operations staff deploy and manage a wealth of discrete services extremely fast. These services can be spun up quickly because they have a small infrastructure footprint and are stateless (hold no data). So, users of these services can run a process, call upon cloud resources to deliver the functionality and data for a single transaction, and never worry about availability and resiliency. This provides ultimate flexibility for provisioning services on a user-specific and usage-specific basis.
Deploying services on a PaaS platform allows your organization to deliver new software and applications much faster with a standardized architecture and processes. But the real payoff is in providing business value with strategic innovation. Read on to learn how a membership management software company goes cloud-native.