Modernizing legacy applications — from a back-office business application to mainframe applications to many other long-running systems — is a priority in many organizations today. Doing so is often seen as a necessary bridge from analog business systems and processes to digital transformation and innovation.
That's evident in the global market scale for application modernization services, which research firm MarketsandMarkets previously predicted will approach $25 billion in 2025.
In 2019, Stefan Van Der Zijden, VP Analyst, Gartner, said: "For many organizations, legacy systems are seen as holding back the business initiatives and business processes that rely on them. When a tipping point is reached, application leaders must look to application modernization to help remove the obstacles."
Indeed, that remains as true as ever. However, in recent years, it has become increasingly apparent that application modernization projects are difficult for many companies to execute well.
Today, the technical paths to migrating and modernizing legacy applications to run in a public cloud (such as lift-and-shift versus refactoring or replatforming) are relatively well-known. But that doesn't make them simple for enterprises to navigate — especially when we focus not just on getting to the cloud, but on delivering maximum business value once there.
Moreover, the technical choices are only the beginning. Cloud services are of course important, but a successful application modernization process really depends on people. True application modernization requires a mindset modernization, and that can be the toughest part to tackle. We see this manifest in these ways:
- A lack of cloud infrastructure experience and mindset.
The general lack of available cloud skills — especially platform-specific skills with AWS, Azure, or GCP — is slowly improving but is still an issue.
In terms of the IT skills enterprises already have in-house, though, it's also a mindset and cultural issue, especially for infrastructure and operations pros. If you've spent your career managing physical infrastructure on-premises, moving critical systems to a public cloud can be a significant philosophical and technical change — especially given the massive scope of services and tools available. "This is the way we've always done things" doesn't necessarily work once you've moved an application to a hyperscale cloud, but that mindset can be very difficult to shake.
- A lack of cloud-native application development experience and mindset.
The same issue also affects developers and application development in general. Moving to a public cloud very often also represents a shift to new software development and application delivery patterns such as distributed systems, microservices architecture, and CI/CD.
Like with infrastructure, if teams are used to building and deploying monolithic applications, and have many human hours invested in systems that have generally worked well, this change can feel massive.
- A lack of cloud-friendly tools and experience.
Finally, there's often a broader lack of tooling, processes, and culture in place that typically make application modernization and moving to cloud deployments easier.
For example, organizations that have already embraced Agile or DevOps culture may find they have an advantage in terms of adapting to new patterns and paradigms that become more readily available — and more necessary in the cloud.
A lack of automation (and a corresponding reliance on manual processes in software development and operations) tooling and experience is a good example here. While automation's benefits are certainly not limited to cloud applications and infrastructure, automation technologies are certainly a big part of a successful cloud strategy.
It's one thing to identify and understand the challenges. It's another to do something about them. Consider these three tactics for addressing the above challenges in a more meaningful way.
1. Lead with empathy.
A lot of the conversation and conventional wisdom around "upskilling" and similar buzzwords seems to obscure the reality that you're working with real people — serious professionals who have been doing their jobs well for a long time.
Experienced technologists who have spent 10, 15, or 20 years doing something a certain way don't automatically get excited when told they're now going to have to do things differently. That's especially true if the applications you're rationalizing and/or modernizing are systems they've had a hand in building and maintaining from the ground up.
Change management requires a heavy dose of empathy, ideally from someone who has been in their shoes. Whether a fellow developer, sysadmin, or infrastructure engineer, they need someone who understands that it's no fun to hear that some of the applications and infrastructure you've built up is about to be torn down for the newer, faster model.
Don't just throw a training session or a certification opportunity at people. Make it a dialogue, offer genuine coaching and leadership, and give real opportunities to learn new skills as a fundamental piece of your application modernization strategy.
2. Get people excited about the new tech.
When you lead with empathy, you can build enthusiasm by — again — remembering that you're dealing with real people. IT pros love to geek out about new stuff — get them excited about the new toys, so to speak, that they'll get to play with within the new environment. That's one of the big benefits of cloud adoption — it makes some of the latest and greatest tools far more accessible. Let people get their hands dirty in a test or sandbox environment to build enthusiasm.
You can also tap into self-interest: Building new skills as a result of a cloud migration, whether you're a developer, Ops, or virtually any other IT role, increases a person's value on the job market since those skills are almost universally in demand.
3. Alleviate people's pain points.
Show people how your approach to application modernization and cloud, in general, will help solve the pain points they deal with today. For a developer, that could be the ability to ship their code faster and more frequently. For Ops, that could mean fewer on-call rotations or, generally speaking, fewer downtime incidents.
Map modernization to the issues that make the team's jobs harder than they need to be.
Finally, don't add new pain points that can be avoided. One of the biggest sources of added headaches comes from a lack of appropriate budget and organizational commitment. In this scenario, leadership says, "Get to the cloud!" and stresses the need to modernize the IT portfolio, but essentially asks the team to do so without the proper resources. That's a recipe for poor results — and continued cultural resistance.
When organizations invest appropriately and address the cultural challenges described here, the potential is virtually limitless.