Modernizing Apps for the Cloud to Accelerate the Digital Journey
Businesses need to make critical technological and cultural shifts to prepare for and remain agile, flexible, and competitive in the digital economy. At Dell Technologies, we are driving our own digital transformation through the “Dell Digital Way,” combining a cultural shift in how we partner across teams using an agile approach to quickly develop, design, iterate, and deliver new products and capabilities with the adoption and utilization of new technology and methodologies.
A key component of our digital transformation—as it is for many of our customers—is application modernization. I would like to share some experiences, best practices and lessons learned from our ongoing initiative driven by the Dell Digital organization.
With Change Comes Challenge
Realizing our digital future as Dell Technologies means innovating with software—delivering new digital products and transforming customer experiences. But the largest tech merger in the industry—between Dell and EMC—had created a mountain of legacy applications, leading to disconnected online and offline experiences across the entire portfolio of Dell Technologies product lines. We had regional architectures and implementation to support our business; lengthy releases; and inefficient IT processes.
Our customers expect a timely, relevant, highly personalized, consistent, seamless experience across all digital channels. To deliver on their expectations, we needed a platform that enables innovation and brings commerce to any imaginable and not-yet-imagined Internet touchpoints…can keep up with changing customer expectations and buying behaviors…and can power the next wave of business models. We needed a platform that scales for today and for the future.
Preparing for a Future-ready Commerce Platform
Our primary objective was twofold: to evolve to a modern, global, cloud-based, omni-channel commerce platform that enables Dell to provide customers, wherever they are, with the best experiences possible to discover and purchase Dell technology—while maintaining a continuous focus on accelerated speed to market.
We knew that transforming our e-commerce platform would encompass change across people, process, and technology. But what we didn’t know was with which to start: people, process, or technology? How long would this transformation take and how would it impact our business and our customers while in progress? What was the extent of the human and financial investment that would be required—and would we have adequate resources? How would we prioritize our tasks, our applications? And of course, what skills would be required, and what processes and tools would we utilize?
Ultimately, as reflected in the best practices below, we focused our approach on six key pillars to delivering better products, faster: Pivotal Labs Methodology, DevOps, continuous delivery, microservices, containers, and cloud platform (Pivotal Cloud Foundry).
Best Practices that Can Accelerate Your Transformation
- Create a dedicated workforce. Running a business takes time and resources—time and resources that you can’t then fully devote to work on your application transformation initiative. We determined that trying to do both, simultaneously, within one organization would impact our ability to make adequate progress, so we created a task force dedicated to our future-state commerce platform transformation efforts.This group was able to start our application modernization effort from scratch, making decisions about what skills were needed, what process and platform architecture changes were to be made, and how teams would execute on their investment.
- Focus on products over projects. Define a handful of product lines that align to the organization’s most critical business capabilities. We established 20 product-centric balanced teams globally embracing an “API as a product” mindset unifying product manager, developer and designer within each team. The teams embraced DevOps to shorten the software development cycle and worked directly with our IT and business stakeholders focusing on customer value that led to higher revenue. We also structured our teams and API’s to be tightly aligned and loosely coupled.
- Build microservices. Microservices enable you to create autonomous teams because they create autonomy in code. We tore down our monolithic application platform with massive, complex internal architecture and created smaller, independently scalable applications and microservices. This new architecture gave teams the ability to rapidly release new versions and perform A/B testing across versions.
- Leverage Platform as a Service (PaaS). At Dell Digital, we use a cloud-native approach that allows us to build and run applications taking advantage of the cloud computing model. This approach offers agility, resilience, scalability, and portability across clouds. We leveraged Pivotal Cloud Foundry to reduce operational burden and manual effort, improve developer productivity, and increase release confidence. Teams are now able to experiment with new versions of an application and safely roll back to a prior stable release if a problem arises.
A Platform – or Customer – first Approach?
As I previously mentioned, our objective was to deliver new, innovative solutions and great customer experience with faster time to market. The challenge was deciding whether to take a platform-first or customer-first approach to better achieve our goal. We decided to do both. To build confidence in the new transformation, we decided to modernize the platform by making incremental changes and continue to deliver customer benefits throughout the journey.
You’re not going to get anywhere if you have a big vision but you’re not solving the customer’s problem. If you’re not solving a problem, you’re never going to be given the ability to implement that grand vision.
– Jeff Lawson, CEO, Twilio
Keep Your Eye on Building a Better Platform
Another critical decision was whether to focus on scale and speed at the possible expense of quality. When in pressure mode to get things done, it’s easy to take shortcuts and end up sacrificing quality to deliver on more features. One of the important learnings we’ve gained from our transformational initiative is to focus on customer problems and on building a better product with higher quality; better performance—not necessarily “bigger” or with more bells and whistles. Your satisfied customers will ultimately demand that you go bigger.
Keeping the Momentum: Next Steps
We are now ready to scale beyond our 20 initial product-focused teams and plan to support 45+ teams in 2019, under single unified leadership, with a singular purpose: to accelerate our transformation efforts. We still have questions to answer: How do we scale? With so many applications under transformation, do we refashion/modernize existing applications or do we build new ones from scratch? How do we get applications and teams at different stages of transformation to coexist? How do we fund and staff product teams going forward? How do we accelerate our efforts?