Lessons Learnt from Freelancing as a Coder

Share this Article


This is a guest post by Mansoor Adenwala. Mansoor is a blogger, corporate trainer, process advisor, and generally a solution-finder in the world of ICT. He currently works for Business Beam Pvt. Ltd in the capacity of Managing Advisor and is based in Islamabad, Pakistan.

Osama wrote about how he discovered there were 1173 freelancers on oDesk, which set off a pretty lively discussion on freelancing in Pakistan. I thought I’d add my two cents to the discussion, and maybe encourage some new people to join up the freelancing world.

I’ve been associated with Rentacoder.com for the last 5 years and done around 9 projects in this time. Though I’ve stopped earning through these means, its still a healthy backup to fall on incase there are ever hard times. I became a member of rentacoder in my university days, when lulls in study time were threatening to rust my coding skills. Also back then, I wanted to make some extra money and since my parents wouldn’t let me work in case my studies were affected, RAC it was. For the next year, I completed around 6 projects and had earned somewhere around $1200 (after paying all the requisite charges of the site and western union etc). Not bad as an extra pocket money. I also learned a couple of new things about both, myself and the coding world which shaped my career later on in life.

When you are freelancing, you really don’t know what you are getting yourself into. Initial thoughts are, its just another project, I’ll be able to do it without any problem. But its not. The first thing you learn is that earning money is not an easy task (the universal truth of adulthood). When you are doing university projects, the scope is largely defined by you. You can add features, remove features or even change them completely off your own and no one will complain much (except maybe a tough professor, but then who cares right?). When you freelance, you learn for the first time, requirements are important and its not as much fun when others are changing it!

Read onwards for more important lessons learnt

I remember this one project for live support system I did for an Indian company. The initial bid included a requirements document, for which I was supposed to code and deliver a standalone system. I won it and started working. A month down the road, they wanted it to be integrated with their original system. Still a month later, I was not only supposed to deliver it, but install and test it as well. That too, remotely! During these first six months that I worked on it, requirements kept changing, as the contact person kept changing, forcing me to rewrite large sections of the code. Eventually, after much delays, the system was finally ready as per their document and ready to be delivered. A senior person at their company came to test it and asks me ‘where is XXX feature?’. I replied ‘it wasn’t part of the original requirements hence not there’ to which they said ‘but that’s a standard feature! We want it!’. That ended my relationship with that company. I took the project in arbitration, won and claimed my money, but it didn’t leave a good taste in my mouth.The point here is, there are many challenges you learn freelancing that you wont when working in a software dev shop, especially those relating to handling a customer. In this case, scope creep took a 3 month project to 15 months, because at the time I wasn’t equipped to handle changes. However, my last project came in on-time because I had clearly communicated what I could deliver and when and set the scope and expectations as precisely as I could (I had even managed to get 5x times the original bid amount from the buyer because they realized later that changes were necessary and I charged them for each and every one of them). So as a freelancer, you learn how to manage requirements and your customer.

You also learn, on a fast track basis, how to estimate a project! Since you are the one whose reputation will be on the line here. While formal estimation was still way beyond my reach at those times, I ended up making a simplistic model, based on my experiences with past projects. For web design projects, I asked for 3 days per simple script, and 5-15 days for a complex one, which included time to code, test, bug fix, deliver UAT and sign off. So it became number of scripts x time for each script acc. to complexity. This worked very well for me but may not necessarily work for others. Another PM skill is task management or in formal terms ‘creating a work breakdown structure’. This is what you’ll deliver to the client to show them exactly how will you complete your project. Whether its followed or not is another story, for another day.

Yet another important skill learned through freelancing is expectations management! Your client will ask for a rock and expect the moon. If you want to succeed, you’ll learn to make them understand the difference and why, even though they’re asking for a rock, they actually want a mountain but not the moon (and if your suave enough, increase the bid amount to charge them for maybe a mountain range in the process). If i’m sounding confusing here, then you may want to read up on expectation management.

