The fastlane to your first web development freelance client

––– views

9 min read

If the title intrigued you, you're probably trying to find a way to make more money, or you've already decided to go with web development as a skill that would make you tons of money freelancing online. ⁠⁠Whoever you are, you might find this helpful if you're a beginner or you know absolutely nothing about coding.

This guide offers some resources that I have found helpful when learning to code or some that I've seen recommended multiple times by other experts in the field, but the most important point to remember is the get your hands' dirty advice, I go over some examples on what or how you might do what you're learning on your own.

When I started learning I had a 50/50 rule, where 50% of my time was spent passively learning (watching coding videos, reading blogs/docs, reading a book, etc), and the other 50% was spent actively learning where I would try to implement what I've learned on my own, and this was the biggest key to success.

💡
As you progress and become more experienced your active learning time should increase.

Where to start

Some of you may already know this, but what you need to focus on firstly is

  • HTML - the structure of the web page, think of it as a word document where you have, headings, paragraphs, images, links etc
  • CSS - the look and feel of the web page, mastering this one is tricky but learning the basics is easy and fun.
  • JavaScript - the language of the web, in the past few years it became extremly popular, and in my opinion it's the easiest language for a beginner.
  • I recommend you start with freecodecamp, the hands-on approach they offer will get you going quickly and you can get a feel of what's it like actually to sit down and write some code. You should focus on understanding basic HTML and CSS for the first few weeks and try to build something.

    I can't emphasize this enough, but always try to do something on your own. An example of what you could do if you just get pass the first few sections of freecodecamp is a portfolio website about yourself.

  • A simple header logo on the left side, navigation on the right
  • First section a title and one sentence about you
  • Then a list of projects, let's say a 2x2 grid with a simple image and title
  • Some text about you with a title
  • And a footer
  • It may be challenging at first but if you start doing this early on it will benefit you tremendously in the long run. If you start and you find it too difficult go back to the tutorial and try again, but this time you won't be starting from scratch.

    After finishing first project

    This is the point at which I would start learning JavaScript, if you've never coded before, learn the basics, there are so many resources to choose and I will let you google and find one yourself, it really doesn't matter which one.

    After you learn the basics, try to learn some web javascript, learn some basic functions, understand how to use JS with HTML, and apply some interactivity to your project.

    Don't go too deep with Javascript, I've read many blogs and code examples where they teach you things that you will almost never use, and even if you do need to use them at some point you can just learn about it then.I would stick to the basics:

  • Selecting an element programatically
  • Modifying that element
  • Changing the styles via JS
  • Get a certain input and return an output
  • Do something on a button click
  • 💡
    This resource has many examples simple enough for beginners check it out to see what you could do with javascript.

    Tools to start using early on

    Git/Github

    To be honest I would sign up from day 1, I wish I had kept commits (snapshot of your code) from my early days. Learning and using Github early on will help you save your code in a meaningful way and you will have it as a reference forever.

    Github is going to become the most important thing a client or an employer would look for when you actually start to apply for jobs. It has a bit of a learning curve but there is also a GUI for Vscode, which will get you up and running in no time. But be sure to read about it before you start using it.

    Vscode

    There are many code editors out there, but this one is the best, the integration with other tools and extensions it gives you is unmatched compared to the other options out there.

    Chrome developer tools

    Debugging your application takes a lot of effort, but if you’re not utilizing the right tools the job can be even more demanding. That’s why you need to learn to use the dev tools provided by browsers. And don’t just focus on the console tab, explore the other tabs as well, especially the network and elements tab.

    Timeout

    This is a mac based one, but I'm sure there are options for other OSs, it basically tells you to stop working/learning every X amount of time. This is a really important thing for me, and early on I used to sit in front of the computer for hours without breaking, this can be dangerous and exhausting.

    Your brain needs a couple of minutes to relax, I now work for 45 minutes and take a 5 - 10 minutes break.

    Few months in

    You've learned the basics, you created a few projects, messed around with Github, and you got your tooling set up right, are you now ready for a job? Possibly freelance something, but if I were you I would keep going.

    There are 2 routes you could take, back or front end, since this post is meant for beginners I assume you dear reader don't have a CS background, and in this case, I recommend you take the frontend route first if after a while you think backend is the more logical choice you can always switch.

    For frontend development, there are many 100s of frameworks that basically combine all the basics mentioned above and give you a more structured way to develop your websites/web apps. There are three big players that have been around for the past 10 years: Angular, Vue, and React.

    The most popular one is React and it has been for a long time now, it has the most add-on libraries to help you achieve almost anything, and the community is so huge that whichever problem you would run into there is most likely an answer to it somewhere.

    By now you can guess my recommendation for you, the biggest reason why I recommend React is that it's the most popular and there are the most jobs available for it especially if you're looking to get into freelancing.

    Tutorials and side projects

    There are many tutorials online, but learning React is tricky and I recommend going the video course route. I learned it from Udemy there are amazing courses on there, the one I recommend is from Max, it's a huge course and you might not need everything that's on there but it's nice to have if you ever need it.

    💡
    Developing side projects is the best thing you will do in your career!

    Take your time with this one, it took me personally 3 months to complete, granted I was following my active/passive rule, but it's so much worth the effort.

    My side project while learning the course was a pizza ordering app, it was the first project that I was actually proud of doing and even though it didn't really function at all it was my first time struggling with React and actually grasping the idea behind it.

    Back then (about 5 years ago) React was enough, today almost always there is a framework on top of React, there are many problems that come with using a framework like React which in most cases you don't really need to worry about because that framework on top of React solves them for you.

    Next Js is the one I am referring to, it does have a bit of a learning curve, but If you've grasped React, you won't have any problems learning and using it.

    After finishing the course and doing a couple of side projects it is safe to say that you're job ready, or at least freelance job ready.

    Get that client

    After developing and deploying a couple of projects with Next, you're ready to jump on the freelance platforms, personally, I've had the most success with Upwork and this is why I recommend it as your first platform.

    The main thing that's going to separate you from the crowd is your profile, before even starting to look for jobs make sure you have your profile completed to 100%, and I don't mean fill it up with all kinds of info just to get there, but rather what you should do is look at other freelancers at your level or slightly above you, people that have had some success on the platform, and model your profile accordingly.

    This one is probably the most important one, this is what the client will read when they first see your proposal.

    Your title

  • Mine is: Senior (ReactJS, NextJS, NodeJs, Graphql) Developer
  • Usually when clients posts a job they already have a stack planned especially when looking for beginners, so be sure to include the technologies you're working with.
  • Your description

  • Start with a short summary about yourself and be honest, false claims are always exposed.
  • Then a list of the skills, technologies you're working with.
  • Finish up with your availability and/or info on where can clients find more about you. (Unfortunately you cannot include links here)
  • Skills

  • yes you've already listed these, but here they are more important because of algorithm reasons
  • since Upwork allows you to add only up to 15 skills, choose them wisely and do not add unrelated skills
  • Portfolio

  • Those projects that I've been babbling on this whole time, well this is where you use them.
  • Include screenshots of them, explain what the project does and what you've learned from each one.
  • Bonus points if it's deployed somewhere
  • These are the most important ones to keep in mind and should get you to almost 100%, if they don't you can add "other experiences" or "employment history" even if it's unrelated or maybe non-existent :), add it here and boost that profile to 100%, the algorithm will appreciate you more.

    💡
    Your rate - here is the part when some might think all this effort for that kind of rate, am I crazy? Wait up, hear me out!

    Based on the projects that I've recently viewed at the time of writing I would say the best starting rate is somewhere between $10 - $15. I know it's not ideal but to succeed on Upwork, at least for the first couple of projects you need to set your standards low, work at it, and in no time you will be able to charge $30 - $50.

    Conclusion

    The journey to success is not an easy one, three years in and I still feel like there is so much I could be doing/have done better.

    This route is by no means an easy one, it requires discipline and determination, but I do think it’s a fast route to earning money as a developer, my journey from 0 to freelancing on Upwork took 1 year, with a better plan and more research I could’ve done it 6 months, I hope this blog steers you in the right direction.

    To comment please authenticate