Mastering Multi-Cloud with PwC’s Erol Kavas

Erol Kavas

Director at PwC Canada

Never miss an episode

Spotify
itunes
google
youtube

As a multi-cloud expert with 100+ certifications to his name, the author of the book “Mastering Terraform on AWS,” and a Director at PwC, Erol Kavas has no shortage of insight to offer when it comes to the state of the cloud ecosystem.

In this week’s episode of Big Ideas in App Architecture, Erol and I discuss:

  • Implementing cloud infrastructure and migrating legacy apps to the cloud
  • What enterprises should consider before moving to multi-cloud
  • Why Erol fell in love with Terraform

Erol Kavas:

When you say migration, everyone thinks, okay, we move the servers. When you move the servers with trucks, it doesn’t work. You need to think about what is the data residencies, security controls, and how our communication from on-prem or third party services, because dependencies become a norm now. Every developer is open to use some open source package or third party service to make their lives easier, but how is the governance on top of that? How do you save your data or you have clients that has some mandatory requirements to continue such as GDPR or lots of health regulations for Canada, we have at Canada Data Residency rules. We need to plan everything upfront to have this successful program management. That’s the fact.

David Joy:

What is up everyone and thanks for tuning in. In today’s episode of the Big Ideas in App Architecture podcast, we speak to Erol Kavas, who is a director at PwC and an AWS ambassador with seasoned experience across the top three cloud providers. Erol and I talk about cloud automation and the amazing abilities it gives to users at enterprises to build applications for scale. He shares some really profound ideas on multicloud and the mistakes that enterprises are making today when they initiate cloud migrations. So pump up that volume and get ready for an intriguing conversation with Erol Kavas. All right. Welcome to the podcast today, Erol. How are you doing?

Erol Kavas:

I’m good. I’m good. How about you?

David Joy:

It’s been a crazy weekend for me. Lots of stuff going on and then excited to come talk to you on a Monday because I know I’m going to meet you physically when we are at AWS three event next week, so excited to do that as well.

Erol Kavas:

Yes, yes. I’m also excited, try to line up all the business before we are jumping into Vegas and get to know people and meet after the pandemic. This will be my first AWS three met after the pandemic.

David Joy:

I have heard that for this one, apparently there’ll be like 60 to 65,000 people.

Erol Kavas:

Yes, yes. It’ll be 65,000. Yesterday I was chatting with a friend from AWS. They said it’s amazing. Lots of people. This will be, I think the one of the biggest tech events, especially based on cloud and DevOps. Yeah.

David Joy:

I think Amazon has done a great job of also setting up this event right after US Thanksgiving because pretty much everybody is with their families during reinvent and then right after reinvent they get to get out and go do some business and learn about all the new things that are happening within AWS and across all these different companies that are projecting all the activities on the expo floor and things like. So as we kick it off, why don’t you explain or introduce yourself to the people a little bit more because I know you as Erol Kavas, you’re also are right now the director at PwC, also an AWS ambassador, which is also an interesting thing for us to dive into, but let the people know a little bit more about what you do and expand on that.

Erol Kavas:

Sure. As you mentioned, I’m a director in PwC Canada and I am AWS Prime as well leading the AWS initiatives for PwC and that’s the reason I’m AWS ambassador because of the publications and certifications and embracing how we can expedite our learning in cloud and DevOps. That role has got lots of responsibilities at the same time, but I’m trying to show our clients and also our team how we can do things faster automated with cloud native tools from AWS I’m also certified in other cloud providers as well, but now my prime is AWS. I’m focusing on that and probably you are going to ask me, which cloud provider do you select? I have a lots of different opinions for every cloud provider, but it’s a really amazing role. PwC give me opportunity to work with so many different enterprises from US, from Canada and also different parts of the world as well.

David Joy:

It’s always great meeting people who talk the same language. I love talking about cloud technology, I love talking about Terraform and when we were diving in I got to know that these are things that you’re passionate about. So before we talk about what you do now and a little bit more, tell us a little bit more about how or what motivated you to get into tech. How did a young Erol decide that, hey, this is what I wanted to do and now that you’re an AWS ambassador, how does that all come together? Explain that.

Erol Kavas:

Sure, sure. Actually I was into tech and especially computers since age of 10 or 12. My father was generous enough to bring a computer to home in eighties. I was that lucky boy and even though I was grown up in Turkey and there is a university entry exams and you need to do some questions and different types of subjects, sometimes some subjects you don’t like but you need to do to get a computer science or computer engineering degree. I fast forward my life and make a decision to get a university in economics, but I was always into tech and I find an exit strategy. I joined a internet service provider as a translator, but the week number three, I become a developer because I know how to develop. I was a [inaudible 00:05:49] developer at that time. By the time changes, I try to follow the market condition.

