The Shadow
Published in

The Shadow

Choose a Technology and Start Freelancing

How to freelance with your set of skills.

A man working with a laptop

I recently received an email from a reader. He asked me how to freelance with his set of skills, which are totally unrelated to web technologies. He’s familiar with some frontend and backend languages though.

This reminded me of myself, when I was working in a company using Symfony2 (a PHP framework), but I disliked it after completing a big project (a custom shop, inspired by Prestashop).

I really wanted to do something with Ruby on Rails. My goal was to totally switch to that framework and continue making money, but the change was so different that I needed to think a lot on how to do it quickly and effectively, so when I was ready I started to search for a new job.

Today the tendency is to know both frontend and backend fields (being a full-stack developer), but at the end of the day you will know better one or the other. So try to specialize on the one you feel more comfortable with.

The first step

The first step then is to learn and interiorize the concepts about the technology you like most. By concepts I mean trying to master the basics.

Once you know the basics, you can learn the advanced pieces on the go, while you work on a project. Don’t try to learn everything at once because you will not retain all the information. You will end up wasting your time.

In order to make your learning process enjoyable, I would recommend searching for a technology that has a good community behind, providing good tutorials so you can avoid reading big books. Yes, I recommend tutorials instead of books. I prefer the rich web format and videos. For me it works faster than a book (and it doesn’t get deprecated so easily).

In my case I chose Ruby on Rails because of two gold resources: Railscasts (not updated anymore since 2013) and Code School (it was sold to Pluralsight).

  • With Code School I could learn the basics following a path.
  • With Railscasts I could learn more specific subjects, the ones that I felt weaker.

From there, with a good basic knowledge, I found the Ruby gems an amazing resource of features that I could add to my applications easily.

This made my learning process fast, and my applications would be bootstrapped in almost no time. Being Ruby a programmer’s best friend (it’s the language slogan), I could focus on the app rather than the tool.

Create your first application

Okay, you are now confident enough to develop an application. Why waiting? Start making your first application!

Think about something you could clone (there are tons of tutorials out there to clone the most typical apps in any language). Maybe you could build something original, go ahead! Even better, you could do it open source, host it on Github and find collaborators.

When you finish your first application, you can find other open source applications you can collaborate on to gain some experience working in a team. It’s a very important aspect when working remotely, because your code will be reviewed and you will have to improve it. Take a look at the open issues, maybe you could pick up one and provide a fix.

Promote yourself and find a job

You now have the knowledge, your first application and experience working in a team for an open source project. All this can be put into your CV, so don’t hesitate to do it now. If you are collaborating writing answers in StackOverflow you could create your Developer Story. Do not forget LinkedIn either.

Then it’s time to search for a job! If you want to try working remotely (which I recommend) I suggest two tools to find interesting positions:

If you prefer to work on different projects, I think the remote approach is a must. Using the sites I recommended you can find companies searching for developers to work on a limited time per week, so you can have multiple clients to start with.

Another alternative is using a site for freelancers such as Upwork, but you will need to compete in price with other developers. I think it will be very difficult and time consuming to find good clients there.

Working in interesting projects with good clients is a slow process. Invest your time and effort on few projects that you really like, it will be worth it.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store