A rapid response to COVID-19 supply chain and market shocks: Emerge from the crisis stronger
Apr 06, 2020 • 18 min read
Apr 06, 2020 • 18 min read
A key part of digital transformation is actually changing the way you develop software. New technologies such as mobile, progressive web, cloud, big data, and machine learning create increased demand for entirely new skills. The fast pace of innovation requires new processes like Agile development, continuous delivery, DevOps, and rapid experimentation. This has led to many companies that have embarked on their digital transformation journey to recognize that they just can’t do it the old way and need to adapt to stay competitive.
At Grid Dynamics, we’ve helped guide many Fortune 500 companies through their digital transformation journey. And we believe that establishing a high-performance engineering culture is a critical part of that journey as it allows for rapid software development without sacrificing quality.
In this article, we outline how injecting a high-performance engineering culture, automation practices, and cloud resources helps companies scale their organizations and deliver engaging digital experiences for their customers.
One of our clients, a fortune 500 retailer, was aiming to be at the forefront of brick and mortar retailers going digital in order to compete directly with native technology companies. Delivering an omnichannel experience would mean needing to build an e-commerce platform from scratch. To do this however, they would first need to build up their engineering team’s capabilities. This effort required scaling their initially small team of engineers to the hundreds of developers that would be required to build out new customized features and create an online experience that could rival digital giants like Amazon.
As their engineering team grew, the processes, tools, and environments used to test and develop new features simply couldn’t keep up, hampering their upward trajectory. Recognizing the critical need to nurture innovation, the retailer looked for external help to improve the engineering team’s productivity while it scaled.
At this time, Grid Dynamics was helping the client build their omnichannel commerce platform. The client was a trailblazer for going digital as well as embracing microservices architecture. Using their own full time employees, and engineering vendors, including Grid Dynamics, they built a number of teams that each worked on a different service or component of the omnichannel platform.
The client’s engineering managers were particularly impressed with the pace and quality of Grid Dynamic’s new feature delivery. Despite working in challenging environments, our teams stood out for being able to deliver features faster, more reliably, and with little to no rework compared to other teams. The client’s top management also noticed this and asked us to analyse our engineering practices with the aim of trying to figure out why our performance stood out. Their hope was that our internal practices and expertise could help them solve their problems with innovation and engineering productivity.
Working with the client, we conducted a joint analysis where we surveyed our own practices and compared them with the client’s processes, tools, and practices. We found that Grid Dynamics’ success was due to our high-performance engineering culture and strong focus on automation and cloud-based resources.
Now let’s take a closer look at how these practices and processes directly contributed to productivity and performance gains.
Agile development - Our approach to Agile was successful because we focused on end-to-end delivery rather than just code completion. At the end of every sprint, new features were successfully tested and deployed, so they were not just “dev complete.” Delivery was faster and more reliable since we included testing and deployment in each sprint.
Product mindset - Our teams treated every project as a product. The process involved building a minimum viable product and then making small feature changes to improve performance according to pre-defined KPIs. If possible we would then A/B test those features in production and use the analysis to make additional changes.
Cross-functional teams - We designed our teams to be cross-functional. This means they were small, 100% focused on the project, and every skill that was needed to complete the project was present on the team. Additionally, every member of the team understood the role of every other team member, which helped improve task coordination and overall efficiency.
Highly skilled engineers - We, as a company, strived to hire only the top 5% of engineers who were familiar with the latest technologies and attended the best technical universities in their region. We believe that engineering talent provides exponential value and having a few senior highly skilled engineers with the right technology culture lifts the performance of an entire team.
Relying on automation - we relied heavily on end-to-end automation to ensure our software was built quickly and was error-free. This included:
Cloud resources - Having to wait for client IT departments to provision hardware can delay teams weeks or even months. We addressed this issue by gaining approval from IT to allow us to directly use cloud resources to provision our test and dev environments on demand, which significantly sped up development.
Upon completion of our joint analysis, the client asked us to help them integrate our proven tools and practices into their engineering teams to boost their productivity. Our approach involved replicating the elements that we’d identified would be the most beneficial and to scale them to the client’s entire engineering organization. This involved:
The result of our efforts to put in place a high-performance engineering culture, automation, and cloud resources enabled our client to scale its engineering team, boost productivity, and meet its digital transformation goal of building a unified commerce platform. After our collaborative efforts, it was clear that we had helped the client to completely transform not only the size of their engineering team, but also its practices and culture.
The following outlines the tangible results of our efforts:
Overall, the client’s time to market is now ten times faster and their digital platform can be leveraged to achieve exponential online revenue growth. They can also retain customers who may otherwise have had a bad digital brand experience and moved on to a competitor. These transformative results proved the value of having a strategic technology partner. We were able to bring fresh ideas and practices to the client and enable knowledge transfer through co-creation projects. Our experience with emerging technologies and highly trained staff was able to accelerate this effort and ensure that it was ultimately successful. If your organization is looking for this kind of long term Agile co-creation strategic partner drop us a line.