I've been doing freelance programming work in various languages for over a year now. For the most part, I am a self-taught developer.
However, I did have some training that includes a bootcamp I never finished and 1 year of University. I wouldn't exactly say that they have helped me much as far as my career goes (I did learn a small amount from the bootcamp I suppose).
This post is a small guide on what I've found to be the most effective things when it comes to finding freelance jobs. These also carry over to full-time company gigs as I've had several offers, but refused as I enjoy the freelance life.
Tip #1: Keep a tech blog and personal portfolio.
This one should pretty much be a no brainer and is my #1 recommendation to anyone looking for a programming job.
Combine your blog and portfolio to one site. A single place where you can showoff your knowledge of the field. Get a domain name for it (mine is https://nolanm.dev/). I always recommend trying to get a domain that includes your name in someway. Try to avoid nicknames or usernames. It seems very unprofessional, imo.
Make sure you use that blog! If you learn something new, write about it. Write your own guide or tutorial about it. This is a great way to show off what you know. It could also help out someone else that stumbles across it randomly on the web. I try to write on mine at minimum of once a month.
Be sure to keep your portfolio updated. Mine is always up to date (except right now as I'm currently working on 2 gigs that I will add once completed).
Recruiters and people doing the hiring WILL be taking a look at your blog/portfolio. So, make sure it's nice and easy to read and navigate. I personally like to keep things minimal and clean since I'm no designer. Refer to the link to my blog/folio above. Very simple, yet I get plenty of compliments about how neat, clean, and organized it is.
Tip #2 Build that blog/portfolio on your own!
This one is simple. Use your favorite tech stack and framework to build your blog and portfolio.
Do not use Medium, WordPress, or other pre-made blogs or CMS's. It looks lazy.
Plus, it gives you something else to add to the portfolio! Personally, I built mine with Ruby on Rails. But, I'm planning on re-doing it sometime here in the near future.
Tip #3 Keep an updated resume.
This is another obvious one, but keep an updated resume! Many people slack on this part of the job search.
Make sure to include a good amount of your past work. If you have no past professional experience, then include your personal projects, certificates, or anything else that shows what you know!
Tip #4 Create and keep your LinkedIn profile updated.
I constantly get contacted by recruiters on LinkedIn simply because I keep mine up to date. Often times these recruiters have good paying offers too. It's just a matter of finding one that fits your experience level and interests.
Tip #5 Explore freelance platforms to gain experience
This is what got me started on professional experience. I found a lot of part-time gigs through freelancing platforms like Gun.io (my favorite because they only deal with companies that pay US rates), UpWork, Toptal, etc.
Once you land your first client, the next ones become a lot easier!
Also make sure you keep these platform profiles as up to date as possible!
Well, that's all. I hope some of you new developers have found this article somewhat helpful. Most of this stuff is common sense and just not being lazy. If you're passionate about what you do and genuinely enjoy the craft, it should be easy to get all this stuff done and you'll be well on your way to landing your first interviews and jobs!