Podcast

Pavel Lukeš (Direct): We have the dream system we’ve always wanted, yet it’s rarely feasible in a corporate setting

June 19, 2023

Direct pojišťovna revolutionized the Czech insurance market years ago by being the first to offer its products exclusively online. To meet high client and business expectations, it needs to adapt its core information systems. Currently operating with two systems, the company plans to fully transition to a new agile-implemented core system next year. “We envisioned the new system differently. We didn’t want it to be just another box we developed ourselves, but rather a living organism that continually adapts to the company. I believe this approach has paid off significantly,” explains Pavel Lukeš, IT Director at Direct pojišťovna.

  • How long does transitioning to the new functional system actually take?
  • Why didn’t the insurance company immediately consider a cloud-only approach for the new system?
  • How was the cost aspect of the new solution considered?
  • How have users adapted to working with a system that is still in its ‘infancy’?
  • Has Direct pojišťovna achieved the intended agility across the company?

Listen to the podcast (CZ)

Read the podcast as an interview 

Ivana Karhanová: Decades-old legacy systems need replacing with new ones, ideally in the cloud. This is a clear strategy for most insurance companies. But how does this work in practice? Where can you afford to turn off old systems without risking an IT collapse? How much time does it take to build a parallel functional system? And what is it like to operate two systems simultaneously? I’ll discuss all this with Pavel Lukeš, IT Director at Direct pojišťovna. Good morning.

Pavel Lukeš: Good morning, thank you for the invitation.

Ivana Karhanová: What systems is Direct pojišťovna currently running on?

Pavel Lukeš: We currently have two core systems. One is the original system we acquired from Triglav, and the other is our own, which we are developing and eventually want to operate exclusively.

Ivana Karhanová: Do you have an idea of when you can completely move away from the original system?

Pavel Lukeš: We do. It’s approaching. We’re finalizing the new system so all our teams can fully function on it. We’ve approached the new system very agilely, so it has been useful from the first iteration, even though the old one is still crucial and will remain so until we can fully transfer all teams to work efficiently in it. We hope to achieve this within the next year.

Ivana Karhanová: So how long have you been developing this parallel system?

Pavel Lukeš: It’s been about five years now.

Ivana Karhanová: So, you’ve been operating two systems side by side for five years.

Pavel Lukeš: Exactly.

Ivana Karhanová: You mentioned that from the first iteration, it was released for use. What did that look like? Because I imagine the functionality and architecture might have been somewhat shaky at the start.

Pavel Lukeš: We needed to address the weaknesses of the old system. We were unable to work effectively with it, due to its lack of speed and reliability. We couldn’t keep it running smoothly all day to serve its users. Thus, the first iterations were primarily about building a framework around it to allow the system to operate 24/7, as we wanted to function primarily online. This enabled us to make the first iterations useful. The system we started building learned to calculate quickly, generate contracts, and arrange insurance, even if the core system was down. Then, as the core system improved, it could incorporate that information. The next step was data display. We found that the old system sometimes complicated data display, such as viewing all contracts a client has, which is a valuable and useful view. This was the first task we tackled with the new system, which immediately found its user base because it could display data in ways the old system could not.

Ivana Karhanová: But from a user structure perspective, the original system served primarily internal users, right? Like the business side, which arranged insurance contracts through it, essentially acting as its IT.

Pavel Lukeš: Initially, it was also supposed to be a system on which online services could be built so users could calculate and arrange insurance on their own. We later realized this wasn’t feasible because calculations took tens of seconds. We began to explore alternatives. Initially, we didn’t want to build our own system; it didn’t even occur to us. We just wanted to make the old system more reliable, better, and faster to truly operate online. As we worked on these improvements, we realized we had developed so many of our functionalities around the old system that it made sense to consider completing the rest of the system ourselves.

Ivana Karhanová: What initially led you to think you could just upgrade the old system? It was already quite “robust and old” at that point, wasn’t it?

