This webinar from ADTMag with guest speakers Moti Rafalin, CEO of vFunction, and KellyAnn Fitzpatrick, Senior Analyst at RedMonk, reveals some critical insights with supporting survey data that can help CIOs and architects better understand, plan, prioritize, and succeed with application modernization projects.
Insight #1 – Application Modernization Must Be A Dynamic, Not Static, Imperative
Kelly’s first insight emphasized that modernizing applications is not a “one-and-done” project. It’s an ever-moving target–if you modernized a 15-year-old application in 2018, then you can expect to need further modernization initiatives to catch up to the expectations, technologies, and platforms of 2022 and beyond.
The term “Continuous Modernization” is key here–the ability to maintain fast innovation and development cycles, rapidly detect and eliminate technical debt, and avoid poor architectural decisions and coding patterns–refers to a highly valuable set of capabilities that elite software organizations have internalized.
Insight #2 – In the Cloud ≠ Cloud Native
Kelly then dug deeper why it’s not enough to simply have workloads running in the cloud. Migrating existing applications to the cloud, often seen as “lift and shift”, is a short-term tactical action that doesn’t solve the major challenges of development velocity, technical debt accumulation, and speed of innovation. Migrating to the cloud solves certain problems, like hosting, baked-in security, and cost controls, but also introduces other problems if the application is still a monolith now running in the cloud.
The adoption of containers, managed services, serverless workloads, and new paradigms of building, integrating, and deploying applications mean something more substantial is needed: actual modernization (refactoring, rewriting, rearchitecting) of logical domains, business logic, APIs and more is where strategic value can be achieved.
Insight #3 – Microservices Have Trade-offs That Are Worth It
Next up, Kelly focused on why modernizing a monolith into a microservices architecture isn’t easy–it requires a major mental shift in how development, testing, and deployment is done. The benefits of microservices have been discussed ad nauseum for many years now–like increased velocity, better flexibility, and faster development and deployment.
However, these benefits come with a new set of challenges that IT organizations didn’t have to worry about as much before: overall application complexity, API management, event-driven communication and distributed data management are just some of these examples. Despite these trade-offs, elite technology organizations have made it a priority to succeed with a microservices architecture (when it makes sense).
Insight #4 – Technology Is Great, But Have You Tried Talented People?
If the decision to modernize didn’t directly impact the development team around it, things might be simpler, Kelly shared. However, we cannot ignore the human aspect–in fact, 97% of survey respondents expressed that organizational pushback against modernizing is to be expected. Whether it’s the cost, risk, fear of change, or fear of failure, it’s often difficult to get full team support to begin a large-scale modernization project.
How does the monolithic structure of your business applications and organization influence the hiring and onboarding of new employees? Are they excited to spend their first 6 months on the job trying to understand a 15-year-old monolith with 10 million lines of code? More importantly, what does this mean for retaining valuable staff in the days of the Great Resignation?
Insight #5 – Java (and .NET) Are Still Vital
Finally, Kelly reminded us all that Java is still vital and evolving, adapting to modern cloud architectures in new and innovative ways. Newer programming languages like Scala, Kotlin, and Go may be viewed as popular for greenfield projects and indeed have been used at some of the world’s most well-known companies–Twitter, Airbnb, Google, and many others have embraced alternative languages to deal with specific challenges.
Yet, as Redmonk’s Programming Language research continues to show, the newer investments and advancements in Java combined with the fact that the majority of monolithic enterprise systems were written in languages like Java (plus .NET and C# ), make Java very relevant for everyone today. These are vital programming languages to many leaders in the finance, healthcare, automotive, and manufacturing industries. When you’re a financial services provider processing $1 billion of transactions every day, you do not have to simply turn everything off and adopt a new set of technologies. This is where application modernization and the strategic, long-term impact of refactoring and re-architecting pay off.
Next Steps
To learn more, we invite you to learn from the 2022 research report Why App Modernization Projects Fail, and check out vFunction Architectural Observability Platform, a purpose-built tool to analyze, calculate, and identify technical debt in order to prioritize your efforts and make a business case for modernization.