Jakob Knutsson is responsible for cloud adoption at H&M. As a leading expert on Azure Cloud, he gives his take on how to manage a situation where IT operations must meet the demands of businesses.

Lauri (00:04):

Welcome to the DevOps sauna. My name is Lauri, and I am the chief marketing officer of Eficode. Not too long ago we held a hugely popular two day DevOps 2020 event. We had awesome speakers from around the world telling stories about DevOps tools and culture for over a thousand people online. Since then, we have made these recordings available at the Eficode website and to the popularity of these speeches we have now made them also available in our podcast. You can find the links to the video recording and to the materials referred in the speeches in the show notes. We are also keen to feature topics that you find interesting in the area of DevOps in this podcast. Do let us hear about you in our Twitter, Facebook or LinkedIn pages.

Lauri (00:54):

Today, we have an exciting speech ahead of us from Jakob Knutsson from H&M. Jakob is a Lead Cloud Architect at H&M, and has extensive background in Microsoft technology and is leading expert in Azure Cloud. He has over 19 years of experience in implementation and transformation projects as a consultant, and now works at H&M as a Lead Cloud Architect and is responsible for Cloud Adoption.

Jakob (01:21):

So yeah, my name is Jakob Knutsson. I'm a Lead Cloud Architect at H&M., and I'm going to talk about how we do cloud transformation and at scale. H&M started in 1947 in a small Swedish town called Västerås, and we started our first online shop in 1998. Right now we are 177,000 employees. And around 4,000 of those are working within IT, and 800 are developers. Something that we're really proud of is that 73% of employees within position of responsibility are women, o that's really cool. You know retail, it's rapidly changing and we see a lot of change. Customer behavior, changed expectations, and of course, the competitive landscape changes all the time . You all know that software eats the world. It eats the traditional businesses, it eats the value chain, and we need to adapt.

Jakob (02:37):

In driving our digital business model, we've come up with a number of key tech principles. We want to be customer centric, close to the customer and open. Start working away from legacy integration and use APIs all the way and be agile. Be able release on demand to sort of live up to the expectations of our customers. And of course, intelligent and data enabled. We have a lot of information and data flowing through our platforms, and we want to utilize that to take data-driven decisions, and of course, global. Currently having data centers solely in Stockholm, it's hard to have that global reach and global or customer centric experience around the world. So why cloud, you might ask. Well, for us, it's a natural enabler. We see that cloud will give us a faster pace, a better global scale, of course, more value for money built, and focus on those value added services.

Jakob (03:51):

We can see that the other cloud providers have far superior and larger R&D departments than we could ever have at H&M so leverage those value added services that are at the fingertips of our developers. We've been challenged with the traditional ways of doing IT, having divisions it's being in silos, and getting really slow. A large focus on keeping our lights on, but we want to change that to focus on our core. What really makes us unique? What are our differentiators and work and spend our time on that. And with that said, we formed the cloud strategy, or that says that all H&M Group should run entirely in the cloud, supported by an organization that can build effective and secure cloud solutions using DevOps practices. And it really helps to have a clear strategy.

Jakob (04:57):

This is pretty bold, you might say. Our approach in driving this well, I'm going to talk a little bit practices, how we work with knowledge sharing within our big organization and how we try to run everything as code. In the beginning, our cloud journey, it was like shadow IT. There were initiatives around the organization, but no sort of central governance. So we thought that we'd start a project and start a central enablement team or center of excellence, whichever you want to call it and gather the info and try to start enabling the entire organization. The first thing that project did was to establish a line organization that could take over when the project was finished, and we call that central enablement team Cloud Office. We see that having that central team and start building on central assets really make for tech enablement throughout the org.

Jakob (06:08):

The mission of our central enablement team is of course, to enable and monitor the execution or our cloud strategy, support and drive the cloud adoption within the organization, and most importantly, drive best in class developer experience and improve our engineering efficiency. One thing that we can improve the developer experience and engineering efficiency, is to develop self service capabilities that get our teams going right from the start so they can start with creating value. Just a brief look at our current setup within the team. We have our cloud adoption team that works hands-on with advisory with our development and application and product teams, getting them going, looking at current architecture, how to break away monoliths into more decoupled architecture, getting a target architecture within cloud for those applications. Then we have a platform DevOps team that stands on two legs.

Jakob (07:22):

One leg focusing on our platform and the governance and guard rails, and the other leg they stand on is to work on that developer experience and engineering efficiency so creating custom tasks so that not every team need to reinvent the wheel. We create custom tasks, which we call pipelets for things like getting a DNS name, enabling authentication on your app, and requesting certificate, and those types of stuff. Then we have a cloud operations team that are operating our central services within the platform. We have a hub and spoke architecture, connecting our data centers globally. Right now we're living in a hybrid world. So they're operating those central services. We really tried to focus in having as few central services as possible and decentralized provisioning our application. So one thing that we pushed for from the start is that our development teams are also responsible for that cloud infrastructure that they provision.

Jakob (08:36):

To guide us into evolving our platform, to cater for the whole of H&M group we set up a few design principles, sort of a North star, something to take aim on something that we might not ever reach, but as long as we're working in that direction, we know that we are focusing on the right things. One thing is that we try to be cloud native. We prefer the cloud-native capabilities of the platform over third party software, and being application centric. Meaning that resources belonging to an application should live as close to that application as possible, and really give our autonomous team that end to end responsibility, and being able to take care of their whole application development life cycle and resources, and subscription or infrastructure democratization, giving them the services they need at their fingers' tip when they need it. We need to be archetype neutral, meaning we'd still have a lot of legacy workloads and our cloud platform needs to cater for that as well.