I try to invest, I buy books from Amazon when Amazon just started or when some of my friends are visiting US, they will bring me some computer science books or programming books. I learned [inaudible 00:06:08] just from one single book and I even improve my English by that computer books and just spend all my weekends or all my summer holidays with just try to write that codes and make them work in a laptop that I saved and work as a shop assistant in my father’s place. That brings lots of opportunities and I was kind of a early catcher for that era and I worked as a developer system admin. I become an IT director. Around eight years ago I decided to move to Canada and started my cloud and DevOps journey.

David Joy:

So today, if I ask you what are the three technologies, the four technologies that you’re really passionate about, how would you classify that?

Erol Kavas:

Most of the technologies that I can mention is all automation first, infrastructure as code, any type, any flavor, but I have a choice terraform that I can use my skills in multiple cloud providers. Even ordering Dominoes pizza, I love that example. Always I try to use it and I have my personal APIs that have providers as well. Then CI CD tools. I love CI CD tools. I was in a COVID GitHub people today we were talking about their GitHub universe changes and how AI is integrated, but at the same time I love the other ones as well. Not just, I don’t want to be biased about just one tool, one cloud, one technology, try to cover all the sector or all the tools there and then probably any new cloud services even though maybe I don’t have a use case to use it for as of now, but maybe one of my clients need it. I try to do POC on my own. I have a lab environment. Even in PwC, we have a really good lab structure.

I have always access to three different cloud providers to test and do the stuff. Even for AWS Bedrock, I was an early adopter. I try and train and tried many things there. It was amazing automation and infrastructure.

David Joy:

When we were catching up last time, I was talking to you about we have these phases, these eras in tech, right? There was this early phase where we were into VMs and the VMs now became containers and now we have orchestration happening and things like that. Right? So a lot of things have changed in tech over the last decade and we have databases. All these things have changed as well. So what have you seen is the most significant change that has been very impactful over the last decade?

Erol Kavas:

It’s really awkward. I’ve been coming from a data center world how I first used VMware for virtualization and hyper. We then [inaudible 00:08:57]. I worked in hosting companies before that I have been involved. I was thinking that okay, this is the best thing that I’ve ever seen. I can divide the machine and use it for multiple purposes and generate a revenue stream for them. Then cloud invented. We see we can have a UI and create machines. That was amazing without any codes, without writing some batch scripts. Then Docker became a norm. Not long ago, eight years ago, I was working in a small cloud shop in Toronto and when I was discussing the Docker at that time and testing doing POC in my local system with my boss, he said, “No, this is not going to work. VMs are the best.” That was a discussion and now we are going back and laughing each other what we have done.

Then Kubernetes then functions. Everything is evolving, but that is helping all developers, system admins life easier, but we need to be more efficient on top of that. Now AI is in our door. We need to leverage that to bring more services, more efficient services.

David Joy:

Well, that’s brilliant because I have also noticed the fact that in my opinion for a lot of people there has been a big change to how we develop applications, but we had technologies like all of these, like JavaScript came. We started developing with Python Go and you saw plethora of people with the startup culture creating a lot of applications and what systematically also happened parallel to that is the speed at which cloud kind of grew, right? AWS came at the right moment. There was somebody who came with a brilliant idea that, “Hey, we have all of this free infrastructure, we should start renting it out to different people,” and that turned into the cloud and I think it’s been fascinating as you were saying as to there is this availability of technology like 20 years ago you would have to buy Oracle or get your own Oracle license and do things and it was so difficult, but now it’s so accessible.

In your experience in the last decade, have you got into any projects or migrations where these technologies were places where companies wanted to go to and you felt and you recommended like, “Hey, this is what we need to do and help migrate people off from old technologies?”

Erol Kavas:

Yeah. Actually in the last year in PwC, I’ve been heavily involved in migration projects and these companies, mostly I’m working with technology and finance industry. There are lots of outdated stacks, needs to go to cloud, they’re okay to go to cloud, but the applications are not ready and it’s a long process, but everyone is taking action to that norm slowly, slowly migrating everything into the cloud. Then AI is there and AI is also another catalyst for this to accelerate that movement, but I’ve seen so many old legacy applications are waiting their role waiting their queue to go into the cloud. That’s a norm. I’m not expecting anyone to go to at that old data center mode. I have a very funny story. When I was working in Turkey, I was working in a broadcasting company and there was an election campaign and in the election night we would like to display the results from online and from TVs and there’s a news agency providing you the results every second, even every millisecond with a satellite system that you need to calculate and display into website.

That news agency has a website as well, but it was literally down for at the first couple of minutes. I was working on a system to kind of provide three million different visitors can support and see all the results and everyone is playing games, refresh, refresh, what are the differences? Who won? And I just made it happen with Pentium four two gigabyte REM two machines with using some cache systems that I work months on it like [inaudible 00:13:09], not even Redis. Redis is very fancy now and it took me like a year to build a system and get the knowledge, but now we have very easy tools.