Pavel Lukeš: Yes, and from a licensing and operation perspective, it was structured in a way that would have made it very difficult for us to scale up to ensure reliability. So, we considered our options. We had some ideas on how to proceed and were quite successful early on. It’s worth mentioning that initially, Direct pojišťovna didn’t have so many online requests that we couldn’t handle some failures associated with it. The number of contracts or overall arrangements per day was manageable, so if we found an error, we could rectify it manually. This situation started to change very quickly. We couldn’t imagine it today. We were figuring out how to expose online contracting and operate internally. That led to the idea of developing our own core system. We realized as an insurance company we were unique, thought about products differently, and believed any boxed core system would always constrain us. Developing our own would allow us to do whatever we might think of in the future. So, we approached the new system differently. We didn’t want it to be just another box we developed ourselves, but rather a living organism that would continuously adapt to the company. And I think that approach has greatly benefited us. Today, seeing the Direct family as a whole, which consists of several companies, it’s great that the core system can always be adapted to whatever we come up with, including offering combined services to our clients.

Ivana Karhanová: I assume the new system is in the cloud…

Pavel Lukeš: Not entirely. When we acquired Triglav, we also inherited a server room with a lot of hardware. The old system needs to run on-premises, so we knew we would stay there. But we started building the new one so it could operate in the cloud. We immediately adopted microservices and wanted to refresh and rejuvenate our approach. We also had the advantage of starting from scratch, which was an opportunity to create the dream system we always wanted but rarely thought possible in corporations. As for the cloud, we haven’t fully migrated yet because we still have a lot of our hardware. All frontends have been running in the cloud since yesterday. We completed the frontend migration…

Ivana Karhanová: You mean in the cloud.

Pavel Lukeš: Yes. The migration of the frontend finished yesterday and is now operating in the cloud. As for all the microservices and the Kubernetes cluster, we are taking our time because there’s no rush. But we know the hardware we have is likely the last of its kind.

Ivana Karhanová: And how long will it last you?

Pavel Lukeš: I’d say about 2-3 years.

Ivana Karhanová: Are you addressing security in the cloud? Some companies view the cloud as safer nowadays, while others think the opposite.

Pavel Lukeš: Definitely. We have our security team monitoring closely, and data security is paramount for us.

Ivana Karhanová: I meant more like do you feel the cloud is relatively safe and the only thing that could fail is the access by individual users?

Pavel Lukeš: Yes, we view the cloud as safe and have no fears in that respect.

Ivana Karhanová: Have you ever calculated the costs? What will it cost compared to the compromise? Or is it something you’ve resolved from the start, knowing you’d end up in the cloud eventually?

Pavel Lukeš: We are currently looking into this intensively because it’s challenging to quantify. Owning a server room is not just about the hardware but also the software and licenses. We have staff who need to intervene, replace disks, power up the generator, and continuously ensure the room is air-conditioned. However, we see that we can operate the system as it is. There’s no strong vendor lock-in, and we know we can move to the cloud and choose any provider, giving us a certain freedom. So, we’re considering how to maintain this advantage if we move to the cloud.

Ivana Karhanová: Meaning you’re considering a multicloud approach?

Pavel Lukeš: Possibly. We definitely want to find a solution that allows us to move to the cloud while maintaining the ability to manage the system ourselves. We’re discussing whether to consider a multicloud option.

Ivana Karhanová: With the multicloud approach, the complexity of the entire system probably increases, right? And the demands on your internal people as well.

Pavel Lukeš: It’s not that simple. Nowadays, it’s easy to say that you can script for a cloud environment with Terraform, but it’s not entirely true. You have to script differently for each cloud. We want to start by looking at the services available in the cloud and make some comparisons. We’re discussing within the whole group the possibility of having part of one company in Azure and another in AWS, to understand both environments and know what it would mean to switch from one to the other.

Ivana Karhanová: Do you consider the opportunity costs of on-prem in your calculations? That is, perhaps you’re not able to develop or launch services as quickly.

Pavel Lukeš: I wouldn’t say that. We’re focusing a lot on architecture. If you’re on-prem with ample hardware, you can build systems that start up, function, are reliable, and run in a high-availability cluster without worrying too much about CPU or RAM usage. Moving to the cloud requires a comprehensive look at the architecture and considering significant changes or redesigns.

Ivana Karhanová: Essentially, it’s a pay-as-you-go model.

Pavel Lukeš: Exactly. We’re looking at our architecture and finding opportunities for optimization. The two to three years ahead of us should be enough to make the right decisions.

Ivana Karhanová: If the old system were turned off, what would stop working?

