Podcast May 30, 2024

The Role of Software Development in Supply Chain Management

When it comes to supply chain management, software development plays a critical role in enhancing operational efficiency and meeting unique business needs. This blog post and the accompanying podcast episode explores three key aspects of software development in supply chain management: the different types of software developers, the importance of customization in enterprise software, and the challenges of integrating multiple systems.

The Different Types of Enterprise Software Developers

In the realm of enterprise solutions, there are two primary categories of software developers:

  • Developers who build enterprise software: These developers are responsible for creating the core software products used by companies. They have access to a broad array of development tools and can design software to meet a wide range of business needs from the ground up.
  • Developers who implement enterprise software: These developers focus on customizing and configuring existing software solutions to fit the specific requirements of a business. Unlike their counterparts who build software, implementation developers work within the constraints of the software’s predefined capabilities and must find innovative ways to fulfill business requirements without extensive custom coding.

The Importance of Customization

While off-the-shelf enterprise software solutions can address approximately 80% of a business’s operational needs, the remaining 20% often requires additional configuration or development. This customization is crucial for addressing unique business processes or specific requirements that standard software may not accommodate.

For example, a company might need specific reports generated within their warehouse management system (WMS) to streamline operations. Although external tools like Power BI can be used for reporting, integrating these reports directly into the WMS can provide a more seamless and efficient user experience for warehouse managers. Customization enables businesses to fine-tune their software to better align with their operational workflows, thereby enhancing productivity and efficiency.

Challenges of Integrating Multiple Systems

As businesses grow and evolve, they often adopt various software tools to manage different aspects of their operations. However, integrating and maintaining these disparate systems can become complex and costly.

One potential pitfall of extensive customization is the risk of creating a “Frankenstein” system—a heavily modified software that becomes difficult to upgrade or maintain. This scenario typically occurs when businesses attempt to extend the functionality of one system to cover roles it was not originally designed for, leading to increased complexity and integration challenges.

Strategic planning is essential in software development and implementation. Developers should aim to minimize unnecessary customization and ensure that any modifications align with the long-term goals and capabilities of the enterprise software. This approach helps maintain system integrity and facilitates easier upgrades and maintenance.

Conclusion

Software development is integral to the successful implementation and operation of supply chain management systems like enterprise resource planners (ERP) and warehouse management systems (WMS). By understanding the distinct roles of developers, the necessity of customization, and the challenges of system integration, businesses can better navigate the complexities of modern enterprise solutions. Effective software development and strategic customization can significantly enhance the efficiency and effectiveness of supply chain operations, ultimately contributing to a company’s overall success.

🔗 Check out the full episode:

Watch the full video below:

Listen: Anywhere you get your podcasts.

 

If you have more questions about enterprise software development, reach out to Nicholas directly at LIDD.com/contact.

 

[00:00:06.080] – Speaker 1
Hello Nicholas.

[00:00:06.970] – Speaker 2
Hello Charles.

[00:00:07.710] – Speaker 1
The end of the week it is. And this week we thought it would be so exciting to have a developer on the show, because as everyone knows, no one’s more exciting than developers.

[00:00:21.850] – Speaker 2
Well, it’s a big world developers. One of the first one at LIDD, in fact. It’s been a while. Yeah, it was me.

[00:00:31.680] – Speaker 1
How long have you been at lid?

[00:00:33.290] – Speaker 2
I’ve been there for almost seven years. Wow, it’s been a while. It’s been a while.

[00:00:37.430] – Speaker 1
But you love it.

[00:00:38.150] – Speaker 2
I love it. It’s been a really fun journey.

[00:00:40.420] – Speaker 1
Tell me something then, because what we want to talk about today, we want to get into the idea of what a developer is at a company that works on supply chain issues for our clients, specifically in your domain, which is implementing technology that manage the planning and execution of supply chain operations. Let’s start from the beginning though. So who are you, where did you come from? Are you a self taught programmer or what happened?

[00:01:13.740] – Speaker 2
Yes, so I am a self taught programmer. I typically studied in industrial engineering, did some development all my life for side projects, for fun, always loved it. And when I came at Lin, there was an opportunity to start developing into the softwares that we implement. So I seized that one and started developing at that point.

[00:01:34.900] – Speaker 1
So you’re actually not formally a developer from school?

[00:01:38.920] – Speaker 2
That is correct.

[00:01:39.680] – Speaker 1
Isn’t that interesting? Do you know when I was a kid I used to fiddle with basic, do you remember that language?

[00:01:46.080] – Speaker 2
Yes, I do.

[00:01:46.860] – Speaker 1
And the first program I ever wrote, ten, print, happy birthday mom. 20, go to ten. And I ran it for my mom and you know, she had no idea, she thought it was like voodoo magic. All of a sudden the screen filled with happy birthday mom. Anyway, there you are.