I can leverage that, this. And I have had one server at that time and I asked my procurement to buy a server. We give an order like 16 weeks before to get the server on time. Now we just have a server, we just use it five minutes, tear it down, we pay as we go or we get amazing discount, amazing systems. Two years ago I was helping a San Francisco startup. They were literally running thousands of functions and paying $5,000 but generating millions of dollars of revenue. That was the ROI we have, but in the old days we invest thousands of dollars with single server was 10K at that time, even upgrading disks were ridiculous amount of monies but now it’s easy to adopt but we need to do better to provide better services.

David Joy:

Great stories. And I think if there is an era to be kind of doing tech in, I think this probably is an extremely interesting run now especially with what you were saying AI coming into the picture. So tell me about it. Maybe we are skipping ahead on some of our thoughts, but how are you leveraging AI for some of the things that you’re working on?

Erol Kavas:

I’m doing lots of publications. I love [inaudible 00:14:41]. I have a special instance to generate images and also especially for infrastructure as code size. We need to get some idea from AI also build the foundations. I have a small team that I train, I coach them. I’m mentoring most of them. We have a side project to develop something that we can easily get consultation. Are we writing the good code and we try to get all the best practices into that large language model, train that and provide something meaningful and at the same time Terraform is not the only one. There is an open [inaudible 00:15:17] foundation now movement and there are also third party other tools that Microsoft bicep or arm templates. I’m expecting more to come because of the requirements and different type of services, especially in the serverless era. I’m expecting another tool that can help us to do infrastructure as code.

That’s the reason we need to train and build the best practices that we can implement and I’m expecting to removing the burden of tedious tasks from the developers and infrastructure people and we need to leverage that because when I have some of our clients to migrate their cloud providers or move to cloud, the biggest problem is I always recommend that we need to do automation, we need to do infrastructure as codes, we need to do governance. Everyone is suffering that we don’t have the skills what we are going to do. At least there can be a guidance that they can go and learn and train. Knowledge is not tough to learn, just you need to commit some time, get your hands dirty and I’m also admiring the Microsoft Azure applied skills that they’re providing to free labs that people can lose the fear of cloud, go get their hands dirty, learn a bit more. We should provide something to everyone to get benefit of cloud.

David Joy:

Every individual who has worked in the space also has their own native experience and knowledge that they have gained that is not available in documentation. What large language models do great is they have learned bunch of code, they have learned and understood bunch of language and they’re able to repeat that back if you ask a question or a prompt, right? And then what you are talking about is that taking that to the next level where you’re bringing in your own training data on what is the best practices and things like that. Putting that together with large language models to kind of get improved result. Is that what you were kind of hinting on is probably like… Okay, got it. So it sort of sounds like a rag system.

Erol Kavas:

Yes. Actually there’s one point, I have experienced this today. One of my friends is trying to show me a telephone code he’s trying and I noticed that he’s just going to apply it. I told him, “Let’s plan it, see the result then.” That’s a foundational thing, but sometimes you are so reluctant and go forward. AI can prevent you to make that mistake. Preventive maintenance is a matter that AI can help us, but at the same time those kinds of human errors that sometimes people are not following. For example, I’m always looking for a solution for this to verify if our backups are there, maybe an AI tool can to do this tedious task because I’ve seen many companies at the first couple of months they have a verification status and they said, “No, it’s cloud.” I am not expecting it’ll be breaking, but when it is needed, some backup is broken and they’re not aware of it.

David Joy:

What you said was so profound, right? Sometimes when you’re writing Terraform code and I write… I’ve written my bunch of Terraform code and because I love the ability to just have [inaudible 00:18:35] code and sometimes when I’m so confident I have the tendency just to terraform apply. I wouldn’t even do Terraform plan just to see how everything is looking, but what you’re saying is we need some sort of a verification where when you through Terraform plan, the AI should detect what you’re trying to build and say, “Okay, here’s the thing man, you need to change these things.” This looks like a better way to kind of set everything up maybe your VPC, so that’s the context in which maybe AI can be used. That’s a great idea actually.

Erol Kavas:

And also the plan is just checking for nothing. It’s not communicating in the cloud provider. Maybe it can remind us you don’t have enough permissions to provision [inaudible 00:19:15]. Are you sure this will going to work? Otherwise, that’s a back and forth and people lose their attention to the problems. Sometimes people are not reading the result they’re getting. Obviously, it says that you don’t have permissions, but how to interpret that more human readable.

David Joy:

How many times has this happened with you? I mean I’ll tell this my experience. I write Terraform, I would do apply and it goes on for like 15 minutes. Everything looks great and then I realized that I did not give enough IP addresses. Then I’m like, oh no, I have to go back, rebuild the environment from that point on and fix those things. So it’d be great if AI can recommend and has awareness of your environment as well as your build. That’s a great idea. I also wanted to understand you have expertise in GCP, Azure, AWS. Obviously you’re the AWS ambassador, and this might be very opinionated of course you don’t have to give exactly if you don’t want to, but what’s your favorite cloud platform right now and why would you say that is the best platform right now?