Pavel Lukeš: That’s a good question. Definitely claims processing. Right now, the entire claims process is in the old system. It’s the last piece we need to transition to ensure most users can operate in the new system. Once we achieve that, we still can’t shut down the old system as it contains all the data for old products. We’ll address its migration, which we anticipate will take about a year.

Ivana Karhanová: You said the system was available to people from the first iteration. How did you explain this strategy to the company?

Pavel Lukeš: Communicating that we have two systems isn’t easy. It often complicates life, but there was a general understanding that some users were willing to use both systems simultaneously, while for others, it was a problem. We always had to carefully consider which functionalities to implement based on priorities and discuss with users where it was acceptable to use both systems. It proved useful in the new system, where we couldn’t display certain data or didn’t have it available, to at least guide the user quickly to look in the old system. This prevented users from having to search complicatedly or remain uncertain, as they knew immediately they wouldn’t find certain contract details in the new system.

Ivana Karhanová: Did teams ever feel like they were being given something unfinished?

Pavel Lukeš: There have been many feelings over the years. It’s challenging to develop agilely something that is catching up to an existing system, and not all areas covered by the old system were unsatisfactory to users. We often encountered situations where we delivered functionality that didn’t replace the old system, requiring many iterations to become useful. Over the years, we learned the importance of communicating with system users. It’s crucial not to divide into “us and them” but to view the system as one serving everyone. We’re all in the same boat and need to discuss how to integrate into the new system. A robust system isn’t just a mass of code and technological units; it encompasses many processes and issues that users address and want to be efficient in. We must engage with them on how the system should function to ensure their satisfaction. So it’s not just about programming something but about bringing it to life, which is quite a complex task.

Ivana Karhanová: When you talk about not dividing users into “us and them,” that sounds great, simple. In practice, it’s probably harder. How did you start? Did you choose a few ambassadors or a specific team? Or how did you gradually roll this out?

Pavel Lukeš: I think the beginning was simpler because the new system, capable of displaying data in useful views, immediately found its user base. Those who wanted to see this data embraced it. Then it got a bit more complicated because there are teams with a lot of work, not many of them, so they play a lot with efficiency. Building a system from scratch that gradually adds functionalities is not something they want to adapt to at that moment. Sometimes they just want to develop everything completely and then switch over. However, we didn’t want to replicate some functions one-to-one. We wanted to implement innovations and simplifications right away. So there was a lot of work – managing the old system and developing the new one. Sometimes it was easier to leave it, develop the system essentially one-to-one, and discuss innovations later. Other times, we successfully worked with users to develop the system to be more useful right from the start. But it’s really complex, and there are many teams using the core system, each with a slightly different story.

Ivana Karhanová: By core system, do you mean the old or the new one? Or both?

Pavel Lukeš: Both. It varied who was dissatisfied with what. For some, the old system was very inconvenient, and they looked forward to the new one, welcoming each new functionality because it simplified their work. For others, the old system was satisfactory, and suddenly they faced a new system, often appearing as a semi-finished product, requiring further discussion. It took time.

Ivana Karhanová: You mentioned the need for the entire company to be agile. Have you achieved this, and if so, how?

Pavel Lukeš: That was another quite complex matter, as developing a system agilely means constantly fine-tuning it. But we were in a position where we needed the system to be very capable from the start, with fine-tuning to follow. We realized we had to view it as one team looking forward to every addition, seeing the system as something we collectively refine and create.

Ivana Karhanová: By “collectively,” who do you mean? I understand it includes development and you as the head of IT. Who else?

Pavel Lukeš: Everyone, the whole company, business, users. Lately, we’ve been embracing agility across the entire company, so the business also thinks about new functions in small iterations that we can quickly test to see if they’re useful. If so, we continue in that direction.

Ivana Karhanová: Have you encountered any dead ends during agile development where you’d now say, “We wouldn’t go down that path again”?

Pavel Lukeš: We’ve found ourselves in situations where, despite agile development, we realized we were part of a waterfall process. This happened several times, especially with data migration. You can launch a large project to migrate data from the old system to the new one. We followed this path for a while and then realized it’s more useful to see migration as part of delivering small features. For example, if you want to get data into a mobile app that the new system doesn’t have, that feature’s delivery should include migrating that data segment to display it in the app.

Ivana Karhanová: So the system’s complexity actually increases at certain points. You have some data here, some there, part of the frontend here, another part there…

