When you start as a freelancer, and explain that to your family and friends, they will usually form one of this two opinions about you:

  1. That you spend the day doing nothing, taking long walks while enjoying big ice creams, staying in front of the computer and surfing the web, or just lazing around all day. They will usually tell you: “Waw! how lucky you are, I wish I could live like that”.
  2. (This second one is the most common opinion here in Spain) that you are committing professional suicide, you are going to work all day and don’t get enough money to make a decent living, and finally end up broke and loosing your house. They will usually tell you: “Oh dear, are you sure do you want to do this? Why don’t you apply for a safe, stable job?”.

Obviously, these two views of being a freelancer have nothing to do with reality. Sure, you can organize your time differently, and can enjoy a good ice cream on a sunny afternoon while most people are working on their cubicles, but you would probably have to work overnight to deliver a project in a different occasion. Yes, it is not easy being a freelancer (specially here in Spain), and you can find yourself short of customers at times, but you can make a living out of it, and even a wealthy one.

Being a freelancer is not better or worse than being employed at a company, it is just different. These are some of the main pros and cons of being a freelance developer for me:

Pros

  • You are your own boss. You can decide (mostly) what you want to work on, what you want to do with your life, and there’s nobody looking over your shoulder.
  • You are the owner of your time. One of the things that I really love of being a freelancer, is being able to stop working at, say, 3PM and go for a walk outside, maybe enjoying a good coffee, specially when it’s sunny. On my previous job, I would be in my cubicle until 6PM most of the days, so in winter I would spend the whole day there, not seeing the sun until the weekend. Now, I just can get outside and enjoy the afternoon, and work a little more later, at night.
  • Traffic, traffic, traffic. Madrid has a lousy traffic. Specially during the peak hours, the jams can get you stuck in your car for a long time, which only serves to stress you and suck the life out of you. Being a freelancer, I work mostly from home, and when meeting customers, I can (most of the time) avoid the rush hours and the traffic jams. Nowadays, I find myself thinking a lot about how precious my time is, and how much time I was wasting in my car before.
  • You grow as a person. For me, it was a difficult decision to start my freelance career. I was really scared. But I had to face my fears, and develop some capacities, such as self-confidence, organizational skills, perpetual curiosity for learning… and many more. This has really helped me to grow as a person, set the course of my life, and be more confident of what I can do.
  • You grow as a professional. Being a freelance developer, you are the IT department, the marketing department, you are the accountant, the boss, the salesperson, the developer. And this situation forces you to learn a lot of different skills that you simply didn’t need before. Besides, you really need to stay up to date with the latest trends of the business, you need to constantly improve your skills, and learn new things, specially if you are in a technological field, like iOS/OS X development.
  • You spend more time with your family. Working home and being able to schedule your time in a more flexible way really helps to stay with the people that really matters, your family and friends, and that’s important for me. In fact, this is maybe the most powerful reason for being developer that I can think of.

Cons

  • You are your own boss. There is nobody telling you to work harder, there is nobody rushing you to deliver that project in time. You must develop a sense of responsibility and be professional, because nobody else is going to.
  • You are the owner of your time. You have to organize your working hours and keep a good schedule. When you are employed and working for a company, you can afford to procrastinate now and then, because you would probably be getting your check by the end of the week. When you are a freelancer, you are getting paid for the time that’s actually useful, and for the work that you actually deliver. So you have to be very disciplined and set a good schedule.
  • Marketing and accounting. The freelancer needs customers, and sometimes getting customers is a hard task that involves marketing, promotion, going to meetings, conferences, and many other activities that are not really funny, at least not for me. Besides, unless you can pay an accountant full time, you will need to develop some accounting skills and learn how to run your business. I think it is important to know the basics of a business if you are running one.
  • Many people expects you to work for free or for almost nothing. Specially in Spain, where we have developed a culture of “I want everything, and I want it for free, because I deserve it.”, people will usually underestimate your skills. Even if you are a responsible, reliable professional, they will tell you things like “Come on! Even my nephew has made an iPhone App, so I will pay you… say, 100€ for …. (insert here your 4-months complex project involving several iOS/android Apps, a custom framework with RESTful services, website with different user profiles, and uncountable hours of pain and misery for the developer), yeah, don’t thank me”. Sometimes it is really offensive, and it is hard to make these people understand that, if you pay peanuts, you get monkeys.

So, in summary, freelance way of life is not for everyone. You need to be an organized, responsible person, and you need to be akin to be constantly learning and improving as a professional. For me, it has been one of the best decisions of my life, and even though I still have a long way to go, I am really glad that I decided to do it. I feel I am the owner of my life. I have never been more relaxed, easy going and carefree in my life.