Erol Kavas:

Yeah, first of all, I always get this question because I am also a Microsoft certified trainer Canada lead. I get that question and even both sides is making fun of me. Which one is the best? Every cloud provider has a use case. Even the ones that we don’t name like Oracle Cloud, IPM cloud. I love some tools from every provider. Let me give you an example. AWS S3, that’s amazing. I like it. I use it for everything even I put all my personal photos and everything there. Microsoft, that is an enterprise view of everything. You can have a full stack, you can have your enterprise ready applications, data products, but Google sites, there are tons of amazing data tools plus networking. Global networking is incredible. Helps you to architect many, many better solutions that is lacked from the other cloud providers or if I go to Oracle Cloud Exodata, that’s amazing database.

No one can compete with them. Every cloud provider has have a use case and I’m seeing from the enterprises, most of the enterprises in Canada and US start to adopt second and third cloud providers because they’re not replaceable. They’re not mimicking each other. Azure has got storage account, Google has got cloud storage but they have different use cases and you are using regarding that and the unique differences helps us to select which one is the best and also everyone wants not to be vendor locked in. That’s the fact. You don’t want to be locked in into a single specific resource that you need to continue your life forever with that provider.

David Joy:

So you bring up us up to a really good follow up on that is that when you come in front of folks asking for, “Hey, this is the problem we are trying to solve and we need to move to the cloud,” how do you go about recommending to them which applications or which services make sense and how does that process go? Does the idea of cost come in that or also there is a situation where they’ll say, “Well, we have folks who understand AWS, so that’s what we are leaning towards,” so how do you go about that? Kind of unwrap that for us a little bit.

Erol Kavas:

Yeah, there are lots of facades on that. Sometimes especially in the end of the second half or third half of the 2023, the cost becomes a very much importance. Everyone is negotiating. finops is booming because of the financial environment now, but at the same time I always try to look at first are the applications are suitable for cloud and which cloud? Then the skillset. If they have interchangeable skills, the use some specific cloud probably they need to go for it. Not every skill is interchangeable. At the same time, I can see a resistance from the people. I’m an AWS shop, I do AWS, I don’t want to go to Azure or Google cloud. That happens a lot, but I see some teams they want to learn. They’re hungry to learn, they’re open, they’re thirsty for that and that’s good to manage and also the future plans. Are they going to do something global wide or is there any compulsory regulation they’re expecting?

For example, in Canada now it is almost solved. We have a second region for AWS. If you want DR in the same cloud provider, you cannot go with AWS directly. You can just go multi [inaudible 00:24:02]. We had one Montreal region. That’s the reason Microsoft boomed a bit more and Google also invested for the second region, but now the third region will be coming in the Microsoft probably in the following years as well. There are so many factors and also not just the development or infrastructure team. We need to consider if the DBAs are okay to use some cloud native databases. That’s the biggest problem that I’ve seen because if you have conventional DBAs wants to use the same type of resources, they’re going Oracle cloud and the application is in Microsoft or AWS and Microsoft is making a huge move by enabling Oracle cloud into their [inaudible 00:24:45] to migrate.

That’s a big move because there are some specific things that you cannot migrate or update your application, especially legacy ones. They don’t want to invest on it but they want to go to cloud because data centers are not efficient anymore, costing a lot more than that. In the last four or five years I have seen three, four out of data center migration, not the on-prem locations offices, but everyone is trying to leave the data centers.

David Joy:

There’s a joke that internally that comes to us is that a DBA full form is not a database administer but more like do not buy anything because there is always this tendency when I’ve also had situations where DBAs are very cautious about disrupting what is already available, right? Because the migration strategy, all these things kind of come into place but with AWS, AWS has something called, as you would know for databases like database migration services and they have a very well thought plan and [inaudible 00:25:51] labs also works through DMS. So it’s pretty interesting the way not only have the cloud providers thought out all the different needs of the users but they have also considered the value that each of these services would be bringing.

Erol Kavas:

One other thing is as a cloud architect we would like to always use cloud native services trying to enforce them to use more RDS more [inaudible 00:26:16]. If we have a chance, we try our best to encourage them to show them this is the way we can cut down the cost and we use the cost principle there. If you want multi-region, really high availability, you need to go on more native tools, built in backups, snapshots and show them that’s a workshop ideation period. We need to hold their hands, show them the best way because application teams are always open for challenges but DBAs, they earn from the stability not for the features because they need to run a system. Those are mostly operational side of people and I understand them if I were them, it’s really horrifying to learn a need tool or migrate that much of data.

Today I was in a meeting with a huge DBA team and they were literally migrating 8 billion record for one environment that they have seven to go and there are amazing tools now from every cloud provider to help them. There are some commercial products that providers are lending you in your migration period. They’re amazing like live four, five machines at the same time. live migration tools, third party. There are tools but that’s a planning, that’s a lot of work and as the infrastructure people, we have Terraform, we have modules, open source and we can write the migration means couple of months for us, but the data people or application people, it takes a longer period. The change management process is very important but it is what it is. This will going to happen. We are all moved to cloud.