[00:02:09.670] – Speaker 2
Yeah, it’s been. Well, it’s the developer world, it’s a really, really big world. There’s different type of developers, developers. Into the enterprise solution world, we can put two categories to it. There’s the one that actually build the enterprise software like we do in automatic division at lid, and there is the implementation division where we also do it at lid with business central, Netsuite and our WMS solutions. So it’s two different types of developers. When you build the enterprise solution, you’re actually doing the same thing as you’re learning at school. You have all access to all the development tools that you can think of, you can do whatever you want with it, and that’s what those developers do. When you are into the implementation phase of things, it’s a bit different because you’re working into existing solution and those solutions give you access to what they want to give you access.

[00:03:09.250] – Speaker 1
So I think for the purposes of this conversation, the typical audience member would be more interested in part two. We all understand that, you know, if you are a company that produces and sells software, you have developers that, you know, manufacture that software. But what is more surprising, I think to the average person on the street, particularly as let’s say a client of ours, any kind of, any company really, that takes on the implementation of enterprise software will sit there and say, wait, why do I need developers? Isn’t the software fully written out? What do I need developers for?

[00:03:49.460] – Speaker 2
Correct, correct. And it’s a really good question. Those solutions are built to accommodate what they say, 80% of the businesses. But the more you’re working into the industry, all businesses, all enterprise have their own way of doing things and those solution does not accommodate for all of those things. So that’s where you have configuration that exists. So that’s the switch, flip it on, right.

[00:04:13.530] – Speaker 1
Toggles and flips and switches and things that you can, that you wouldn’t need a developer.

[00:04:19.200] – Speaker 2
No, exactly.

[00:04:20.200] – Speaker 1
So let’s just start there. We say, let’s pretend, and I know this is a bit of an exaggeration, but let’s say a distribution company is about to put in software to run their business, their entire business. If the software, like in the old days, if I took the floppy disks and I loaded it into the server, which I know is ridiculous, but let’s say I would say that 80% of the functions I needed are ready out of the box. And then there’s certain features that I need to run my business, either because I have very particular needs. Correct. Or because I am a particular person and I fight change. Both can be the case that I need that last 20% to be either configured or developed. Why? So let’s pretend. So he’s 80% out of the box, 15% of that functionality configured. Correct. But there’s still always a 5% to be developed.

[00:05:27.080] – Speaker 2
That is correct, yes.

[00:05:27.980] – Speaker 1
Can you give us an example of what that would be?

[00:05:31.130] – Speaker 2
It could be, for example, for financial reason or for a visibility reason, I need a specific report to be built out of that system. You have a bunch of tools that exist on the market, like power Bi, that can build you a bunch of reports, but sometimes you want it into your system directly.

[00:05:47.570] – Speaker 1
And why would you want it in the system directly?

[00:05:50.070] – Speaker 2
Could be, for example on a warehouse management system. It is your system that manages your inventory on a day to day basis. Basis. Inside the warehouse. So you might not want to have the person that is managing your warehouse in the day to day business. Its main system is the WMS. So you don’t want him to start playing around with a different system.

[00:06:09.890] – Speaker 1
Right. So now let me try to make that point clear. I’m the warehouse manager, and I want to see whatever, what percentage of the orders I have to pick today have I already picked, and what percentage of orders are outstanding. So I can just figure out where am I right? Now, that one actually would probably be built in standard, right? But if I wanted something extra special from that report, doesn’t matter what you, the viewers, can invent their own special that cannot be done with the core reports that are available. The point is, I have two options. I could use an external reporting tool to build those reports, and I would not need to do any development there, right? I might have to build some integrations, and let’s remember to touch on that. I could build an external report, or I could spend the money to develop the report in the system on people like you within the system. And then you say, well, that’s crazy. Why would I ever spend money to develop the report I already have probably somewhere in my enterprise, that reporting report creating capability, that power bi, that tableau or whatever the system is that you use.

[00:07:37.780] – Speaker 1
And your point is? I’m willing to spend the money, because if you said to me for 8 hours, I can develop that report for you within the system. Well, now me as the warehouse manager, I can live and breathe all day in the WMS. I do not need, when I want to see that report, to log out of the WMS system, log in to a new system to get to that report, I can just toggle in, toggle out as I need.

[00:08:05.930] – Speaker 2
Yes. And the more system you have in your business, the more you have to maintain as well. So not all businesses have power bi, for example, some of them only have a ERP WMS. So they don’t want to put a third party system into the mix. They want to keep it simple, keep it cleaner at that point.

