No matter what stage of your career you are in, getting paid to learn is the smartest thing you can do.
Open Source your work while getting paid
This is almost the trifecta. If you can find work you don’t know yet, and open source what you end up making, you are getting paid to learn, and building up your future resume.
Of course, not every company will allow this, but freelance clients can be much more lenient on what you’re able to do while making their projects.
One of the best things I ever did, was find a client building a health care management system. I was fully in charge of the entire project front to back. There was a time they needed a calendar component. I decided to learn how to use libraries like date-fns and get better with CSS Grid, and make this myself.
I also did it in such a way that I could release it on my GitHub and npm as an open source calendar component.
When I’ve applied to jobs since doing these types of things, I’m able to show advanced blog posts, and open source projects when starting interviews. I’ve been able to get out of code challenges and other stringent things that go along with most interviews.
I’ve always been shocked at how few developers differentiate themselves by doing these types of things.
Find projects out of your comfort zone
When I was a mid level software developer, I had a full time job. During that time I tried to take on contracting work for projects that covered half of what I knew, and half of what I wanted to learn.
This had multiple benefits. The biggest impact this had on me, was forcing me to learn.
Not only was I getting paid to figure out how to solve new problems, I also had to do it. If I didn’t figure out what I needed to learn, then I wouldn’t get paid, or my reputation would be tarnished with a client.
There were weeks where I was nervous, or felt lazy, and I didn’t want to do this, but I had to. On top of that, making extra money can be the extra motivation you need to keep progressing! Always complete the tasks for items you understand how to do before worrying about the unknowns you need to learn.
Finding Projects early on
You might be at the stage where you have a full time job already, but you’re stagnating in your role. Some of you might be newer developers and wondering how to land your first gig. Either way, I think this advice is the best to get started.
You have to find a network around you that is into coding. Some people who are at your level, some who are above it, and you have to stay in touch and learn from each other.
One of the first things I ever got paid to do was in High School, doing a small part time contract, building out search functionality using PHP for a job search engine. After this, I had met someone who ran their own software agency, and they had me build out some html and css templates according to their design.
The code I wrote was horrible, but it just barely worked, and it was good enough. These people knew they were giving me a chance and wanted to help me grow on my journey.
You need to find people and companies like this.
An example
Get really good with html and css. You will be able to find junior jobs, or at least some small contracting projects where your entire job will be coding up html and css from designs. You can probably make $20-$40 an hour doing this.
If you’re able to come into a project barely knowing certain css rules and approaches, you’re getting paid to learn. Even if you’re a self taught CSS expert, you’re going to gain exposure to more frameworks and tooling that you haven’t used before.
Finding Projects after a few years
Once you already have a job as a developer for a few years, I highly recommend branching out to learn more. At this stage in your career, you should have a network of at least a few friends that work at other companies or have their own clients.
Reach out to them and ask if they need any extra help, and what projects they are working on.
I’ve been very candid in the past, saying things like “I can help with the authentication system, no problem! But I have never used X or Y before. I would be excited to be brought on as I think I can pick it up and learn from your team as well.”
To Conclude…
There’s a lot of ways to get paid to learn, and many other ways you can improve your chances of landing a job.