But the most important lesson which I learned as a freelancer, was knowing myself and my capabilities better. To give a little background, I was a pretty decent coder back in the day, and for years thought that my future career would be in front of a computer, writing innovative code to change the world because that’s what software engineers do. After doing four projects, I realized almost all software development is very different from what you do at university, is essentially all the same and gets less challenging with each successive project. This just wasn’t my cup of tea. I also learned that bidding on a project, engaging the prospective client in discussion, negotiating what I could and could not deliver, and winning the bid was, for me at least, more satisfying that coding and delivering the final product. Sure, coding is fun when your doing something innovative and creative but not as much as getting the project. I’m writing about this here to let you guys know, freelancing can bring out latent but amazing abilities in you and allow you to understand yourself better.

I’ll stop here, since this is a blog post, but believe me when I say, I haven’t even scratched the surface of how those years helped me out. Give it a try, you never know what new skills you might discover in the process. Because as they say, necessity is the mother of invention, and only when there is an immediate need for a certain skill, will you be able to learn it.

Facebook comments:


  • I m loving it Mansoor Bhai!

  • thanks ali raza

  • Mansoor,

    Thank you for sharing the experience. This is very common in projects either you do freelance work or you are a big vendor providing solution to the customer; they will always keep on changing the scope. A project change request process should be a part of the initial contract and should be adhere to strict (a project manager responsibility!!). Even if a feature that you can do for free, a change request with 0$ should be raised as it maybe have impact on the project time, scope and cost.

    In reality its very hard to negotiate a good contract as the people on the other side know this as well that they will miss out on things and hence they want to squeeze you as much as possible. Worst is when you have to do things like Integration testing or SIT on external system which are not ready and then the project drags forever.

    My two cents .


  • Dear Mansoor;

    An impressive post, i hope I will handle to manage and utilize heat in myself which I am feeling after reading it.

    And I think a successful freelancer can become a successful entrepreneur. Because while doing projects for small term of different nature one can think a strong story for him. I think for if the work in office didn’t give you excitement then one should go for free lancing to check himself how smart he is. And how batter he can sell his code.

  • majid: that is definitely the case, and while in a company setting, a project manager or the customer facing person comes under heat, in freelancing, you have to manage that as well as take time out to code. so its an all around skillset that you develop.

    tahir: take the step and get into freelancing man! its fun and at the end of the day, the money is ALL yours 😀

  • Asslam O Alikum!

    First of all, I like to appreciate your efforts of GreenWhite.org site. I start reading GreenWhite.org blogs from last two weeks. The site has good content and information for entrepreneurs. Again, I appreciate you.

    I have one question, Can you please advice me tips & tricks for time & cost estimation of a project…

    –| AimsLifeâ„¢ |–

  • wow..well written!!!
    I could certainly take a leaf or two out of your book of experience in the world of freelancing!!!

    Thanks for the insight into a journey that :looks: so simple..but really is SO complicated!! :)

  • Mansoor,

    Good post! And being a freelancer myself, I know exactly what you’re talking about. Working with buyers is not always easy, as you described, but it is the job of the coder to make sure of all these things before embarking on a project – especially a big one.

    As for me, I guess I am a bit different in the sense that coding is the way to go for me. For me, there’s nothing better than to keep challenging yourself with new problems and finding their solutions.

Leave a Reply