David Joy:

When you were saying it’s a very profound point of view is that moving infrastructure and network and the whole identity of what you have before and after is way more easier. At least you can visualize that pattern much more easily, right? Because you have Terraform, okay this is [inaudible 00:28:16] maps but nobody thinks like what you just said. Application migration and database migration are way more challenging sometimes because you are dealing with a different problem. Have you had situations where you have been working in FinTech for a while, right? Can you expand for us a little bit on any use case where you saw this happen?

Erol Kavas:

Not just in FinTech but just before the pandemic, I was working in a Microsoft partner in Toronto and there was a big entertainment company in Canada and they want to go to cloud because they cannot have… They want to have a proper cloud and DevOps structure. They were not planning to go production to cloud but at least for Dev UAT staging, they need to have some environments and they don’t want to procure millions dollars of infrastructure because they were not making money. The market was tight and they want to also at the same time sell their company and they try to grow and I helped them to migrate some of the applications to Microsoft Cloud at that time and we noticed that the application was really legacy.

They were using some tools never supported in cloud but because of our team must have and also lots of developer background people, we helped them to rewrite a couple of protocols, spend maybe more two, three weeks with them and it was a successful pace and the pandemic started and where there was a lockdown and we noticed that that company survived because they have a dev environment can scale into the cloud and a couple of months later they moved their production that was not in their two years plan to continue work and to save some cost shutdown their data centers at that time.

Now it’s big again, everything is open because they were so much affected because it was an entertainment industry. Shutdown was really affected them. That’s a lot for the FS sectors. I recently worked in a project that mostly cost-based but a legacy application moved to the cloud and it’s like a grid structure, lots of compute power and they noticed a huge spike in the cost but they couldn’t find why the cost was going really bad and they noticed that it was most of the foundations not from the legacy application. They just don’t know how to adjust the applications or running cloud. We did some tweaks, lots of automation scripts to help them and we learned that the company who built that application is planning to have something fully cloud native. In the following years the company has really saved probably a couple of million dollars for after that changes, but you need to know your application very well before you go cloud.

I handled so many successful migrations because I’d like to learn more of the application sometimes in the discovery sessions. Most of the developers hate me at the first few weeks. I ask so much questions about the application, why you use this. There’s a benefit to use this and when I leave them I always give them a laundry list. You need to… This application needs to have this tool or don’t put files into this file share. There’s a native tool. Use something EFS or NFS shares or use S3 more. Get rid of old school systems that you can be more native and I also show how much they can save at the same time. That gives them a courage to go forward. Their product owners are really like to cut down the cost as well.

David Joy:

Yeah, I mean you spoke like a true consultant and a seasoned ambassador of the cloud platforms. I mean, it’s a very great answer actually. What do you feel is, or I mean you’ve had so many conversation, what are the top challenges that enterprises have when they’re trying to migrate or maybe what are they not seeing according to you?

Erol Kavas:

Overall program management. Sometimes when you say migration, everyone thinks okay, we move the servers. When you move the servers with [inaudible 00:32:31], it doesn’t work. You need to think about what is the data residencies, security controls and how our communication from on-prem or third party services because dependencies become a norm now. Every developer is open to use some open source package or third party service to make their lives easier, but how is the governance on top of that? How do you save your data or you’ll have clients that has some mandatory requirements to continue such as GDPR or lots of health regulations for Canada. We have AT Canada data residency rules. We need to plan everything upfront to have this successful program management. That’s the fact, and I see that lots of enterprises wants to go to two cloud providers to make things not locked in and that is really tough because we have one case.

We have a very good design and we want to go to the second cloud provider. We want to use the same tools, same structure, but it is not what it is. You need to adjust your tools, systems, even skills regarding the other cloud provider’s needs.

David Joy:

I think vendor lockin is one of the biggest challenges that has come up for enterprises at the last decade and having worked for two organizations and working currently for a company that enables a non vendor locking product, I’ve realized that even that is challenging sometimes, right, because you can say okay, use this product that allows you to run across multiple cloud but then you also have to deal with the egress cost of moving data out of AWS into GCP, which also adds to the challenge. So what are your opinions on multicloud and of course there is a vendor locking is one of the selling points to why you should not be thinking about, but what else have you seen is value for multicloud for users.

Erol Kavas:

Most of the enterprises that I seen went to multicloud. The biggest problem is unification of the monitoring tool stack. They are having hard time to do that and then this year financial operations management, the finops tools are you need to have some third party tools or find the tool that supports both of the cloud providers. Especially every cloud provider has got a good tool. Okay. We want to use one from them, two from them. It’s like a mixed [inaudible 00:35:03] but there are consequences, right? The governance stuff. For example, I had a client I think three years ago they were a full Microsoft shop and we have built tons of Azure policies, lots of great rules and there is a mandate they just acquired a company that is also huge and they want to keep their system because you cannot migrate something established for 10 years and move to the Microsoft cloud and you need to invest a lot. Probably acquisition cost will be identical to that migration cost and they start to think about how we are going to govern them.