Pavel Lukeš: It does increase at a certain point. Then you reach a stage where the new system is used more extensively, and everything starts to simplify. We’re now planning to only create contracts in the new system. That’s a crucial moment. From then on, the old system’s portfolio won’t grow. We’ll have new data in our new system, which we can iteratively improve and develop. Gradually, we reach a point where the old system only contains data for old contracts. We’ll migrate them as needed for specific contracts or through a bulk migration. But all new operations will run in the new system, simplifying life for users and developers alike.

Ivana Karhanová: Is there anything currently hindering IT from Direct’s perspective?

Pavel Lukeš: I don’t think anything is hindering us. In terms of development, we have a sensible roadmap we’re following. Balancing the features needed for continued engagement is always difficult. The business wants new functionalities, and so does the development team. At the same time, we’re developing a system that underpins everything, so prioritizing between core system development and adding new features, whether for the mobile app or other systems, is challenging.

Ivana Karhanová: Direct pojišťovma seems to innovate and introduce new ideas and features for customers. Where is your priority currently?

Pavel Lukeš: We want to innovate; it excites us. From the start, we aimed to create innovative solutions. The core system is a tool to facilitate that. We’ve said a few times in our history that we would focus solely on the core system and halt other developments, but we never sustained that.

Ivana Karhanová: What’s the longest you’ve managed to stick to that?

Pavel Lukeš: Just weeks.

Ivana Karhanová: From what you’ve said, it seems you develop everything in-house, without external partners.

Pavel Lukeš: Yes.

Ivana Karhanová: Where do you find such capable people?

Pavel Lukeš: I believe we’re very attractive to people who love modern technologies. Direct is quite large now, so we need a robust architecture. We need to scale. We handle tens of requests per second. Yet we’re not a corporation with vendor lock-in constraints on how we assemble our solutions.
We decided early on to balance our workload: 50% on new features, 30% on refactoring, maintenance, modernization, upgrades, and 20% on education and agile rituals. Even though we’ve been developing these systems for five or six years, they still look very modern, as if they were only a year or two old. We intend to maintain this, and I believe it’s also attractive for new team members because they know they’ll have exciting work ahead. We’re not planning to stay static; we want to keep evolving. That’s the interesting aspect of the core system. It’s a system I believe will be with us for decades, so it can’t remain as it is today. We need to view it as a system we’ll maintain over the long term and enjoy working on. We must approach the code with the mindset that we’ll read and maintain it many times, making it worthwhile to continually advance our solutions.

Ivana Karhanová: When you say you allocate 20% for education, what’s currently popular among your IT staff?

Pavel Lukeš: Recently, there have been many conferences, so attending them has been popular. We also value sharing information and educating each other. When it comes to conferences, we always ensure a thorough transfer of what was learned, and sometimes we travel abroad for them. The insights our colleagues bring back are very interesting, often inspiring us to change or try new things. Then we discuss whether to conduct a proof-of-concept or who should focus on it and decide our next steps accordingly.

Ivana Karhanová: Have you started building data science tasks on top of your systems, or is it still very much about engineering?

Pavel Lukeš: It’s mostly engineering for now. Data science is definitely an area we’ll explore in the future, and I’m looking forward to it.

Ivana Karhanová: Do you have an idea of what you want to derive from the data?

Pavel Lukeš: That’s an interesting question. We have data specialists who would probably find it easier to answer. Data will be crucial for us, especially within the entire family of companies. We want to use the data to provide the best possible experience for our users, understand their needs, and know what to offer them.

Ivana Karhanová: How long do you think it will be before your platform and data are ready to attract not just great developers or engineers but also data specialists?

Pavel Lukeš: It’s a project we’re currently working on, focusing heavily on data, especially since once we turn off the old system, we’ll have all our data neatly together. These will be data we understand well and can effectively work with. I could estimate a year or two, but it really depends… I believe once we turn off the old system, playing with data will become a priority.

Ivana Karhanová: Pavel Lukeš, IT Director at Direct pojišťovna, thank you for visiting the studio and talk to you again sometime.

Pavel Lukeš: Thank you very much. Goodbye.

Join hundreds of professionals who enjoy regular updates by our experts. You can unsubscribe at any time.

SUBSCRIBE - Sidebar Newsletter

More Insights