Before setting up a team, I worked as an individual freelancer for quite a long time developing web apps for clients. While I did enjoy the freedom of choosing my own projects and work hours — this had issues of its own especially during the early days of my freelance career.
Here are the top five challenges that I personally faced while working alone out of my bedroom (or the room next to it).
1. Developing a personal brand
Every single person who wishes to make his mark on the internet business has to build up his own brand. This also goes for the companies who offer services across web. Building a brand of my own has always been the key challenge of my business. And, contrary to regular belief, a brand doesn’t only mean getting likes and followers on social media; it essentially is the overall experience that you provide to your potential client.
For example, I always distinguished myself as iShouvik — the guy who solves common tech problems using the simplest and most affordable tools the world has to offer and my clients loved the concept and that I believed is what kickstarted my business in the first place.
2. Work for Good Clients
In order to create great products or provide superior service, it’s important for a skilled professional to find his perfect match — a good client. Now, the word “good” might be interpreted in various ways. But, what I really mean is, it’s important to find people who are capable of acknowledging quality service along with its cost and that they look for people to work with them rather than only work for them.
During my early days, I worked for people who paid me a mere $60 for an entire WordPress site and worse, they had a big difference between what they wanted and what they actually needed. So, I often ended up drawing table based designs with red and blue squares floating all over the pages.
Now, I do regret even involving myself with such projects. Instead, I think I could have done much better if I worked on free themes and plugins and earned my share of reputation.
Don’t work for people who don’t value you and your skills.
3. Stop being too Geeky
The problem with us programmers is that we always want to make everything “perfect” and amidst the everlasting pursuit of perfection, we tend to forget the most important thing — the people. If you’re starting out as a freelance developer, you have to remember that you, at the end of the day, are mattered as long as your service makes sense to your clients.
Probably, the most fatal mistake I ever did was “explaining” my clients that how superior my codes were and the technology that’s underneath it. But you know what, it doesn’t matter! If your client knew everything you do, he probably would not have hired you in the first place. So, don’t be geeky while talking to clients and stop reinventing the wheel. The world doesn’t have enough room for your own Laravel or Ruby On Rails forks. You’d be better off using the existing tools and make them work for your projects.
4. Get rid of Distractions
Okay, I had a real hard time fighting this issue and I still fight it to keep myself firmly grounded the project requirements and deadlines.
Since I had the liberty to use my own time to serve my clients, I often ended up checking my emails and facebook messages instead of working on projects. After a week I realised that the number of hours spent in front of the computer only made sense if they were used for something productive.
Every project requires absolute attention for it and failing to do so often results in unnecessary stress of losing the quality and deadline for the projects.
Also, one major problem I experienced is that my family and friends knew that I worked from home. So, they refused to understand that even I had to work!
So, here is what I ended up doing —
- I imposed a 20 – 40 minute time frame every time I started working
- During that time all my social networking sites were closed and my phone was kept in silent mode
- The doors of my room remained closed as long as I worked
- I got up from my computer and turned off the monitor as soon as I finished my work and took a break for 10 – 15 minutes before getting back to my work for the next time frame again
I saw a big boast in my productivity when I started implementing this rule. It was way more difficult to implement than it appears to be but trust it, it made a hell lot of difference. I still follow this rule.
5. Stay Organized
Being organized is quite difficult. The goal is to take all the pain and clutter away from the way of providing seamless service to your clients. And, if you rely sole on your brains, well, it might tend to be a tad too difficult to work this out.
I always relied upon a set of widely known tools to make sure I performed my professional as well as personal duties.
- Dropbox/Google Drive — cloud backup. (Used to love Ubuntu One till is was discontinued)
- Google Calendar/Facebook — Events and Tasks
- Git — Version Control
- Evernote — Notes
Recently I started using Google Keep replacing ToDoist and maybe Evernote to some extent for reminders and pending tasks.
One thing I do want to point out that there is pain in every turn you take in life. I loved being my own boss and choose to work on projects that I love. My freelance career taught me a great deal about taking responsibility of an entire project and adapt to it as required. And these values that I learned certainly helps me manage my team every single day.
Feel free to ask questions and/or make suggestions, I am very much open for that.