(Please ignore the irony that this is my first post in over a year and the title … )
I just moved back to Bangalore to grow SupportBee. We want to hire a few great people to work with us. Bangalore (and other cities in India) clearly have no dearth of good great developers. I have met many people who not only understand good code and contribute to open source projects, they also seem to appreciate the quality of work that startups can offer.Unfortunately there is a new problem to tackle – Freelancing. With the rise in the amount of venture funding and people putting in their personal money into startup (especially in US) and outsourcing work to India, Philippines & Vietnam etc, there is a lot of demand for good freelancers and great money for them. It is easy to charge USD 30 – 50 an hour (and go upto 100 – 150 if you build a solid online presence). In fact, if you are not charging that much, you are probably doing it wrong. But I digress.
This is great money. Especially if you are right out of college and have never had access to this much cash. Go for it and enjoy it. However, after sometime, give it a break and consider working for a startup. Freelancing alone in a room with internet is a great way to get some cash lined up but a boring way to spend your 20s. Here is why I think you should consider working in a startup
- Working alone sucks. You have way lesser fun and you learn much lesser than you would if you worked with great peers.
- You never get to see the full lifecycle of a project. Let me correct that. Most of the freelance projects that you work on will never see the light of the day. Most clients are pretty clueless and keep debating about the color of the button and the slide effect in the carousel. That’s not how it’s done in the real world.
- You never get to interact with customers. You never get to learn how to launch a MVP and still have paying customers and keep customers engaged as you release new features. Even if all you care about is writing code, this is a great character building exercise that you can be exposed to only in a (product) startup.
- You don’t live with your code and iterate on it and learn about the importance of maintainable code, test coverage, processes and many other things that help tech startups win.
- You cannot open source bits of/blog about the work that you are doing for clients. They just don’t get it. Most startups don’t either but some do.
However working for startups has many issues as well
- You can work from anywhere when you freelance. You don’t need to tie yourself down to a place. Remote working is still a new concept in product startup world.
- The salaries are lower in startups (way lower sometimes).
- You may be promised ESOPs etc but never given any paperwork (since the founders don’t wanna deal with paperwork early on).
- You learn a lot in the first couple of years but most startups don’t exit and make you rich and sooner than later you wonder why you are working for them for lesser money and not doing your own.
What I am proposing is this
- Freelance for a while and save up some cash. Buy stuff/spend/travel and chill out a bit.
- Give it a year’s break. Look for a startup that you like. Look for a team that you want to hang out with and work with. Don’t worry too much about the cash (read the point above). Less cash does not mean less fun.
- Talk to the founders and tell them that you want to work with them for 12 months, contribute a lot, learn a lot but you are not sure if you can be in for years.
- Make sure that you are given paperwork for any stock options etc. If you want to blog/contribute to open source or present on behalf of the company, make sure you pick a company that encourages this.
- Dive in and enjoy the next 12 months working in a high pressure, high growth environment. Keep a decent work life balance and don’t burn yourself out. After 12 months look back and make an informed decision about staying back or going back to freelancing (or to another job/your own startup).
A 12 month commitment may sound too little. Many founders would want you to commit for several years (or atleast not mention 12 months). I believe that if a startup has the right processes setup and a good roadmap, they can keep you pretty excited for 12 months and also get a lot of value out of your work. Smart people (with the right processes) ramp up fast and start contributing in 30 days or lesser. If you have some experience and you are not pushing features to production in three weeks of joining a startup, the startup is moving too slowly.
Give this some thought and let me know what you feel in comments. I would love to hear from both founders and freelancers. Thanks for reading so far!
Popularity: 10% [?]