[00:08:22.240] – Speaker 1
Well, that brings another point that you just said. So that obviously, obviously great point, which is the proliferation of total systems is a problem in itself. The other thing of that is, let’s say I do have tableau. I have tableau in the enterprise somewhere, and it’s being used by someone, and I have it resources dedicated to that. But I don’t necessarily as an operations crew. I mean, we could be talking about companies that are quite vast, and I don’t want to be fighting for resources that may not be available. If I can get for two, $3,000 the development to build it in my core tool.

[00:09:06.550] – Speaker 2
Yeah, that’s a really valid point. Maybe in your business you’re using those tools, but not on the warehouse side of things. So to roll out those system for the warehouse to use can be quite a complex challenge and project for businesses as well.

[00:09:20.760] – Speaker 1
And I think it’s an important point to make because what people, again, you think of that audience member of someone who, like Charles Fallon, like, I don’t know anything about technology, right. But I know enough to be dangerous. And then I also know enough that I would be involved in decision making. So you could, the VP of operations would be someone like that, right? Well, that person doesn’t understand going into a project, even if they’ve done a project like this before, why you would decide to make a development choice versus some other way of solving the problem. We often hear in the software world, they market, hey, this is a, this is a configuration. There’s configuration only and there’s no development because development equals customization.

[00:10:11.110] – Speaker 2
Correct.

[00:10:11.670] – Speaker 1
And what scares people about customization is the inability to upgrade when customization. I don’t know if you have any thoughts on that.

[00:10:19.710] – Speaker 2
That is totally true. And there’s a lot of our stories around customization. A project that started to be sold.

[00:10:24.560] – Speaker 1
Horror stories.

[00:10:25.370] – Speaker 2
Oh, yes. And that became huge, huge things that are not even close to the original software. When you buy enterprise solution, you need to remember that you bought this specific enterprise solution. You’re not supposed to make it a completely different solution out of it. You buy it for a specific purpose. So let’s use it for that specific purpose. You can adapt it to your business, but your ERP shouldn’t become out of the blue a completely TMS system, for example.

[00:10:56.050] – Speaker 1
Right? So the key is when you’re, we have developers on staff, you, of course, are not only the senior, you’re the boss, you’re the coolest of them all. But the idea isn’t that, well, you’ve just bought an ERP or you’ve bought a WMS. Now let’s go add 50% more to the code base with new features. I mean, if you’re going down that.

[00:11:24.550] – Speaker 2
Path, it’s a risk.

[00:11:26.310] – Speaker 1
You either bought the wrong system and that doesn’t match your needs, or you are now taking this system. And in order to avoid buying another system or finding a more comprehensive solution, you are trying to Frankenstein Monster.

[00:11:42.620] – Speaker 2
The Frankenstein scenario is a real thing. We see it a lot in the industry, one system that is more flexible than the others start having more development into it to adapt for the other systems. So that goes into the integration piece of things where we see this a lot. Your system that was initially just a WMS is almost becoming a middleware for all the other solution around it because.

[00:12:04.990] – Speaker 1
It’S more flexible, because it’s easier to code in it. Correct? Correct. That’s really interesting.

[00:12:09.590] – Speaker 2
And it’s hard to convince customers sometimes because my goal as a developer at Lynn, it might seem weird, but I want to do the less development as possible.

[00:12:20.700] – Speaker 1
Exactly.

[00:12:21.770] – Speaker 2
That’s my sole goal. I’m always trying, trying to decline when doing development or seeing what is the best option. Should that feature belong into WMS? Should it belong into the ERP? Because for the customer, you should put the feature where they belong.

[00:12:35.940] – Speaker 1
That’s a really great point, that when you are a developer on the implementation side of the world, your goal is to do no work, your goal is to be fired for being useless.

[00:12:51.110] – Speaker 2
Correct? Yeah.

[00:12:52.040] – Speaker 1
And that, like you said, that sounds funny, but actually the rationale behind it is there is no such thing as a zero development implementation. There’s no such thing. It will not happen and it should not happen.

[00:13:06.630] – Speaker 2
Correct.

[00:13:07.270] – Speaker 1
But just because there will be development doesn’t mean that you need to let it run amok.

[00:13:14.550] – Speaker 2
Correct. And we’ve seen it with the creation of all those systems. The enterprise solution world is a quite new era when you think about it. It didn’t exist 200 years ago. And solution, when they were built, one of their best selling point was you can do whatever you want with it. It’s not because you can that you should do it. And that’s where a lot of bad decisions were taking in the past, where systems were becoming too big for their own good. And that the perfect example for that is Excel. With VBA, you had a trend back in the days where everybody was building their own excel and they were boosting it up completely. And at that point it was so big that it was hard to maintain. It’s the same thing with the enterprise world. It’s not because you can’t do whatever you want with it that you should actually do it.

