This is a response to a video on my main YouTube channel, Dev Leader, where someone was asking about my thoughts 6 months later. Are junior developers ONLY thinking about AI? Are they sabotaging their own learning?
📄 Auto-Generated Transcript ▾
Transcript is auto-generated and may contain errors.
Hey folks, we are going to the comments. This comment is actually on my main channel, Dev Leader. This person was responding to a video that was about um junior developers basically only knowing AI. And this is a response video I had where people were kind of making that claim. So um they were saying like what's your opinion on this 6 months later? Um the next part of their message kind of goes into basically being able to build something uh having no prior like programming knowledge for something at work and they said they use chat GPT and Grock to do it. Um there's some Python some database stuff. They said it's for a legal services branch. um they kind of called out like why when facing issues like because they don't have the background in software development they didn't they didn't know the right things to
ask and because like the LLM is not suggesting those things like they're saying then I kind of like it's a it's like a vicious cycle right they don't know to ask the LLM is not telling them to ask so they're like what am I supposed to do right um so they kind of wrap it up by saying like they have something that's working. They're like very impressed with the fact that they've been able to do something like that. They explicitly say like, "I never thought I would be living in this era," which is I think that's kind of cool, right? Um but then they wrap it all up by saying, "If only I knew how it all works, it would be faster than this hitand- miss approach." That's going to be kind of the theme of this uh sort of response that I'm going to do.
So, their first part is really around um what is my opinion 6 months later with respect to this response video. So before I get into that, friendly reminder, leave comments below if you want stuff answered for this channel. Happy to go through that. If it's software engineering or career related or I guess AI topics, too. Um, and if you're not comfortable leaving comments, send a message to Dev Leader on social media or Nick Causantino on LinkedIn. So my opinion 6 months later from the the video they're talking about, not really that much different. Um, it was a response video too. So I think that uh for junior developer like I think the theme of junior developers only knowing how to use AI stuff that has not really been my experience. Uh I have junior developers on my teams that like I think they're probably using AI tools when they can but um I know from talking with them they're certainly not just like like vibe coding or like only using AI.
I think it's actually quite skewed the opposite way. like some are kind of doing that at work and I work at Microsoft. We have co-pilot. It's not like like we we of anyone would be I feel like the teams that would be using it like extremely heavily. But like it's just it's not really happening with uh with the junior devs I have. Um, the thought I have around this though is like I think that there's just kind of like a wave of new software developers coming in where they're like the and I I think this is a positive thing. It's I I I want to frame it as a positive thing. I think the barrier in terms of being able to have something up and running is much lower. And what I mean by that is like there's a from from doing content creation and stuff for a while and from trying to help mentor people and you know get people into software engineering for like over the last decade.
I I feel like most people are their are their sort of biggest enemies or their biggest barrier to even getting started. You know, they talk themselves out of it. Hey, like I'm not smart or that's going to be too complicated. I could never do that. Like I don't know math. any any excuse, right? So, I've spent a lot of my my energy, my time like trying to tell people like, "Hey, if you think it's interesting and you want to try it, like why not try to look into it? Why not try to dabble in it?" Like like you're you're the only person kind of stopping you, right? Like you might even find that you don't like it, right? It might not even be a skill thing. You might get into it and you're like, "Ah, it's not really for me.
I don't really enjoy the problem solving or the debugging parts." But that's like this has been a big part of my career and sort of outside of my career is just trying to help people like get into software development. And I think that with AI tooling, like even just having chat GPT, right, to be able to say like, "Hey, write me a little program that does whatever." Um, the barrier is lower to having something that's code that can run and and work. Now, I'm not saying it's like the best way to write code or this is the best way to learn or anything like that, but just around the barrier to entry lower. I think that's that's a reality is that people can try something and go, "Wait a second." Like this person even said like, "I don't know anything about coding." So, I think it's cool that people are able to have this opportunity.
What I don't like, and this is a tangent, I'm not going to go into this, but when people are saying, "Therefore, that means we don't need software developers because that's just not really the case." I guess I am going to kind of get into that towards the the latter half of this video, but my opinion in six the last six months has not really changed on this kind of thing. Um, I think that there's a wave of developers coming in that are kind of AI first and I think that that's interesting. Um, it's going to have its own pros and its own cons. I don't think that with this kind of stuff, I don't like just saying it's good or bad. I think that there's probably really good parts to it, right? The fact that you can have more people that are like lower barrier to entry getting started, I think that's great.
the fact that people can probably have more um more complex or working code that's like something that would have taken them way longer before. I think it's really cool that they can do that quicker now. But then we get into some of the cons like this person finished off, right? Like if only I knew how it all works, it would have been faster than this hitand- miss approach. Yeah. So like there's going to be stuff along the way where you're like, I don't even know what this is doing. I don't know why we're doing this. like that's not a good spot to be in because now this this system that you're building starts to become a bit of a house of cards, right?
So there's pros and cons, but this is very like new territory for us, I feel like in terms of the rate of learning or the rate of exposure to like code changes and almost like the um inverse of learning like people are like I don't have to learn this stuff and I can make code. So my opinion hasn't really changed in six months though. So the the next part here, so they're kind of talking through how they were able to do this. And um one of the things they said that I kind of want to talk through cuz I think that there's a I don't want to say it's an easy answer but maybe just like the framing might help but they say um you know but as they say as a complete ignorant I could not ask for them uh like the answers or the questions and the LLM didn't suggest them.
So what they're saying is like as they're working through this stuff, having the LLM build things, they don't even know the right questions to ask it. And like the LLM itself is not suggesting them. So they're like therefore like I can't really be effective. And I think this is there's two parts to this. One is I don't think that's necessarily true. I think there's a probably a simple thing that this person could do and probably anyone in this scenario could do. So we'll talk about that. Um but the second part is that like I think this is one of the reasons why if you have a background in software development then you've augmented your abilities like crazy if you can use AI effectively right cuz you know the right things to go ask it to tune things or to set some constraints or like to
avoid uh pitfalls and stuff like that cuz you've been building software you understand this stuff whereas someone who has not like they kind of let the LLM go run rogue and it's like it might it might do patterns that you're like I don't want that pattern but you're not going to know that as someone who's never done this stuff. So the um the other point that I wanted to make though is this person saying I don't know what to ask the LLM and the LLM doesn't suggest that. So let's let's go one step back from that. Right? you. This person is saying, "I don't know what to ask the LLM and it never suggests the things. So therefore, I can never ask." So why don't when you're getting it to build stuff, you could literally say to the LLM, I'm not a prompt expert by any means, so you could figure this out and optimize it.
But something along the lines of like um now that we're doing like you now that you've given me code for this last part of the system, could you walk me through why we made these design decisions and then could you give me a list of questions that I should be asking you in terms of uh architectural changes or design decisions so that I can start using those going forward, right? Like ask it the thing that you don't know which sounds kind of funny. the thing you don't know is the right questions to ask. So ask it what questions you should be asking as someone in the driver's seat. Like it seems kind of weird, but I think that's, you know, at least a starting point. And then you might not understand some of those things. Um it might give you some suggestions where you're like, man, I don't even know what that means in software development.
Cool. Ask it like ask it to expla and have it explain it to you in a way that's like very simple. And when you don't get it, ask it to give you different metaphors or different analogies for it. Like the you can use the tool in different ways aside from just like next line of code, please. So anyway, I think that there's a, you know, some room for this person to improve or if you're in this situation watching this and you're like, "Yeah, like I basically just, you know, vibe code or just get stuff output from LLMs and you're like, I keep hearing people say that I should be like asking the LLM stuff or like um trying to like change the constraints or optimize things, but like I don't really know what to ask." Ask it what you should be asking. And at least that's a starting point.
Um, and then I think like sort of one of the meta points with all this is like they did get something up and running that they were using in their workplace that's better than what they had. That's cool. I think that's I think that's cool. Um, one could argue and I know like I think there's plenty of examples of this on the internet now where it's like, yeah, this thing might fall apart or yeah, it might be built like crap or like, you know, it's not secure, whatever. It seems like I'm assuming it's some type of internal tool. They can iterate on it. Um, I I just think that it's interesting. Like I said, the barrier has been reduced where people can get up and running on stuff. So, uh, the final point though is just like again, I'm going to repeat their last statement. If only I knew how it all works, it would have been much faster than this hitand- miss approach.
So, for folks that are just like kind of relying on the LLM to go spit out, you know, the next set of changes, um, it it might feel like it is a fast way to work because your comparison is zero, right? from no software development capabilities to hey look I have this machine that can output code. Um I I think that if you keep doing that I'm sure that you can improve and get better. I'm not saying that you can't or that the tools won't get better. I think that you I think both of those will happen. You'll get better at prompting. you'll get better results even if your uh rate of learning and software development is slower perhaps and the LLMs will get better like things will progress in the right way but I do think that if you're looking to enhance that like
trying not to just get code output and then pausing for reflection right when you're just getting code output you're shortcircuiting a lot of like learning opportunity what you'll be learning that way is really like how to prompt effectively, how to give it the right information to debug and understand how to make the next changes effectively. So that is a set of skills. There's no doubt. But instead of having cycles in your back and forth at the LLM where you're like, "No, you got to fix this, no, you got to fix that." Like you can make that part more effective if you slow down a little bit and try to learn some of the concepts that are coming up.
So again, if you're not sure how to do that, what questions to be asking, just like take the opportunity, ask the LLM for a good set of questions to start with, and then when you're getting code from the LLM, instead of just rushing in to go have it implemented, like let me copy paste it, get the next error, send it over, instead of tightening that feedback loop, I would say slow it down. Try to make sure that you're learning about the changes that are coming in. I'm not saying you have to go learn like, you know, every concept all at once. Just slow down a little bit. Try to learn the things that you're that are new to you that you don't understand, right? So you have some amount of confidence increase with the code that's coming into your codebase and then go keep, you know, looping through that.
And at least that way you're getting a little bit more of a learning opportunity around what people might be calling fundamentals. Um, that's kind of what I would recommend. Uh, it's not like I don't know, this isn't like groundbreaking information. This isn't like rocket surgery or anything like that, but I do think that this is what I would recommend to people if you're going to be in the mode of like I want to be building AI first, like using the LLM first. So anyway, that's my response to this person. and I'll let them know that it'll be up on code commute. So, thanks for watching and I will see you in the next one. Take care.
Frequently Asked Questions
These Q&A summaries are AI-generated from the video transcript and may not reflect my exact wording. Watch the video for the full context.
- What is your opinion on junior developers relying mainly on AI tools for coding after six months?
- My opinion hasn't really changed in six months. While some junior developers use AI tools like ChatGPT, they are not solely relying on them. I see a wave of new developers who are AI-first, which lowers the barrier to entry, allowing more people to get started with coding, but it also comes with pros and cons.
- How can someone with little programming knowledge effectively use AI tools like ChatGPT to build software?
- If you don't know what questions to ask the AI, you can directly ask it to suggest the right questions you should be asking about architectural changes or design decisions. You can also ask the AI to explain concepts in simple terms or provide analogies until you understand. This approach helps you learn and use the AI more effectively rather than just getting code output blindly.
- What advice do you have for junior developers to improve their learning while using AI-generated code?
- I recommend slowing down and reflecting on the code changes instead of rushing to implement them. Try to learn the concepts behind the code, ask the AI for explanations, and increase your confidence in what you're adding to your codebase. This way, you gain fundamental knowledge and improve your software development skills alongside using AI tools.