Last week, I shared how I decided to turn back to software developments as a career (and not just a hobby). I explained how I decided to dedicate 10 hours a week to work on my skills.
The next thing I decided was that I would have to make a plan with clear goals at defined dates.
Since becoming a developer at my current company seemed out of reach for me (I explained in a previous article how I miserably failed the remote test for that job prior to joining my company as a tech support engineer), the only option for me was to become a developer elsewhere, either as an employee or as a contractor/freelancer. I knew that I could get a developer job almost instantly at most IT services company in my city, but it was completely out of question for me (I talk about my perspective on such companies in this article).
Since being a freelancer seemed to provide more freedom than being an employee to organize my time as I need (which would be very useful with a wife who is a medical intern/resident and two young children at home), I decided to choose this option with the goal to sign my first customer contract within a year. And in order to find a customer within a year, it seemed reasonable to me to start looking for my first customer 6 months before.
I also had to decide as to what kind of freelancer I would like to be. In the software industry, there are essentially two kinds of freelancing work:
- Working on existing or new projects from home (or wherever I want to, like a coworking space or a coffee shop). That way, I can organize my time as I want, as long as I provide the service/product required on time.
- Joining an existing team in the customer’s workspace, and work on whatever software need they currently have. That way, I would have the same working conditions as an employee, except that my contract would be limited in time and scope.
With my family constraints, I realized that working from wherever and whenever worked best for me sounded like a dream to me. I would for instance be able to work from home in the morning, then get my daughter during her lunchbreak to share a home-cooked meal with her, then do some more work while she would be taking her nap, all the while wasting no time and energy commuting.
I thus decided that not only did I want to become a freelancer, I wanted to become a remote freelancer.
So the plan looked something like this:
- First semester: Get good and demonstrable coding skills
- Second semester: Continue to grow coding skills and start looking for a first remote contract
- End of first year: Have accomplished at least one remote paid mission for a customer
Once I had this clear plan in mind, I had then to decide on which technologies and technical stacks to focus on. This is a tricky question, seeing that for each tool required to solve a software problem, there exists dozens or even hundreds of great ways to do it. Moreover, different kinds of technologies would lead me to different kinds of jobs and customers, and I wanted to make sure to choose the stack that offered the best likelihood of providing remote freelancing work.
It wasn’t easy to decide, but I had to choose one path, focus on it and exclude the others.
Next week, I’ll share precisely how I did that.
As usual, thanks for reading and stay tuned :).