Recent Posts

  • Events General Mobile Apps Container Run a continuation of politically motivated apps

    Container Run a continuation of politically motivated apps

    First we had Angry Imran which brought smiles and some short lived fun for us during the election campaign. Then came Gullu Butt following the incident of Model Town Lahore, which stayed on top of charts (Pakistan play store) for quite some while. Also Gullu Butt made an update with having the famous “Aam Khaiyga” quote form Aamir Liaqat in which a character resembling Aamir Liaqt throws mangoes and the Gullu Butt character tries to catch them. Gullu butt currently has more than 100,000 Installs

    And now during this extremely politically tense situation which had the whole nation on its toes on 14th August we have another app continuing the …

    Read more →
  • Announcements Featured Startup General Meritaleem.com aims to help student make better decision regarding their future.

    Meritaleem.com aims to help student make better decision regarding their future.

    MeriTaleem.com aims to solve an age old problem for our students, where to go next?

    If you have just completed your primary school which college to pick, if you have completed your college which university to pick. There has always been lack of information or rather consolidated information regarding these questions. The best source till now has always been relatives and friends (mostly of your parents). So some uncle did CA and made a good living you should talk to him and decide, or daughter of my sister completed her medical and is practicing follow that career.

    The fact that online presence of our existing universities are limited and not …

    Read more →
  • General Mobile Apps Eccentria Technologies launches an app which shoots to the top of the charts

    Eccentria Technologies launches an app which shoots to the top of the charts

    Whoa!! this was quick so Eccentia technologies launched an app a few days ago called “Ajj Kia Pakaen” or what to cook today and today it has reached the top of charts for Pakistani Stores on iTunes and google play store.

    “Ajj Kia Pakaen” is the most common question asked at every house hold in the morning. The ladies of the family have a hard time deciding what to cook for the day. The app has a fun interface and is simple to use, you fire it up, and it gives you an option of what to cook for the day, if you like the option you can check the …

    Read more →
  • Coffee Session General Marketing/Adv Rise of facebook marketing in Pakistan

    Rise of facebook marketing in Pakistan


    Until a few years back we used to have closed groups and forums, which gathered the like minded people and anyone targeting the online audience would tap into that forum and market his/her services. So PakGamers , PakPassion initially even PakWheels used to be driven by members talking about what they loved, people used to create marketing and sales opportunities from within those discussions (so you could get a good router cheap or a gaming PC etc).
    The advent of facebook changed all that, most of the forum goers moved to the new social media. It also made a very attractive market place for some one who does not …

    Read more →
  • General Getting back

    Getting back

    I  have been out of blogging for a long long long time, a lot of things happening on personal front (including a little startup I have ben doing my self). However during my absence I met a lot of people who had followed GreenWhite at its peak, read the articles regularly.

    I had hope there would be some one else who would come ahead and cover everything going on and around us in the local tech world. There are some guys doing a great job, but for some reason I still could not find one source where I can go and read about everything, so my routine usually is to …

    Read more →
  • General Mobile Apps Software & I.T. GeniTeam launches official app for Pakistan Idol

    GeniTeam launches official app for Pakistan Idol

    GeniITeam has successfully launched an official app for PakistanIdol. This is one of the first collaboration between a reality game show and a local app development company. I am sure a lot more would follow. Previously we have seen seenreport becoming the basis of mostly all channels citizen reporting system (Like Geo Dost). This is a healthy sign and with the advent of 3G round the corner it should become a business generator for our local firms.

    App allows you to follow the contestants that you like, promote them, comment on live feedback on an episode. It offers official content from the show since it is developed with partnership with …

    Read more →
  • General 10Pearls and National Geographic Release A Geography Challenge App

    10Pearls and National Geographic Release A Geography Challenge App

    10Pearls, one of the leading Pakistani IT companies, has recently added another feather to its cap. This time, in partnership with National Geographic, 10Pearls has released the new and improved GeoBee Challenge App – an interactive app to challenge and grow the geographic knowledge of the users.

    Each year thousands of schools in the United States participate in the National Geographic Bee using materials prepared by the National Geographic Society. The competition is designed to encourage geography in the classroom, ignite student interest in the world around them, and increase public awareness about geography. Schools with students in grades four through eight are eligible for this entertaining and challenging test …

    Read more →
  • General 10Pearls Spins Off Game Plan8

    10Pearls Spins Off Game Plan8

    It’s heartening to see that Pakistani IT companies have now started to diversify themselves into non traditional areas, and are competing with global players in areas such as gaming. We have received information that 10Pearls, one of the leading  mobile and enterprise web development services companies in Pakistan, has spun-off a separate entity focused solely on developing and publishing casual mobile games.  The new entity, Game Plan8, will focus on creating 2D and 3D games for the iOS, Google Android, Kindle, Facebook and other platforms. Details can be seen on the company’s official press release at http://www.prweb.com/releases/2013/12/prweb11428177.htm


    Read more →
  • General Telecom CCP Gives Guidelines Against Telecom Companies’ Deceptive Marketing

    CCP Gives Guidelines Against Telecom Companies’ Deceptive Marketing

    If only were there two things when it comes to the law, firstly the fear of breaking it and by passing the legal authority, and secondly, implementation of the law given full dedication, there would have been less competency and dishonesty in business and society. However, keeping good faith, the Competition Commission of Pakistan (CCP) has put forward “Deceptive Marketing Guidelines” which will maintain the Section 10 of the Competition Act, 2010. In order to enforce this part of the law and stop anti-competitive conduct on part of the telecom companies in advertising, the guidelines have been shared with Pakistan Telecommunication Authority (PTA) and other concerned telecommunication sector members, in …

    Read more →