[00:14:02.050] – Speaker 1
So do you find that that’s changing or do you find that still quite a common way of thinking?

[00:14:10.390] – Speaker 2
It is still a quite common thing of thinking, a way of thinking, but it is changing more and more. And now we have a lot more different solutions that are more niche as well. So people are getting used to adapt different solution and putting them together. So instead of having one big solution that does it all. You have quite a different set of tools that you can interact with it. And even, for example, the big players of this world, like SAP has a bunch of modules. Well, each of those modules are in itself their own system. They’re just all integrated together.

[00:14:48.600] – Speaker 1
But when you look under the hood of these different modules, let’s say if we take SAP, you look under the hood of these modules. They weren’t built at the same time. No, they weren’t built by the same teams. But is the code base largely consistent in terms of at least presentation? And are there common elements to it? Like I contrast that with, we all know of very, very good people, very good systems, very successful companies who in building out modules just went, acquired a company, right? Correct.

[00:15:30.470] – Speaker 2
Yes.

[00:15:30.870] – Speaker 1
So that happens a lot. I’ll acquire a warehouse management system that I will now sow onto my ERP and I’ll say, look, I have this functionality and at least, at least immediately, if not forever, that wms. If you looked under the hood, the code base would look completely different from the ERP’s codebase. Now I’m just curious, would that be something we would see with SAP?

[00:15:59.700] – Speaker 2
I couldn’t tell with SAP exactly because I’ve never seen under the code, but I would expect such a big company that they would keep it uniform because the more uniform you have it, the less risk you have. And big solutions like this risk is an extremely important factor to consider in.

[00:16:14.590] – Speaker 1
And would you say then, so I would think, let’s say just to pick randomly, Microsoft, we know Microsoft’s FNO product, their big enterprise level ERP, they went out, they bought a WS called Blue Horseshoe. They appended it and that’s now their wms. It’s a fairly decent little system. I mean it’s not a bad wms. I wouldn’t say it’s SAP level of warehouse capability, but it’s a good system. At what point would you spend the money, do you think, to re engineer the code base so that it looks more like the f and O code base?

[00:16:56.050] – Speaker 2
What we’re seeing in the industry mostly is when you see the new major release, a new upgrade of the system, that’s where they completely, the rewrites are happening. Yes, correct. So when Microsoft went from navision to business Central, they took a bunch of different systems and mostly nav, but different solution as well, and they rewrote it into the new code base that they had. That was Al for Business Central. So they’ve rerolled the full code to adapt to the new solution. So when they build those new solution, they take the best of each of them and they put it on a uniform level.

[00:17:30.340] – Speaker 1
Ah, that, well that makes sense. Which makes your job ultimately easier, because then you can, you yourself and your team have, have been able to broaden the range of systems that you can address. Yes, because you aren’t caught in opening the hood of one of these little Pandora box and say, what the hell? What the hell is this? I don’t understand anything.

[00:17:55.790] – Speaker 2
That is correct. And we’ve seen it happen on the ERP side in the last ten years. And now on the WMS side of things, it’s happening as we speak. We know a lot of companies are putting a lot of money into new era of WMS that are supposed to be easier to go in, easier to put in place. So it’s going to be really interesting to follow this along and see what development tools will we have access. In the past years, the trend was the local no code that was really, really popular. That’s how power automate became really popular. But I don’t feel on the WMS scale it’s flexible enough. Something that we need to think about is we have more and more people going into college, into computer science degrees. This is one of the like fastest growing workforce that you have. So it’s easier to find somebody that knows how to code than somebody that knows how a warehouse works.

[00:18:58.140] – Speaker 1
Right, exactly.

[00:19:00.110] – Speaker 2
So I feel those new WMs will need to think about this when they develop their new development tools. Maybe the local no code is not the right thing to do. Maybe going full code is better because your workforce that can work with your system is going to be easier to find.

[00:19:15.730] – Speaker 1
Right. You’ll find more coders than you will qualified warehouse managers. Correct, correct. Well, look, this has been terrific. I think the key for me when we were chatting earlier is I wanted people to understand the kind of business decisions that lead you to actually, quote, unquote using that horrible term, customize your system. And why developers, even in an environment where we say no customization, actually still end up being critical parts of an implementation of a new piece of software for an enterprise. So I really appreciate the conversation, Nicola.

[00:19:58.250] – Speaker 2
Thank you for having me.

[00:19:59.090] – Speaker 1
Have a great weekend.

[00:19:59.870] – Speaker 2
You too.

[00:20:00.380] – Speaker 1
All right.

 

 

Let’s build world-class infrastructure together.

Book a Consultation

Are you ready for logistics automation?

Take our readiness quiz to find out!

Begin Assessment