The plan was acquire the company, merge with them, cut down some of the default costs and continue. No, it’s not like that. You need to hire more people has that skills and try to manage them as silos. You have a knowledge in one end and you don’t know the other end, and I know that for four years they’re still struggling, they don’t know how to manage it. Sometimes we chat some of the folks from there. They have literary silos who doesn’t talk each other. No knowledge transfer. That’s the biggest problem. That’s the reason we need to build foundation. Really good for multicloud and every enterprise told me that, “We built a foundation. It’s amazing.” No it’s not because it’s just for design for one cloud. Now you are multicloud and if you are future-proofing another cloud provider, you should be ready for that. Otherwise, everything will be like an old school house that has additional patios, decks not matching the colors, sizes, materials.

David Joy:

I agree with you on that. I have ended up at similar situations talking to some of my customers who are trying to go multicloud and what is happening in those cases is that I’ve always come down to situations where there is a likeness to a particular product and that product is maybe it’s the same but it looks different on Google so they make a decision, okay, we will use a product that works on both the cloud platform. Say it’s say CockroachDB is a product they selected. Now the other problem that happens now is that once they decide that they want to run across two of these environments, the developer doesn’t understand why they’re trying to architect it this way because the developer is like, “Well I just want to build an app for the end users.” So there have been situations where they’ve not actively understood the end-to-end benefit of running something on the cloud. The business understands it but sometimes the developers, designers don’t get it, the architects get it. So I’ve seen those kinds of things happen as well.

Erol Kavas:

Yeah. Last year I have seen one example like that. One of the developers wants to build something a basic react web app SBA and it’s a pure HTML JavaScript, nothing too fancy, no need to be. Even docker containers and there are AWS shop and they have an AKS cluster. The developer told the manager, “Can I deploy it to there?” But that AKS cluster has no public interface. It’s an internal facing ,was a government institution and they said, “Okay, let’s provision another AKS cluster with disaster recovery, multi-region, tons of security controls.” And I said, “Okay, but how many applications are you going to deploy?” They said, “One app.” I said, “Isn’t this overkill? Let’s look at the app back.” And we noticed that it is Azure web app static hosting, the storage accounts feature and it’s working there and for a long time better than the AKS because of storage account infrastructure highly available and it doesn’t talk to any API, third party API that is not reciting in government side. The silos are the problem.

You need to communicate and that communication costs a lot, lots of meetings, meetings, meetings, meetings, but at the end we need to go with an ultimate good better solution for every client.

David Joy:

I like what you said a few minutes ago about when you go into a conversation you’re basically asking questions and developers hate you because you’re trying to understand every facet of the business and because you have the experience of doing this a number of times you’ve seen similar problems across multiple enterprises, right? And I have noticed as you are saying is that sometimes when you are going through this exercise you will realize that you don’t know a lot about your app. You’ve had migration between teams also some people move from different teams have moved on and you’ll realize during the exercise that you have provided people come back with better knowledge of what and how their application works.

Erol Kavas:

You sometimes draw diagrams while you’re provisioning your applications or infrastructure but you don’t update it. You don’t have time to do and that’s the reason consultants come and ask you questions, do the discovery, redo all the blueprints and give you back and a couple of years later they come back again. That’s the norm because operations do not have time for it. Short of the people, short of the skills and because of this cloud and technology, everything is urgent. There is no real urgency level. Everything is we need to migrate right now yesterday, a week before. That’s the reason sometimes we have that messy house.

David Joy:

So if you have to condense this idea of hey, if you’re thinking multicloud, what do you think are the strong indicators for somebody to be on the cloud and multicloud and what are some of the scenarios where users should not be moving to multicloud according to you?

Erol Kavas:

Especially I’ve seen in Canada, they want to have not vendor lockin. That’s the one business factor. The second thing is the other vendor has a better tool in some cases and that happens a lot especially I’ve seen like Google clouds, BigQuery, Big Table is a really good opportunity. Sometimes people pursue or cloud spanner, multi-region databases. That’s okay, but you need to build a foundation and that means if you are managing your one environment, one cloud provider x be ready to spend 3x, 4x because egress cost and maintenance skills, you need to be ready and you should always pulse track with your team, and I was working in a huge FMCG sector company three years ago and this is huge global company.

It took like six months to make a decision to go a second cloud provider because we check all the checklists, who hired the people because we built a project and we can hire afterwards. That doesn’t make any sense. Another six months is needed to people to learn and wrap up the problems. That’s the reason, that’s the first thing. The second thing is the regulations. Sometimes DR is a mandate. Let’s assume you are in AWS last year you were in AWS in Canada. You have a mandated DR. No way. You need to go either on-prem or you need to go to another cloud provider and another cloud provider DR is really tough, a provider to provider or you need to have a strategy to just do backups called DRs and do lots of different scenarios. That means lots of skill, lots of time effort. You need to have a deep pocket for multicloud and there are some specific third party applications.

