Best thing that helped in learning was finding a local business, and solving their problem. Even if you do it for free just to break in. Building and deploying an app that is actually used by a business helps beyond giving you something to put in your portfolio. You can now speak to something you’ve done. The problems you solve along the way to get to that finished product is, arguably, even more helpful than having it on your resume. Hard work, time, persistence, and some form of finances to support you through the struggle. I took so many L’s to get the W. And don’t get comfortable when you land the job. Bust your ass and don’t forget to build connections along the way.
One thing is for sure….the issues spreading from junior developers not being prepared enough is not just relevant to the tech sphere, it’s a general education, lack of preparedness, and culture issue effecting young professionals across many industries. More precisely it’s not a tech industry issue, it’s a general technology issue breaking down how deeply and effectively we are learning core materials and principles (consumption versus creation and problem-solving).
One of the issues that I have with how a lot of generative AI tools are implemented is that they are good at achieving a specified task, but do very little to build a knowledge base for the person prompting it. The example I think of is for Linux: you can ask for information on a specific package, and it will give it to you, and you can ask for examples of how to use it, too. But there is no centralized location for those answers. You can read back on old chats (or re-ask the same question and retain nothing), sure, but I would rather just find the docs for the package and reference them directly at that point. Won't have to worry about hallucinations with that, either. And I know that the info is up to date. Its in that process that I think that using chatbots for learning can actually be detrimental. It makes you quicker to build, sure, and likely building something that works. too. But engineering is more about what happens when things don't just work, and that is harder. I feel like leaning too heavily on AI to build leads to more nefarious mistakes that become harder to fix because the foundations of the initial work done are shaky. Less internalization of good software building practices, debugging steps, and deployment is required. And maybe code generation and the ability to take an entire codebase into context will become good enough for that to genuinely not matter but that has not happened yet. I see juniors and students looking up the same commands to update npm packages with legacy deps, or clean build their project, or so on. They just never have to learn it because prompting the chat in-IDE is not enough of an inconvenience as googling it is. Weird times.
Love how he says the easiest way to spot a junior is aggressive display of superiority. Did he not re-read his own article and see the irony? Some people lack self-awareness. Juniors have problems, but far too many asshats think that because they have a title of "Senior" or whatever, that people should bow down to them. No.
Those requirements for a junior developer are more like senior developer requirements, but I suppose that's the joke. I can't think of anything a senior developer should know in addition to that apart from attending more meetings and ranting about the good old days before development became overly dependent on frameworks.
My thing with those long lists of things you must know is that, by themselves they can be overwhelming. In contrast, on the actual job, you see how they all come together and are fairly basic, representative in even just a single application, including to what actual depth. For example, you will know VCS: to the extent of git initing a repo, committing, knowing branching, maybe how to rebase. If you ever have a fire, how to cherry-pick, tag. Basic stuff. For ORM, that is just encompassed with creating the REST application, which would account for API development. For security, unsure what the post really wants, but obviously only allowing certain accounts to query certain endpoints of the API, perhaps integrating with LDAP to facilitate this. For testing, that just comes with the REST application. For containerization, same thing, goes with testing locally. Though, IRL this can go to hell at times when you have annoying crap like Oracle integrations, in my experience. Server management is a bit "eh." You're not a sysadmin, that's a different job role. You obviously should know how to restart applications, testing connectability via netcat or whatever firewall logs you may have, provided you even have access. Similar for database management. Usually that's also its own team, though it helps to at least have a basic understanding of SQL (and in part your ORM) so that you don't make crap calls. E.g., if it was Django, select_related tables you will use to avoid double queries. Programming language just comes with building the application as well. All in all, a lot of requirements, but they are all encompassed in one application. The real annoying parts come with the specific workflows at the given job that just suck. Regarding junior devs and "get gud", yeah, but per the above, doing it all on your own is pretty crap. The junior should still exist, and be guided through the things at a decent pace. Expecting everything beforehand just seems to blur the lines between junior and normal, and normal and senior at times, where the only difference is pay. Edit: also lol at the "evolution" and "new normal" yeah, new normal, more responsibilities, but same pay. Just wonderful.
Why does the "frontend, backend or operations" distinction feel so utterly stupid to me? And why is it even here... It has nothing to do with the topic. Also according to this article I'm a junior operations person (lol) You know, this job is just as hard for seniors, we just have experience and know this is the reality. The author would know, had this not entirely been just self-projection.
If you’re a junior developer wouldn’t ai just technically mean you can become better than a junior developer very easily bc ai can do what you previously did, meaning you can start looking into the bigger picture?
I am teaching myself computer science because I am interested in learning computer science. I hope that I will be able to turn it into a career, but frankly that’s beside the point. It’s becoming an obsession and I simply want to do it for myself.
Speaking for myself your videos have been great. I think everyone needs that bit of tough love and a reality check when it comes to software engineering/ web development. As you said, it takes grit and a drive to keep learning and honing your craft. Like a writer or painter. You don’t get good by doing nothing. You get good by coding. Always pushing yourself. That was something I just learned a few months back and now I’m more determined than ever to keep learning. To develop deeper knowledge and actually be confident and content that I can code. All in all, keep up the great work. :)
Due to better tooling and resources, a jr dev of today will have to bring a lot more value than 20 years ago (this is not new, pick any 20-year gap). It used to be knowing OOP and DSA was enough; now you have to actually know how to do something useful. IOW, the high performers are achieving more than ever, which makes the gap to low performers look like a chasm.
what is the difference between an engineer and app developer? is there anything wrong if I want to be a web dev to build websites and use that knowledge to build businesses or should i strive for something else? Thanks
Building stuff you care about that others will use... It hurts when it doesn't work out. Takes time to get use to the pain of failing :/ I think this is why people don't want to build serious stuff, tutorials feel better
Hey guys, sorry if this is not the right place for this. I am an aspiring junior dev (via odin project), one thing i realise as i am coming to the end of the course is that i am not really sure what it is that i would be doing as a junior. can anyone give some advice on what i would actually be doing as a junior dev? also i took the front end course because it was javascript, but cant lie i dont have an aesthetic bone in my body so i guess i am going to end up looking into backend. right? thanks for any help
people are looking for full stack more and more now. So to compliment front end, look at solid principles, relational databases. In an interview for junior role, if you could demonstrate a good understanding on the basics of these things, and put together something like a mock Hotel booking service with a front end you can book a room or check for availability, that could go a long way. As a junior it's just about seeing how good you are at learning and picking things up and potentially becoming self sufficient, because seniors are looking for people to ease the burden placed on them. You won't be expected to know company infrastructure inside out, it would be up to seniors and project managers to give you good quality requirements for you to be able to work on. That's my take anyway
Very bad article - but the bar for juniors has never been higher for sure. It's never been harder also because the velocity now with AI tools is faster than ever
We r all devs now. Im a non technical founder, but with the help of ai tools, i can build complex apps. I love this democratization of software development.
Best thing that helped in learning was finding a local business, and solving their problem. Even if you do it for free just to break in. Building and deploying an app that is actually used by a business helps beyond giving you something to put in your portfolio. You can now speak to something you’ve done. The problems you solve along the way to get to that finished product is, arguably, even more helpful than having it on your resume.
Hard work, time, persistence, and some form of finances to support you through the struggle. I took so many L’s to get the W.
And don’t get comfortable when you land the job. Bust your ass and don’t forget to build connections along the way.
Felt like a junior himself wrote this.
Agree, very disgusting article by arrogant individual.
100%
80% fear mongering 20% gate keeping 😂
This same person would probably make a horrible leader or mentor
100% facts. It's over for those who aren't great or highly specialized
Even those who think that they have experience are juniors when they move to another company
One thing is for sure….the issues spreading from junior developers not being prepared enough is not just relevant to the tech sphere, it’s a general education, lack of preparedness, and culture issue effecting young professionals across many industries. More precisely it’s not a tech industry issue, it’s a general technology issue breaking down how deeply and effectively we are learning core materials and principles (consumption versus creation and problem-solving).
One of the issues that I have with how a lot of generative AI tools are implemented is that they are good at achieving a specified task, but do very little to build a knowledge base for the person prompting it.
The example I think of is for Linux: you can ask for information on a specific package, and it will give it to you, and you can ask for examples of how to use it, too. But there is no centralized location for those answers. You can read back on old chats (or re-ask the same question and retain nothing), sure, but I would rather just find the docs for the package and reference them directly at that point. Won't have to worry about hallucinations with that, either. And I know that the info is up to date.
Its in that process that I think that using chatbots for learning can actually be detrimental. It makes you quicker to build, sure, and likely building something that works. too. But engineering is more about what happens when things don't just work, and that is harder. I feel like leaning too heavily on AI to build leads to more nefarious mistakes that become harder to fix because the foundations of the initial work done are shaky. Less internalization of good software building practices, debugging steps, and deployment is required. And maybe code generation and the ability to take an entire codebase into context will become good enough for that to genuinely not matter but that has not happened yet.
I see juniors and students looking up the same commands to update npm packages with legacy deps, or clean build their project, or so on. They just never have to learn it because prompting the chat in-IDE is not enough of an inconvenience as googling it is. Weird times.
Love how he says the easiest way to spot a junior is aggressive display of superiority. Did he not re-read his own article and see the irony? Some people lack self-awareness. Juniors have problems, but far too many asshats think that because they have a title of "Senior" or whatever, that people should bow down to them. No.
Those requirements for a junior developer are more like senior developer requirements, but I suppose that's the joke. I can't think of anything a senior developer should know in addition to that apart from attending more meetings and ranting about the good old days before development became overly dependent on frameworks.
@4:00 Quite extensive list for a junior, many thing on this can be learned on university or from bootcamp, they take time to gain experience.
Awesome video Don. You always get to the point instantly.
My thing with those long lists of things you must know is that, by themselves they can be overwhelming. In contrast, on the actual job, you see how they all come together and are fairly basic, representative in even just a single application, including to what actual depth.
For example, you will know VCS: to the extent of git initing a repo, committing, knowing branching, maybe how to rebase. If you ever have a fire, how to cherry-pick, tag. Basic stuff.
For ORM, that is just encompassed with creating the REST application, which would account for API development.
For security, unsure what the post really wants, but obviously only allowing certain accounts to query certain endpoints of the API, perhaps integrating with LDAP to facilitate this.
For testing, that just comes with the REST application.
For containerization, same thing, goes with testing locally. Though, IRL this can go to hell at times when you have annoying crap like Oracle integrations, in my experience.
Server management is a bit "eh." You're not a sysadmin, that's a different job role. You obviously should know how to restart applications, testing connectability via netcat or whatever firewall logs you may have, provided you even have access.
Similar for database management. Usually that's also its own team, though it helps to at least have a basic understanding of SQL (and in part your ORM) so that you don't make crap calls. E.g., if it was Django, select_related tables you will use to avoid double queries.
Programming language just comes with building the application as well.
All in all, a lot of requirements, but they are all encompassed in one application. The real annoying parts come with the specific workflows at the given job that just suck.
Regarding junior devs and "get gud", yeah, but per the above, doing it all on your own is pretty crap. The junior should still exist, and be guided through the things at a decent pace. Expecting everything beforehand just seems to blur the lines between junior and normal, and normal and senior at times, where the only difference is pay.
Edit: also lol at the "evolution" and "new normal" yeah, new normal, more responsibilities, but same pay. Just wonderful.
Why does the "frontend, backend or operations" distinction feel so utterly stupid to me? And why is it even here... It has nothing to do with the topic. Also according to this article I'm a junior operations person (lol)
You know, this job is just as hard for seniors, we just have experience and know this is the reality. The author would know, had this not entirely been just self-projection.
If you’re a junior developer wouldn’t ai just technically mean you can become better than a junior developer very easily bc ai can do what you previously did, meaning you can start looking into the bigger picture?
Good take. Article was dog 💩
I am teaching myself computer science because I am interested in learning computer science. I hope that I will be able to turn it into a career, but frankly that’s beside the point. It’s becoming an obsession and I simply want to do it for myself.
Same bro 😎
Speaking for myself your videos have been great. I think everyone needs that bit of tough love and a reality check when it comes to software engineering/ web development. As you said, it takes grit and a drive to keep learning and honing your craft. Like a writer or painter. You don’t get good by doing nothing. You get good by coding. Always pushing yourself. That was something I just learned a few months back and now I’m more determined than ever to keep learning. To develop deeper knowledge and actually be confident and content that I can code. All in all, keep up the great work. :)
That is actually not a good assesement of a junior developer.
Most junior developers can't do 1/4 of what is written in those lines.
Due to better tooling and resources, a jr dev of today will have to bring a lot more value than 20 years ago (this is not new, pick any 20-year gap). It used to be knowing OOP and DSA was enough; now you have to actually know how to do something useful.
IOW, the high performers are achieving more than ever, which makes the gap to low performers look like a chasm.
what is the difference between an engineer and app developer? is there anything wrong if I want to be a web dev to build websites and use that knowledge to build businesses or should i strive for something else? Thanks
If you're just looking to learn enough to build something for yourself, it doesn't matter.
@@DonTheDeveloper what if you want to get a job also
Love your takes Don!
Building stuff you care about that others will use... It hurts when it doesn't work out.
Takes time to get use to the pain of failing :/
I think this is why people don't want to build serious stuff, tutorials feel better
Hey guys, sorry if this is not the right place for this. I am an aspiring junior dev (via odin project), one thing i realise as i am coming to the end of the course is that i am not really sure what it is that i would be doing as a junior. can anyone give some advice on what i would actually be doing as a junior dev? also i took the front end course because it was javascript, but cant lie i dont have an aesthetic bone in my body so i guess i am going to end up looking into backend. right? thanks for any help
people are looking for full stack more and more now. So to compliment front end, look at solid principles, relational databases. In an interview for junior role, if you could demonstrate a good understanding on the basics of these things, and put together something like a mock Hotel booking service with a front end you can book a room or check for availability, that could go a long way. As a junior it's just about seeing how good you are at learning and picking things up and potentially becoming self sufficient, because seniors are looking for people to ease the burden placed on them. You won't be expected to know company infrastructure inside out, it would be up to seniors and project managers to give you good quality requirements for you to be able to work on. That's my take anyway
Good points, Don.
I refuse to learn react or put it on my resume 😂 the same for python.
Python is easy
I think this article may have been written by AI, haha
yes, they are
the bars are getting a lot higher now.
I really like your review of this post. I read a lot of such a posts and they dont put anything valuable to web ... Just waste of a time...
There is no longer room for mercenaries.
Very bad article - but the bar for juniors has never been higher for sure. It's never been harder also because the velocity now with AI tools is faster than ever
I haven’t been really. Doing the past 3 years, is everyone using AI tools now ?
@@Cognitoman AI tooling is a decent improvement, but they're still limited in the scope of changes they can suggest
Love git rebase. It’s a great way to spend time.
We r all devs now. Im a non technical founder, but with the help of ai tools, i can build complex apps. I love this democratization of software development.
Lol. Link your complex app.
@@naranbaz sure, and we are all musicians, and architects. Without looking at the term, be honest, what does "complex" means?
@changoviejo9575 ua-cam.com/users/shortsgKaXNpwQz5Q?si=5H6t8lE0MTW35squ im building a freight exchange, it is not completed yet, but im getting there.