DevQuestions with Tim Corey
I am Tim Corey. I teach coding online and my inbox is full of questions from current and future developers. I wish I could sit down with each of you and share the answers I know will help you go further, faster in the world of development. This podcast is the next best thing. On this podcast, I will answer the biggest questions people are asking! Send us to your suggestion for a future Dev Questions at https://suggestions.iamtimcorey.com/ To keep the podcast coming, like, subscribe, rate, and share it with your friends and colleagues. See why thousands of students have chosen to learn to think and code like a professional developer at www.DevForge.com.
DevQuestions with Tim Corey
175 Is Global Demand for Developers Declining?
Use Left/Right to seek, Home/End to jump to start or end. Hold shift to jump forward or backward.
Is there a limit to the amount of software development that the world needs? Will AI reduce how many software developers the world needs? Will outsourcing reduce the needs for development in the US and Europe? These are the questions we are going to be answering in this episode of Dev Questions.
Website: https://www.DevForge.com/
Ask Your Question: https://suggestions.iamtimcorey.com/
Sign Up to Get More Great Developer Content in Your Inbox: https://signup.iamtimcorey.com/
Welcome to the Dev Questions Podcast with Tim Corey. Join us each episode as we tackle the questions you are asking about a career in software development, understanding the industry, and new technology. If you're just starting out or you want to grow stronger as a developer, this is the place to get your questions answered. Now, here's your host, expert developer and online educator, Tim Corey.
SPEAKER_02Is there a ceiling to the global demand for software development? Is there going to be a cap where we just run out of things for developers to do and we end up having too many developers and not enough work to do? That's the question that's come up recently, especially with the rise in AI. So let's talk about it in today's episode of Dev Questions. So, you know, with AI coming out, one of the questions that came out a lot and has been continuing to be asked is: Is AI going to replace developers to the point where we're not really needed anymore, or at least not new developers, where we only have senior developers and that's it? Or something like that. And the answer is not. It depends. The answer is no. No, it's not. The market cap for developers is effectively infinite. Okay. So there is not a cap. In fact, we've seen this before. Because in the US, one of the things that came up, oh, 10, 15, 20 years ago, probably 15 years ago, was the idea of outsourcing because the dollar was so strong compared to other places in the world. And so the idea was: hey, we can get rid of our entire software development department, or most of it, and instead replace it with people who are from countries that have a lower wage system. And so the question came up: are software development in the US done? Or is it done in the US and Europe because there's cheaper areas in the world that have lots more people, and so we have lots more software developers. And so, you know, or are we done as developers? And that didn't come about. In fact, the amount of need for software developers is at an all-time high and it's only growing. So outsourcing didn't stop it in the US or in Europe, and AI won't either. So let's talk about why these tools and these, you know, even things like low-code, no code solutions, like replace developers. No, because they haven't for the past 25 years. Yes, we've had no code solutions for 25 plus years. They haven't replaced developers. So let's talk about it. Okay. And I quote from Charles Lamana, a corporate vice president for Microsoft's Power Platform, which is the low-code, no-code platform. And he says that over the next decade, there will be a 1 million developer shortfall. Okay, let me get that again. Over the next 10 years, we're going to be short one million developers, meaning there's going to be a gap in the market because there already is a gap in the market and it's widening, not shrinking. So even with the rise of AI, even with the rise of more powerful low-code no code, even with the globalization of software development, we're going to still need more developers. Okay. So my opinion is that the software development is effectively unlimited. The need for it is effectively unlimited. Now, let me talk about my reasons why. Okay, so first, have you ever worked for a company on a software project that was fully completed? All right. So I've worked for a number of companies, both as a consultant and a full-time employee. And almost every company has that one big project they work on and plus some smaller ones, but there's just one big piece of software they work on. Have you ever seen a company? Now, again, I've seen hundreds as a developer. Have you ever seen a company where they have kind of perfected their software and it's done? As in, they've run out of bugs to fix, they've run out of new features to add. It's just perfect. Now, I don't mean launched or declared production ready, or even that the management said we're done working on it. I mean that's actually done, fully completed. No bugs, no desired features, features, no edge cases, no missing platforms to deploy it to. The answer is no, it doesn't happen. Okay? Now, yes, if a project is so small that it's insignificant, then sure, you can say it's feature complete. But even then, that's not really usually true. For example, Microsoft Notepad, okay? The text editor that is so stupid simple that it's practically not changed in the past two decades, right? Well, actually, it's been getting updates quite regularly. In fact, it now has a dark mode, it now has support for UTF-8, it now has the ability to have tabs. Like the list goes on of the things that Notepad can now do, even though Notepad is one of the simplest text editors on the planet. So even small projects typically have things that you can improve on. So that's a first reason. But second, are the number of things that use computers, processors, et cetera, growing or shrinking? Well, they're growing exponentially. Toasters have CPUs now, refrigerators now connect to the Wi-Fi. In my backyard, I have a personal weather station that evaluates my local conditions. It networks with other stations in the area, and it generates a customized weather report for my house. Okay? So we're adding new things that didn't exist five, 10, 15 years ago. We're adding new ways to connect and work together. You think about all the new innovations coming out, and a lot of them rely on more processors. In fact, when the pandemic hit, one of the big things that slowed a lot of stuff down was the lack of processors available. And because of the lack of processors, things like car manufacturing slowed down and uh digital signage and things that you wouldn't even think about necessarily, but they all take CPUs. In fact, there's hundreds of CPUs in a modern car, even. So we keep adding new devices and new features to existing devices that take software development. And again, coming back to point one, have you ever worked on software where it's complete? And the answer is no. So we have an ever-growing list of software applications that need more work. And then we have an ever-growing list of devices that need software for them. And then third, as software development gets easier, wait, you'd think, wait, that means that more people can get in there for they have less things to do, right? No. As software development gets easier, more companies that have had to rely on off-the-shelf solutions can start building their own custom solutions. For instance, because I've been able to do that already, I'm a software developer, I've built solutions that have helped me grow my business well beyond what it would have grown to if it had not been, if I had to use off-the-shelf solutions. So just being able to move that down into a smaller and smaller business will allow many, many more businesses to start building their own things, which means more software applications, which again are going to need more updates, more features added to it, more bugs fixed, and that's just going to spread and grow. It feels like almost everything today has some type of software system or app that runs it, connects to it, and operates with it. And if you look at those and think about are they perfect? No. Are they great? Half of them don't seem to be. Do they need improvements? Absolutely. What we need is more software development, not less. So we're growing in the number of things we can do. We're growing in the number of level of accessibility for software developers to get into this field. And so with that, we're also growing who can do software development as far as businesses and even individuals that might need something. And so, because of that, the need for software developments is growing, not shrinking. Now, I've covered AI before, but let's talk briefly about AI because there's a misconception that AI is going to replace software developers. It's going to start writing its own code and just create these amazing things. No, no, it won't. It just won't. Because the fact that AI does not actually reason. What's the number one skill a software developer needs in order to really grow into a senior developer? It's the ability to apply logic, to be able to look at a situation and say, okay, here's the pieces you need, and here's what the lookout for. Here's the best practices, here's the things that we avoid. Here's the choices we can make based upon a situation in order to make the right choice for that situation, for that team, for that company in order to succeed. Because we don't have one solution, we have hundreds of solutions. And so a software developer's job is to choose the best one for that particular situation. AI can't do that. AI doesn't, AI doesn't reason. What it does is it just copies. And it may look like new invention, but the reality is it's not new invention, it's just copying and tweaking. And so it doesn't take into account all the variables that we do as developers. And so it can come up with some really great fine-grained solution because of the fact that it's just copying what 50 other people have already done and kind of tweaking it a little bit to make it its own, but really it's just what others have already done. It's not coming up with new and innovative ways of doing things. Ask it to build something in new language or in a new version of language, and it doesn't know how to do that because it doesn't know how to innovate. It knows how to copy. Well, that's not good enough to build new solutions and new systems and to fix bugs and all the rest. It can do some great things. AI can really help developers move faster. But again, we have a developer shortfall, not a developer surplus. And so when it comes to software solutions, even if we have software that helps us do more, that doesn't mean that it works us out of a job. It just means that we reduce the amount of shortfall, how the shortfall really affects us, rather than replacing people. Now, there is a reality where some individuals may individually lose their job. It absolutely can happen because that's a very specific, you know, a company may make a bad choice. We've seen companies that said, oh, AI is going to replace humans. Let's just kick all the humans out now and hope the AI can come in and pick up. That doesn't usually work that well. But even in those circumstances, there will be other jobs that are open because AI can't do the entire job. And so, yes, specific cases, anecdotal cases may pop up. But overall, as an industry, AI is not going to be the thing that replaces developers, just like outsourcing wasn't the thing that replaced all US and European developers. And just like low-code, no code didn't replace all developers. So we've seen this before. This pattern happens over and over again. And while AI is a, in some ways, a game changer, the reality is it's not nearly as big of a game changer as people think it is. And it definitely isn't going to just become Skynet and replace all humans. Okay? So yes, there is effectively no ceiling to the growth potential for software development. Now, yes, logically, there is one, because you know, we can't have 9 billion developers with only 8 billion people in the world. You know, that wouldn't make sense. It wouldn't even make sense for everybody to be a developer. But you know what? That's not what we're seeing anyway. What we're seeing is that being a developer is hard. It's a hard job. It's not just something that anybody can do with no effort. It takes work like any other job. And not everyone wants to do that type of work. And so there is a shortfall of developers. And so you should feel confident knowing that this field is going to be around for a very long time, if not forever. Okay? So that's my thoughts on software development if the jobs are not going to be there in the near future. All right, thanks for listening. And as always, I am Tim Corey.
SPEAKER_00Thank you for joining us for this episode of Dev Questions. Tim is committed to making it easier for you to become a developer. If you would like to help make more content like this possible, please like, subscribe, rate, and share Dev Questions. You can also send your questions to questions at IamTimcore.com. Until next time, remember, you are too smart and your time too valuable to waste it making all the mistakes Tim did. When you're ready to learn to think and code like a professional developer, head over to imtimcore.com and enroll in a course.