The benefits of serverless computing are enticing: eliminate infrastructure management, reduce operations overhead, and free developers to concentrate on writing code to build business value. Adapting to this new model requires some changes, however, especially for large enterprises. That was the experience of T-Mobile, a technology company that offers wireless services.
As T-Mobile experimented with Amazon Web Services (AWS) serverless technologies for its APIs, microservices, and time- and event-based processing, it quickly uncovered new value from optimized resources, simpler scaling, reduced patching, and timesavings—all of which enabled an even stronger focus on exploration and innovation and resulted in increased agility in responding to customer demands. As a result, the company now has a "serverless first" policy for the development of new services, with serverless technologies like AWS Lambda playing a key role in such mission-critical T-Mobile applications as the company website and the T-Mobile My Account smartphone app.
To get to this point, however, T-Mobile needed a way to enable its many development teams to adopt and use serverless computing while also complying with company-wide security, operational, deployment, and cost requirements.
"With serverless, the hope is that you can just let your developers focus on code, but the reality is that, to get that code to production, securely and at scale, there are still many non-coding tasks and topics that must be addressed," says Nicholas Criss, a senior manager at the T-Mobile Cloud Center of Excellence (CoE).
Letting the company’s teams use bespoke approaches to tick these boxes could have created problems with service sprawl, service discovery, auditability, cost overruns, and security and compliance. Criss explains: “To feel good about encouraging company-wide use of serverless computing, we needed to come up with a way to avoid these problems without throttling the creativity and agility that drew us toward serverless in the first place."
To head off these concerns, the T-Mobile Cloud CoE team created Jazz, an open-source platform for building, deploying, monitoring, and debugging cloud-native APIs, functions, and static websites with serverless architectures.
The platform, which itself runs on a serverless architecture, uses Amazon Kinesis, which can cost-effectively process streaming data at any scale; AWS CloudFormation, which uses simple text files to automate and secure the provisioning of application resources; AWS Lambda, a serverless service that runs code in response to events; and Amazon OpenSearch Service, which makes it easy to deploy, secure, operate, and scale OpenSearch and Elasticsearch for log analytics, full- text search, and application monitoring.
"Jazz essentially automates our operational readiness checklist," says Satish Malireddi, a principal cloud architect at T-Mobile. He is referring to the dozens of architecture, security, testing, automation, and integration tasks that T-Mobile requires before new applications can be put into production. "Jazz abstracts away almost all these tasks with a simple check box–based intake process and reusable, high-quality code templates with baked-in security, compliance, and other guardrails."
For T-Mobile, the most important benefits of Jazz and serverless computing on AWS derive from the substantial amount of time development teams are now saving. "Before we automated all our operational readiness steps in Jazz, getting ready to go live with a new application could take weeks due to the process of complying with our security standards and other company requirements," says Malireddi. “Using Jazz, the build and deploy steps for APIs, functions, and websites on AWS can now be accomplished at least 90 percent faster. For example, we just had a developer sit down to try Jazz for the first time, and he put three Slack bots into production in less than 24 hours."
By offering templates and direct feedback for developers inside the platform, Jazz helps T-Mobile achieve this speed while avoiding the inconsistencies and human error that can happen with bespoke architectures. "It’s hard to convince people to follow best practices when it's a manual process," says Criss. "With Jazz, we can automate and monitor those practices and provide feedback to developers right in the interface. That results in more robust, more stable applications, which in turn also help us provide even better customer experiences."
These speedy development processes enable T-Mobile to innovate faster and build greater value for customers. "Jazz and serverless computing on AWS have cut out so many time-consuming development and deployment steps," says Malireddi. "That's time we can spend innovating and iterating on the solutions customers want to see. Jazz and serverless computing on AWS are major accelerators in how quickly we can give our customers what they want."
T-Mobile is saving money with serverless computing, too—not only indirectly, by bringing new services to market faster, but also directly, by further reducing and optimizing its use of resources. "By shifting workloads to serverless scenarios, we no longer have to pay for resources we aren't using," says Criss. "With the pay-as-you-go pricing model for serverless computing on AWS, we pay only for what we actually use."
T-Mobile has found that letting developers concentrate on code leads to happier developers—and delighted customers. "With Jazz and serverless computing, all developers really need to concentrate on is that tight feedback loop of write your code, deploy, and test," says Criss. He tells a story of assigning a new developer to build an AWS Lambda function using Jazz.
"When this developer described how simple it was working with Jazz, her face was glowing, and she actually used the word 'fun.' That kind of reaction is meaningful to me and my team because we want to delight our customers, not just give them what they need. With Jazz and serverless computing on AWS, it's easier than ever for us to delight our internal and external customers."
Learn more about serverless computing and applications on AWS.