Sometimes you need to run in your system that are vendor specific. In that case, there is no way. You need to calculate that cost as well. Not just application fees, not just operational fees you need to consider, but I always encourage people if there is no security limitation, if the company has got enough regulational compliance, go for SaaS solutions as much as… Yesterday I was chatting with the ex-colleague. He was mentioning that, “Should we go this DB cloud native DB or Atlas Mongo? I told them, you can go Atlas Mongo. Mongo can move you different cloud providers. That can be, but if you go to native maybe it’ll be good for you because my friend is expert on that cloud provider. It can be good for you but discuss with the other outcomes as well.

David Joy:

I think that’s the most important thing is to discover something and understand the whole process clearly because what we have is sometimes we are trying to jump into a design and what I’ve noticed is many times there are great solutions out there, but what has happened is many people don’t know that there is a better solution because they’re looking at, “Oh well this is the stack. I understand it.” And in doing so sometimes you don’t have this overall view of where everything needs to be designed to. That happens as well. Let’s pivot a little bit. You’ve not just been an ambassador. You’ve already written a book which has been pre-order and you’re officially a writer now, so let us know a little bit more about this book and what made you write this.

Erol Kavas:

I was a technical reviewer for a book for a friend from Microsoft. She was writing on Kubernetes exam CKD and she asked me to review the book as a technical side. I was reviewing then, I don’t know if I did a diligent work to make bad comments about the book, but the same publishing company asked me, “Do you want to write a book? We are looking for some people.” And I told them, I want to write a book. If it is, it should be something about automation or infrastructure as code. I told them, “Let’s make a series starting from AWS how to master Terraform in cloud environments.” Or I started from AWS, it’ll hopefully be ready in the AWS event time. We are aiming forward for that and it’s as you mentioned, it’s pre-ordering Amazon and I would like to show the best practices that I have collected in my bag for a couple of years how we can use Terraform enterprise grade and it’s not just for enterprise.

I believe everyone needs to implement every Terraform best practice because it is like a biggest foundation in our infrastructure now and those best practices can be easily replaceable with the other cloud providers. I’m planning to start the one in the near future in the next year as well.

David Joy:

Oh well yeah, that’s true. Now that you have written for AWS, you can write the same thing for GCP and Azure, right?

Erol Kavas:

Yeah, yeah. Actually outlines are ready. I have started to write down some notes just we need to publish this book, get ready for the market. It’s a long process. It is my first time. In the old days I tried to write some other computer books as well, but long time ago in a different language. Now it is tough and the era has been changed. I worked in the publishing house before. I know the process a bit well, but now everything has changed and big teams are working on it. Reviewers, I have very good fellows help me to review the book, find my mistakes and fix them and we try to make it hands-on as much as we can to also help people to implement some of this stuff.

David Joy:

That’s brilliant, that’s brilliant. So for everyone listening, Erol’s book is going to come out, it’s called Mastering Terraform for AWS. It’s available on pre-order. We will also share the link for you. If you’re a [inaudible 00:46:48], you’ll get a copy of the book. All right, so Erol, tell me a little bit more about this whole aspect of Terraform that you fell in love with. What was it that you fell in love with specifically around Terraform? Yeah.

Erol Kavas:

To see all the details of the infrastructure, that’s amazing, especially I suffered this. This is also a criticize for Microsoft Azure portal. They changed the settings so much. The setting is there, someone make a setting. The other day that UI change and it went somewhere else and you are freaking out. That avoids. We can easily replicate between the environments or if I write a Terraform, my colleague can easily follow that path. Otherwise, the old way, that UI way I always call it click ops is not working anymore. Especially if you have a complicated resource like Kubernetes, tons of different settings. I cannot even remember now. I use Kubernetes Day-to-day in every cloud provider, but I forgot where was it? Where is the setting? But now we have a repository. I can make it just single search in GitHub or whatever tool I’m using or from the console I do a find or grab.

I find the setting right away and I just need to learn the API tag. That’s amazing and repeatable. Repeatable. I have a Kubernetes template almost for every cloud provider. When I need it, I provision, I shut it down. I don’t forget, it’s a reminder. I like the CI CD tools for Terraform as well. I probably tested every one of them starting from Terraform cloud to space lift and the others. I love them. It’s a good place to see you become a more developer than infrastructure people. You need to encounter all the lifecycle of the infrastructure. Everyone thinks there is a software development lifecycle, but there is infrastructure development lifecycle as well. We need to think about when to provision what and which sizing and also the sizing is very easy. Variables helps us to easily implement the sizing, inject them that avoid more costs.

