I’m pulled from sleep as the soft melody of my alarm clock goes off a bit too early for my taste. Rolling over, I see that it’s 4:50 AM. I want to go back to bed, but, “If you want a job as a software developer, you have to put in the work,” I tell myself.
After I drag myself out of bed and the coffee is brewing, I pull out my phone to find some blog posts. “Use every spare moment to learn,” I think as I scroll through the articles. I start sifting through titles to see what I should read:
AI: The end of the Junior Developer?
Why development isn’t a viable career path anymore
The death of the Junior Developer
Employers no longer hiring without years of experience
Should I even keep going with this?
That was 6 months ago. I started my self-taught programming journey in January of 2024. I had a little HTML and CSS under my belt, but only enough to change some text and maybe the font of a website using the Inspector on Chrome. Now, I am employed as a full-time software developer and I couldn’t be happier with the work that I’ve started to do.
There are still jobs out there
Despite the blog writers and “doom-and-gloom” reporters, it is still very much possible to make yourself an employable developer without the need for an expensive degree or bootcamp. I am living proof. I won’t sugarcoat, the job market right now is tough. Especially if you’re trying to find something on LinkedIn between all of the fake job postings.
It will take you work, but it’s not impossible. During my journey of learning to code, I remember reading blog posts and thinking, “If these people know enough to get the job, they must be right, I’m wasting my time.”
If you’re on a self-taught journey right now, you know the feeling.
I’m writing this today to encourage you not to give up. There is a team, a company or a friend that needs YOU. Your expertise, unique perspective, or inexperience. That’s right, inexperience.
Your inexperience is an advantage
How can inexperience ever be an advantage? Why would we spend so much money on educating ourselves and exposing ourselves to new experiences if there was an advantage to not having done so.
Think about the last child you spoke to. Do you remember the ideas that they had, the uninhibited creativity that they exuded? There’s something about naivetĂ© that allows you to think outside the box. Without guardrails, this can waste a lot of time, or break things. But, with an experienced, supportive team, this kind of creativity will get you to new and innovative solutions faster.
You are not bogged down by years of “this is how we’ve always done it.” You don’t know “how the stakeholders always react to these kinds of ideas.” And this is where you have the opportunity to strike gold.
You still need to learn
I’m not suggesting that you are valuable because you have no skills. You still need to take the time to develop programming skills and knowledge so that you can be productive and valuable in a job. But, after you have a baseline of knowledge, finding the right job and the right team will allow you to continue to learn and grow as you create value for your team.
What should I learn?
My recommendation is that you should pick a language or framework and stick to it. As for which one you pick, I don’t think it matters much, as long as it’s a language that can create Full-Stack applications. The ability to learn Object-Oriented Programming in it is a plus.
I went with JavaScript. It’s not the best language for app building, but the frameworks that have come out around it (Angular, React, Node) allow you to write the database interface, API, and frontend all in one syntax.
Why stick to one? Well, the answer is simple. If you’re hopping frameworks you will waste valuable time learning new syntax rather than learning actual programming concepts. It’s a waste of time to re-learn how to format a for
loop if you already understand the concept.
Think about buying a course
If you’re serious about wanting to work as a software developer, you should consider shelling out a bit of money for a course. There’s plenty available online, but if you want to go the boot camp route, you can make that work too. With a course of some kind, you can tap into others’ experience, learn faster, and you never have to think about what to study next.
While it’s certainly not required, there’s no surer way to light a fire under your butt than to put some skin in the game. I went though Codecademy, and I’d recommend it to anyone teaching themselves.
The platform has a browser-based environment, so you can learn to code no matter what computer you have. They offer Professional Certifications and career pathways for pro members that give you something to legitimize yourself a bit. But, the best part of the program was how quickly they pushed you to creating projects.
Start building ASAP
If you really want to learn how to program, you need to build actual projects for two reasons. First and foremost, the only way to truly understand the concepts you’re learning is to see them in action. There’s no better teacher than experiencing and making your own mistakes. Second, building projects is directly applicable experience to what you will be doing in a programming job. Even if you’re developing a small project, you will be required to make educated design decisions, write readable code, and solve problems. What you build speaks far louder in an interview than any piece of paper you earn.
You don’t have to make a fully-featured SaaS, and it doesn’t have to be original. The idea can have been done thousands of times, but your solution needs to be your own, or you won’t learn anything. If you want to build a calculator, a typical learning project, don’t get on YouTube and search “how to build a calculator in javascript”. Get out a pen and paper and create your requirements, and start mapping out what you will need to get there. This is harder than following a tutorial, but it will be far more rewarding.
A note on tutorials
Tutorials are NOT bad. If you know nothing about a specific framework, going through a tutorial can be very helpful to grasp the basics. I’ve gotten the most out of tutorials when I was trying out a new framework. Following along in creating a demo app to learn core features is fine. When using tutorials, you should always expand, extend, or rewrite the app later on your own.
If you want it, go for it
The Age of AI is here and now. We would be foolish to say that this won’t change things. But, the need for programmers will not go away. If you want to learn a new skill or create new things, 2025 is NOT too late to start learning. With hard work and some time, you can land your first programming job. I’m rooting for you!
Source link
lol