Making the technology transition to serverless architecture is a frequent topic these days. Less frequently discussed is the human component of this change, but it's an equally important topic. Aligning your organization's people to your technology transition is a critical component in a successful serverless strategy.
Preparing for change
Let's face it, change can be uncomfortable. With any technology change, in particular, there's an underlying expectation that your teams learn new skills, step out of their comfort zones, risk failure and embarrassment, and change their existing workflows and dynamics. That's a lot to ask.
While the technology transition may be well-justified by significant organizational benefits -- dramatic infrastructure cost savings, improved scalability and operational efficiencies -- these benefits may mean very little in the day-to-day work of individual developers on your staff.
Ideally, the human transition to serverless begins before the technological shift, by preparing your team for the change. Some companies who have been especially successful in their transition started by creating a serverless advocacy group in advance of any implementation. The serverless advocacy group is generally composed of front-line practitioners (developers, ops, security, etc) from across the organization. Their role is to 1) identify low-risk opportunities for serverless usage across the technology stack, 2) become serverless advocates in their respective teams (educating and building enthusiasm across the company), and 3) collecting feedback and concerns from their teams and working with the rest of the advocacy group to create org-wide best practices to make the transition easier for everyone.
Best (people) practices
Serverless technology is still emerging. Of course, this means that the best practices, processes, patterns, and tools are also still emerging. Surfacing the concerns from your organization is one of the most effective ways to ensure that your transition to serverless goes smoothly. Various stakeholders across the enterprise are going to be able to identify a variety of risks and techniques to improve your serverless adoption. The serverless advocacy group can be a hub where risks can be addressed and best practices can be shared quickly throughout the organization.
A commonly identified concern is that serverless will give up a lot of visibility and control over your applications. For example, many teams may be relying on New Relic for application performance management, and will lose this tool in serverless applications. Instead of ignoring this need, introducing a replacement APM solution (like IOPipe) can alleviate a lot of the reluctance to embrace a serverless architecture, while simultaneously shortening the learning curve across the company.
Related concerns may be a lack of understanding of the new architecture (Stackery's architecture design canvas can help!), uncertainty around building automated release pipelines for serverless (another key advantage of Stackery), finding application testing methodologies, unfamiliar security models, and how operational responsibility for these applications should be organized. Each of these can be addressed (and the solutions may vary from company to company), but they will be solved much more quickly when there are people specifically identified and assigned with managing these risks.
As with all new processes, expect an ongoing need to learn and iterate. Over time the serverless ecosystem will evolve and patterns will emerge, but until then be prepared to embrace iteration during your serverless adoption.
By identifying people responsible for shepherding the changes and spreading awareness of the risks and techniques to address them, you'll be well positioned for a successful transition toward serverless technology. But more importantly, you'll be including the success of your people as a component measurement of the success of your change strategy.