And the first time I was literally using Terraform like seven, eight years ago. I was working in a small FinTech shop in Toronto and they want to provision a testing environment, a second environment and we were very early startup. We don’t want to spend a lot and we had one QA engineer wants to use it. I was literally manually shutting down the resources before Terraform. Then I created the Terraform script, then he used it, then he started to use the Terraform script on his own in writing a small Jenkins pipeline. It was destroying every night and bring it online in the mornings and if he’s off we don’t pay. Then we hired the second, third, and fourth. We just duplicate that code and using it with the correct sizing and if there is a big change, I just reflected into my code and they were already getting the changes. Application is deployed. That is the beauty of the cloud, not just scaling high availability. Those are things already there, but automation makes sense and helps us to achieve or deliver faster.

David Joy:

I had a profound experience like this as well. About eight years ago when I started playing around with Terraform and I was like, wow, I can just keep running this across multiple environments. It just scales for me. It’s awesome. Let’s dive into this whole aspect as we come close to. How do you keep up with all the madness in tech that’s going on, all the great technology that’s coming out, what does Erol do to keep up with learning and doing his R and D?

Erol Kavas:

I’m met early bird, to be honest, I’m a very, very early bird and two years ago, almost two years ago, I made a decision. I gave up some weight. I start to do more active lifestyle to try to be healthy after my doctor’s recommendation and I wake up very early, hit the gym, then come to my office that I work, and I spent at least two hours to what has been yesterday’s news to learn more about… In the last couple of months, I tried to prepare some LinkedIn posts. I have a small newsletter as well. I try to create some content for that. Then that helps me to keep up and also because of my training I had at the same time I tried to share with my team with the trainees that I have that I’ve been training for a couple of years around more than a hundred people now and we also feed each other.

We have a WhatsApp group, discord group, we have some teams channel, Slack channels. I try to spend at least two hours a day to learn it and one special thing for Sunday mornings, I wake up early again and I spend more time like three hours with a clear mind without kids while they are sleeping to get more information because weekdays they wake up early as well for school, but the weekends are better and I try to set some time in my calendar. That’s my focus time. Don’t touch it, don’t interrupt me. I turn off everything and D and D for everything and get some because it’s a commitment that I can keep up and I have many certifications over hundreds in the cloud. Even renewing them takes sometime. I need to invest that time and it’s like a very slim string. You need to hold it very tough. Otherwise, it slips and [inaudible 00:52:35]. And that’s just a commitment. I encourage everyone who wants to learn cloud DevOps. They just keep it a couple of months and they get the taste of it. Then they will be like me, I believe.

David Joy:

Yeah, no, that’s awesome. Great advice. So Erol, could you even for listeners, could you guide them on or suggest or advice some resources that you recommend people to go and read or some RSS feeds that you recommend people to stay in touch with or some communities that they can be part of?

Erol Kavas:

Yeah, I try to follow all the cloud providers news blocks first. They have RSS feeds. I always check them first and I check a couple of Reddit channels just specific to cloud providers. I’d like to get [inaudible 00:53:20]. I’m a Reddit fan and other than that there are specific LinkedIn groups that I follow. One is [inaudible 00:53:30] certification channel. There are some local channels for Canada, SRE and DevOps. I try to find the people from there and there are some publishers and a couple of newsletters. All the tech I try to follow, but for learning, I prefer mostly for Microsoft, Microsoft learning pages. I try to go and now applied skills. I try to finalize all of them for AWS skill builder and Google has some Coursera courses. I try to follow them, but other than that I was a fan of Code Cloud, a cloud grid, long years, but because I passed most of the certification, I don’t go back and I try to make my son study on that mostly.

But I try to, if I have something that I need to learn, especially AWS partner trainings, some deep dive topics like storage account, disaster recovery, I try to finish all of the trainings there to get the badge and get more understanding about consulting side of it.

David Joy:

That’s amazing, Erol. I mean, thank you so much for sharing that and it’s been such a pleasure just hearing from you. I mean I work… My role is basically working with AWS as a cloud partner for my company, right? And it’s been a great experience hearing you talk about how to approach the cloud, all the automation abilities and everything and I look forward to actually figuring out how we can chat and go out and talk about your book when we meet at Reinvent actually.

Erol Kavas:

Sure, sure. Absolutely.

David Joy:

Yeah, so thank you so much for hopping on. I know we wanted to keep it to an hour and this has been an absolute pleasure. I look forward to having you for another conversation and we’ll dive more into an actual Terraform script that you’ve written and dive into your philosophy as to how you pick different variables and modules.

Erol Kavas:

Thank you very much. Thank you for having me. Let’s catch up in Reinvent.

Big Ideas in App Architecture

A podcast for architects and engineers who are building modern, data-intensive applications and systems. In each weekly episode, an innovator joins host David Joy to share useful insights from their experiences building reliable, scalable, maintainable systems.

David Joy

David Joy

Host, Big Ideas in App Architecture

Cockroach Labs

Latest episodes