Jakob (10:01):

We try to run our platform as code. So every change we do to our platform is checked into a repo, deployed with pipelines so we can get that traceability and reusability, and also start evangelizing that everything as code to our product teams. We govern the platform by policies and we see that with central governance and then the centralized provisioning from our product and application teams, we get the best out our cloud platform. As I was saying, we try to strive for a 100% self-service. Our rest of the organization, they shouldn't be dependent on us as a central enablement team. We have self-service forms for setting up new developer environments, for creating new Azure subscriptions. We have reusable assets in a shared assets repo with target architecture, so in scripts and reference implementations, so they can start with that and reuse and create something to build upon.

Jakob (11:19):

We also, as I mentioned, create those custom tasks that you can drag and drop into your pipeline for everything need to reuse. For DNS certificates authentication working with your application and identities. With our organization being so big, really need to get the word out there, so we started doing a lot of internal events, forums, and hack days. Start working with both inspirational, then knowledge sharing sessions, and try to build a community. We created a developer portal where we can sort out, share documentation, guidelines and, how tos, patterns practices and also collect all our IT strategies in one place. To really cater for being customer centric start maximizing value out, we're actually reorganizing into a full product organization with the base of our H&M values and with the building blocks of DevOps, of agile ways of working. Having a decoupled architecture and a stable cloud platform, we're actually merging our IT with business development, to creating a new function called BusinessTech, where we focus on customer and business value together to build successful tech products.

Jakob (12:58):

We want to set this up so that it should be easy for our product teams and harder for our manager. We want to have our teams have that end to end responsibility of their product. We want them to be multi competent, of course, fully autonomous, to be able to take the decisions that are best for their product at the pace and time that they want, and of course, leverage DevOps practices. We want our teams to be passionate about customer and business value and empower them with the autonomy so that they can feel that they can start creating the best product that they can achieve, and also shorten our time to market and get ideas and value out there faster. If we'll look at the traditional ways of working versus the more modern ones, we want our product team to share responsibility. With them being moved, the competent, they can rotate and share the responsibility of their entire product during the product life cycle.

Jakob (14:13):

We want to remove the old blockers with the handovers and approvals, to have that constant flow work and value. We want to build a cultural of automation and paying off technical debt, and we don't want to have manual activities. We should measure more on value, focus less on reliability and feature delivery that's built into that whole SRE agenda. We want to be able to release on demand. Have a friction-free continuous deployment delivery of our business value, focus on that key aspect for having productive teams, the psychological safety being able to fail, but to learn from that. To sum things up, having a clear strategy helps a lot. You can transform a couple of projects, but without the top managements' support, you can't change the whole organization. I want to encourage you that that haven't really started your cloud journey yet.

Jakob (15:28):

Don't overthink the operating model, just get the team up and going and start removing the blockers that are right in front of you. Behind every blocker there's another blocker, but during time you will get more and more effective. Just get the team up and running and start going. And for us, we're not a bank, we're a retailer. We want to allow maximum freedom to our product teams with just enough of governance, and leverage small batch thinking, build them with peace and then scale. You don't have to think about everything at the start. I would encourage you to keep those sort of key functions within your organization, into your enablement team. Keep security network identities, asset management, all those functions. Have representatives in your central team, that will help you a lot. Have a close partnership with your cloud provider and their support organizations. Test fail, learn, constantly revisit your solution.

Jakob (16:48):

The cloud changes constantly, and it's in constant development. Building a new product organization we need also to scale our enablement. We've had the cloud team up and running for almost 2 years. Now we're also building seems to support our product teams with API as an integration with DevOps and testing and security and risk because with the end to end responsibility of a product, there's a lot of things that you as a product team need to think of. So now we're creating enablement teams to actually being able to help those teams. Because from the start, it's going to be hard to have that expert competence within all these areas in your product team. This is what we see as a great tech enabler to support the rest of the, our big organization. We are all in on business tech, and your organization must support your mission.

Jakob (17:57):

You need to have that top management buy-in. Just grassroots will only work for a couple of projects within your org. Establishing center for enablement have been a real success in accelerating our journey. One of the blockers or things that we started working on was to provide a faster developer environment creation. In our own prem landscape sometime back, it could take two weeks to onboard a new development team to start a new initiative, creating value. Now we can do that under 10 minutes. Start using self-service capabilities, create a community that also can start supporting and answer questions around you. Having a central place where you can reach technical documentation and how tos, and in the beginning, help with the onboarding of your teams and never stop improving. Yeah, we see a future with us, infinite ambition, and we want to continuously surprise and delight our customers by releasing the power of people, data and tech to accelerate our business.

Jakob (19:17):

It has never been more important than we've seen under the last couple of weeks with the COVID-19. Want to end the presentation with a word from Erling Persson the founder of a H&M, "The secret of our success, there is no secret. The industry is so dynamic that it's absolutely necessary to constantly renew yourself and to have a flexible mindset." And I think this are words that we could lean on at any time. It's super relevant even to this day. I want to say thank you from my side, from my presentation. And you can reach out to me on LinkedIn or on Twitter and connect with me. I'm glad I could be here at the conference and present for you guys. I will listen into the rest of the conference and hopefully I will learn a lot.

Lauri (20:18):

Now that was a fabulous pitch, wasn't it? Let me tell you a little bit about the speech we have coming up next week. Next time around we are joined by Guy Herbert from Atlassian. Guy is a risk futurist and will lead participants through the Agile and DevOps development processes, and the interactions with compliance during that process, and how they can use technology and process to improve their organization's development speed, as well as hitting their compliance objectives. Until then, renew yourself, and have a flexible mindset.