But for too many companies, the specifics of pursuing digital are hazy. What real-world business problems does the digital pursuit solve? How do people, process and technology need to come together to solve those problems? Where is the best place to start?
In our conversations with clients about their digital journeys, the same five business imperatives continuously surface: increasing the pace of getting new products in users’ hands, aligning the business and IT strategy, breaking down organizational silos, developing a world-class user experience and ensuring cost-effectiveness.
Here is our take on each of these goals and how we’ve helped companies achieve them.
Increase the Pace and Velocity of Product Development
On an everyday basis, the IT team finds itself in a reactionary mode, unable to prioritize important projects.
Recommendation: Standardize on a cloud-native application development platform and adopt modern software engineering practices such as continuous integration/continuous delivery (CI/CD) and build-measure-learn. This will eliminate impediments to velocity, such as:
Variations in cycle time.
Inconsistent feedback loops.
Lack of integration between release and test cycles.
No common code repository.
Inability to build 12-factor compliant, cloud-native apps despite having some full-stack automation and test data management.
Align the IT Strategy with the Business
Misalignment between business imperatives and IT strategy is the most common problem we see within communications, media and tech companies.
Recommendation: Adjust the organizational structure so the teams responsible for keeping the business running, innovating and reimagining the user experience don’t have to compete for resources. Some companies do this by creating a transformation office, while others embed a business owner in IT. Still others embed an IT product owner in the business organization.
Connect Organizational IT Siloes Together
At some enterprises, different departments and business units have their own IT teams that work in isolation, leading to numerous challenges.
Recommendation: Standardize on a single data architecture and cloud-native development platform for all departments. The various business functions can still maintain separate IT teams, but the teams gain synergies by sharing the same development platform, data architecture and code repositories.
Design A World-Class User Experience
For today’s workforce and marketplace, software that works isn’t enough; users also expect an efficient and elegant user experience. But internal teams often have to make do with a bare-bones interface.
Recommendation: Place the user at the center of software design. The goal is to delight the user – both through the features and the experience.
Unlike rigid monolithic applications, microservices architectures make it easier to focus on the user throughout the development process and to evolve as quickly as user needs are identified. The basic idea is to build the application from discrete microservices that connect via open application programming interfaces (APIs). If a user wants something new, IT can modify a set of microservices without touching and re-testing the others.
Drive Cost Efficiency Through Application Transformation
Many communications, media and technology companies want to develop cloud-native apps. The twin barriers are lack of a platform and scarcity of talent.
Recommendation: Start by rationalizing the application portfolio. Rank applications based on their business value, cloud-native readinessand your organization’s IT capabilities.
Your company may be seeking to accomplish one, two or all of the goals described above. Based on experiences gleaned from more than 100 client engagements, we recommend the following path forward:
Develop a strategy and execution plan to move to cloud-native applications, enabling software development at pace and velocity.
Create alignment between the IT organization and your business strategy by creating ownership constructs between the two organizations.
Focus on users, making their needs the center of every stage of the software development lifecycle.