Freelancing: A 6-Month Retrospective
mrooney.github.com
mrooney.github.com
I'm a webdev, I mostly feel confident to start with PHP where I have lots of experience and worked on websites with millions uniques and things like that; and am able to setup/debug most part of the stack, but every single time I find that either I can't find any good opportunities, or people want to see "previous experience" and they don't consider what I did at my jobs as counting because it's not websites I did from top to bottom.
When I ask on various websites, people tell me to compete on the various freelancing sites but it feels like so much bullshit with all those 20$ offers getting the upper hands even if it's obvious it will fail ...
Does anybody on HN have any idea on how I can help myself in that area ? I have absolutely no design skill so I can't just do dummy websites by myself, or they would look terrible.
(for the sake of the question, please just assume I know how to do my job well and my problem is mostly image/marketing myself)
The real benefit to this is you get to meet people who are already established, as usually those are the people who tend to do these things and sometimes they work in teams. I did a pro-bono project with a local known dev, he liked the work and invited me to come along on a long-term paid gig which was sufficient enough for me to quit my day job.
- You have to know a bit about sales. If I'm talking to someone non-technical looking for an online store, I'm an expert in e-commerce, but if I was talking to someone in the industry, I'm less likely to throw out the term expert and more likely to try and talk about specifics.
- This is culture dependent but in the States, I've found being too modest is a negative and people seem to interpret it as either disinterest, lack of confidence, or lack of skills.
- I once overheard a discussion that went something like this, "I'm looking for a developer." "If you can get <that person> that would be great." I'm not there yet but I want to be <that person>.
A Uruguayan delegation went to Silicon Valley recently, and one colleague mentioned one takeaway was that most americans are very "aggressive" selling themselves and outspoken, it came out as a bit of bullshitting to him, as we come from a more modest culture.
Edit: check my profile here; you can mail me if you want.
As someone who has hired contractors before, I can tell you what makes me feel comfortable. One is to hear specifics about how the contractor has experience with the specific technologies I use. If I am using Python/Django and the contractor mentions experience with that, then I know he or she read my specification and has the particular types of qualification that I need. I also like it when contractors have some open source work they can point to, since that gives me an example of their work and also makes me feel that they are active and interested in their field.
Not everyone on freelancing sites is choosing the cheapest bid. It might be worth it to you to give it a try even if you take a few less than ideal projects to begin with, just to build up a portfolio and a job history.
Also (and I know this view isn't super popular on HN), I like working with a new contractor on a fixed-price payment plan. If they are willing to do that, to me it indicates that they have confidence in their ability to complete the task promptly, and I don't risk that a bad contractor will drag the project out and cost me lots of money. Perhaps that would help you reassure clients that you are capable before they have had the chance to work with you, at least until you have a strong portfolio to demonstrate your skills. Good luck!
Almost all the jobs I've had so far have been fixed contract first. Once they're confident with my abilities I move to a daily rate. I'm not interested in working on a per project basis forever, it's not good for either party!
1) http://robbieabed.com/how-to-make-money-as-a-new-developer/ (i know you have experience, but understand concept.
2) http://robbieabed.com/thinking-about-quitting-your-job-10-un...
3) http://robbieabed.com/your-professional-network-sucks-and-it...
In Summary. You have the skillset. Build an internal network, and the offers will come. It just takes a long time. Let me know how I can help if you have more questions.
You can't just put in a bid that looks the same as theirs except for the dollar amount. You have to differentiate yourself:
- Communicate clearly. Before you've even put in a bid, ask questions and discuss the technical challenges you foresee. Be prompt; respond within hours rather than days. Make it clear that they're getting a whole different level of ability with you than with the bottom of the barrel.
- Be willing to offer a quick turnaround on a sub-project, as a proof of ability. It's a big risk to commit thousands of dollars to you sight-unseen, but if a client can commit $50 to have you fix a smaller problem, this can give them confidence to go with you for the full project.
- learn some rudimentary design (something like http://www.amazon.com/Non-Designers-Design-Book-Robin-Willia... ). "Full stack" isn't full enough; your clients don't want to put together a team, they want to pay their money and get a complete product. Coders who can make an ugly website are all too prevalent; separate yourself from them.
- if you're going through a freelance site that has certification tests or similar, take a day and go through them. It shows you're willing to put in the effort -- or, rather, not having done so shows the opposite.
Also do you have any projects on github/bitbucket? Have you contributed to any open source projects? These are all things employers look for and set you apart from other developers.
I've found people aren't too interested in my previous job roles, they're more interested in talking to me. Every time I've sat down and talked to a client, not only have they felt confident enough to hire me as a freelancer, I'm almost always asked if I'm looking for full time work.
I don't market myself as a web designer. I'm a web developer, I do programming not design, and I make that clear right from the start. The companies I work for have more than enough people who can do design. They don't have people with the skills and experience I do as a developer.
If you're not a designer yourself maybe you could partner with a designer in a similar position that's interested in collaborating on a few portfolio-building projects?
And yes, that's my site.
For example: http://browse.deviantart.com/designs/web/
Your main goal doesn't seem to be more time, but a different place and more money. Start by networking with local recruiters to get your foot into that market. They often can get you contracting jobs. Then you can network with locals.
Finally, full stack software is a big job - in fact it's many jobs, and rarely do developers do all of them (and never well). I've been freelancing for almost 4 years, but never completely on my own. I always team with other locals with different skill sets to tackle more complex projects with better rates.
Anyway, just let people you meet know what you do. I've gotten jobs from friends, my wife's boss, people I've only met in forums online etc. just because I'm the guy they know that does X, in my case mobile apps.
The word of mouth jobs in my experience generally pay better and tend to be more interesting but I've had good experiences with freelancer.co.uk in particular when I've wanted bits and pieces while waiting for bigger pieces to start etc.
I got my first freelancing gig via a side project.
Once you get your first client project, all you need to do is to build on top of it.
Cringe -- this is bad advice for setting your consulting rate. In the US, the full cost of an $100K employee is not $100K. It's $100K salary + paid vacation time + employment taxes paid by employer + healthcare + office space & pro-rated related expenses (like cleaning of said office space). This metric is called the "fully loaded cost" of an employee and ends up being 1.3x-1.5x of the salary.
But even this calculation fails to capture the flexibility advantages that your clients get from hiring short term. It ignores the fact that as a consultant you are hired only when you are needed and are 100% utilized, while a yearly employee may not be fully utilized every day of the year. Essentially, an employer that hires a full time employee agrees to "buy in bulk" and pay for time that may or may not be fully utilized. By necessity this means that your rate should be higher to account for the additional value provided plus provide cushion for those in-between project times when you are looking for work or doing proposals.
Two quick and dirty metrics I have seen for determining rate per hour are 1) yearly salary / 1000 and 2) 2x full time employee hourly rate. Both of these converge on about $100/hr. Un-official data from HN seems to confirm a median freelance rate in that range (about $90/hr): http://news.ycombinator.com/item?id=3420203
(While I love HNers, one should not rely on HN salary surveys to set one's rates. There are many factors that drag it down: HN has a global audience but you do not have to sell to global consumers of programming talent. HN, in other surveys, frequently skews to young and inexperienced -- you may not be young and inexperienced. Many HNers are unsophisticated about pricing to extract value from mutually beneficial business relationships -- you should not be unsophisticated in this manner. Many HNers occupy positions which are low on the value chain such as undifferentiated "web design" which do not command high hourly rates -- you should upgrade your skillset or marketing such that you can command higher hourly rates. etc, etc)
So: the numbers can be way too high because of lying, way too low because of demographics, on the high side because of demographics, way too low because it reflects people doing too-generic work, poorly chosen because it's from inexperienced or unsophisticated people, etc., etc., etc.
Better than nothing, no doubt. But use with extreme caution.
My consultancy is now starting to take on American clients, and I'm trying to understand what the average market condition is like to know where to start ourselves off.
If you are delivering $100,000 in business value, and you charge $20,000 for it it is a win for the company. If another developer charges $10,000 for it. Going with them isn't twice the win for the company.
You don't say I'm worth x% more because I work x% faster. You are worth $20,000 (which just so happens to be x% more) because you've done this before, helped other clients realize 5x ROI and you've worked around the nasty #2343 bug in the database that will bite them if they go with someone else.
My personal example: through a combination of political cleverness and tech-savvy, I saved a company several million dollars. That anchor makes me seem much more valuable than if I start by comparing myself to an average programmer, and describe how my services are better (in fact, my technological skills are substantially WORSE than the average programmer's, which would make it an even harder sell).
Also, since my stated goals were to work less and take more vacation, the flexibility advantages you mention for an employer are precisely the flexibility advantages for ME that I was looking for! I love the ability to, every 4-8 weeks when a contract is done, decide how long to take off before the next one if I'd like to, or decide which project to pursue next.
I don't want to be sitting bored in an office getting paid because they bought my time "in bulk", like I've done before. If you find that an enjoyable way to spend your finite amount of time alive, that's honestly great as you'll likely face less obstacles, but it wasn't for me.
What do US freelancers do? Are these people who make websites for local bakeries? Can you do a 20-hr a week freelance job actually coding something? And how long do employers expect such projects to last? What kind of employers look for freelancers like that?
Any personal anecdotes or whatever will be most appreciated!
If you think of them as just clients and you have a lot of inbound leads (built up by word of mouth over time), then you can choose the projects that interest you.
In my experience, projects ranged from 6 weeks to 6+ months, but I almost always had multiple projects in various stages happening at the same time. There were often a couple other freelancers on the project, coordinated by a project manager. It's useful to work with or through a design agency or "interactive" agency (as they were called 10 years ago). The key is to manage the entire project from start to finish for the client. The worst problem is clients who don't deliver content/approvals/etc, so you need someone focused on bugging them.
I also usually set a per-project price, not hourly. I hated tracking hours and it didn't give me the motivation to get stuff done faster. A fixed price also forces everyone to agree on a detailed spec up front. Add a little padding into your price, so you you can be kind about implementing the inevitable changes.
tldr; Yes, it's totally possible to make a living doing freelance development, all from home (or anywhere you want).
Having done them both, contracting was infinitely more pleasant. When you're freelancing, it's really easy for the "I'm working" and "I'm not working" time to blur, and very easy to lose work/life boundaries. In addition, dealing with non-regular clients can be a royal PITA.
But can you do contracting for 20 hours a week?
This is why I always recommend people to specialize themselves and not to drop out of college. You will have hard time convincing someone that you are 12 times faster/better than a "normal" developer, but if you have only 1000 people in the world able to do the job the company want to be done, you do not need to convince anybody.
It's not hard to see why, in the UK especially, there's a severe shortage of good developers. I can safely say ( hopefully without coming across as arrogant) that I'm a better developer than any other I've met whilst freelancing thus far. Companies are willing to pay for that knowledge and experience, even if it's on a time limited basis.
It's well understood in programming circles that a good developer can be much more economically viable then several not so good developers working on the same problem. I think Joel Spolsky's sums up this point quite well here http://www.joelonsoftware.com/articles/HighNotes.html.
I don't know how that is in the US and would like to know as well. It's very possible in the Netherlands to do so though; you make enough with limited time, but I just see people start with that intension and then add up more and more , while people with 'jobs' work less and less.
So, what's the problem? LACK OF TIME OFF. I've been stuck behind antiquated US corp vacation policies for a long time, and having had my vacation "reset" due to a job move is weighing on me a lot. 3 weeks total time off (which includes sick leave). I'm almost 40 and have a young family, and more and more I think the current PTO situation is BS. I actually don't mind working in an office 5 days a week, but I would like some more time out of the office.
So it's great to read someone achieving that, but I'm also incredibly jealous. Yes I could "just do it", but that would go against very deep and well-set views of how I need to provide for my family. I'm not able to stomach the risk (and unfamiliarity) at this point. I suspect that it will need to get worse (i.e. my job goes to shit), and that will force my hand and it could get much better.
My suggestion: Temporarily cut your family's expenses down to the bone. Food, shelter, telephones, insurance, connectivity, clothing etc.
Save up six months of the pre-cut household burn rate. Put it into another bank account that doesn't have an ATM card. This is your "I have been hit by a car and can't work for an extended period of time" fund.
Save up three months of the post-cut household burn rate. Put that into your normal savings account. This is your "I can't find new freelance projects for a few weeks" fund. If you're financially adventurous (like me), this can be in the form of available balances on credit cards. (I invest the cash in various speculative places, and then have the CCs in the event that I have no work temporarily. That doesn't actually end up happening, though - it's just a feel-good safety blanket.)
Then, do what the article says.
Worst-case, if you find yourself burning through your three-month, you can always pull the rip-cord and go get another wage slave job. At no point do you have less than six months of runway, so you're safe.
PS: Make sure you're always contributing your max $5k/year into your Roth, too. If you're ever really capital-F Fucked you can eat the tax penalties and get to that, too. I think of this as the "lawyer fees to fight the federal indictment" money.
You can actually pull the money out of your Roth IRA without penalty of any kind, for any reason. The catch is twofold:
1) You can only withdraw the money you used to fund the IRA (not the money you've made inside the IRA). E.g., if you've put in $20k over 4 years and the account value today is $25k, you can take up to $20k penalty-free.
2) You can't replace the money back into the account past the $5k maximum. So if you withdraw $20k and then don't need it after all... too bad, you can still only put back $5k/year.
People tend to think that vacation allotments are set in stone. They're not, and you can definitely negotiate out of a "reset". If you're used to having 4 weeks, it's not unreasonable at all to ask for that in your next job.
It's weird to me that so many people do the customary +5k negotiation before they start a job but they fail to negotiate an additional week of vacation which would, in most cases, make them a lot happier than an extra ~$250 per month (after tax).
That said, over the past week I've been drafting a polite but direct letter asking for the extra week. Sure I've already had the job for a couple years and my bargaining position is ostensible worse, but their need for employees is a lot higher and they have repeatedly said how much they like me, I do good work, future roles, etc. I like the idea of making them sweat a bit (there have been a number of recent departures), and maybe it will pay off.
The work, environment and people are quite good at the company, but the leave policies are annoyingly stingy.
The good news is that one major corp. I know had an unbreakable policy for years (every new employee starts at the same 2 weeks, NO exceptions) broke this when the local market got so tight they had no choice. So job market timing is part of it, too.
I'll also point out that executive compensation is always flexible, and the OP is coming of an age where that might be a valid path.
"Supertemps are top managers and professionals—from lawyers to CFOs to consultants—who’ve been trained at top schools and companies and choose to pursue project-based careers independent of any major firm."
It is pretty interesting to see freelancing become a "first-class citizen" in the high-skilled employment world, whereas previously it wasn't widely accepted beyond a few select occupations.
Here are some of the things that I've learned -
a) Set your working hours. Try to follow them, but not religiously. Having a batch of hours as free time is much better than being occupied throughout the day even for a 4 hour gig.
b) Get a small long term (ongoing) project. Few hours every month. Use the income from this project to pay the bills and perform other chores.
c) Any conversation with a random (or known) person about your profession can turn into a lead. You need to be in sales mode more than before.
Yup. Very good lesson to learn. Setting hours for work is much more useful than timing when you work.
Beyond that, probably the biggest single evolution was in my relationship to the work itself. In the early months and years I loved being able to go heads down on a project without ever worrying about the politics of the project or the organization: I was there to get the thing done. However, I am the kind of guy who cares about his work. Eventually I found this same experience to be dissatisfying. I felt that I was abandoning my children into a hostile corporate world with no one to look after them.
Moreover, as a freelancer you have much less influence over the product and the process. You're a hired gun. Sure, you can do a great job and collect a good paycheck, but if you love what you do it can be frustrating to have extremely limited input into decisions outside the scope of your contract.
Back to the author's very excellent point, I also found the management of benefits and finances to go from a source of engagement to just another hassle. When you are setting up your system, it's fun. When you are executing it, and occasionally screwing it up (taxes!), it's just another headache.
This is a big one. I semi-solved it by becoming a freelance architect/netadmin. Engaging the customer before it's time to write code can help a _lot_. Be full service! (It's also more work = time = money, too. I like money.)
My recent (and limited in comparison to yours) experience is that as a freelancer demanding a certain wage my knowledge and feedback is taken in very high regard and if I feel something needs changing it has been.
The other path here is starting your own company, owning your own product. But if what you love about the freelance life is bountiful free time, that is not the path for you!
- Follow your work times rigorously.
- Just because you own your time that doesn't mean you should spend it reading articles all day. (I personally look through HN in 1min, then save my interests into the pocket app and read them at night)
- Communicate with your clients a lot, sometimes all they need is to know how you're doing, they will appreciate it.
- BIG one, learn to automate tasks. If you code, get an application like codebox or something, stop re-coding the same stuff over and over.
- About the money, don't work for free, charge upfront percentage, the separate account thing is a good idea, I do that.
- Be an expert of your area. Basically, 'skills will set you free'
He omitted the part about not having to put on pants to go to work, though. That's worth $25k/year to me, easy.
Surely I can't be the only one who transitions from sleeping to awake with some crazy architectural change or refactoring in their head? I go straight to the keyboard and do it while it's all crystal clear in my mind.
The only time in the last five years I've _ever_ set an alarm clock is when I've had a doctor's appointment before noon.
Home is comfy.
So I guess this freedom is worth different amounts to different people.
My biggest struggle at the moment is what to aim for, yes working three days a week and getting similar money to what I was earning full time is great. Yet at the same time I'm not sure if this is enough for me personally. In fact when I start talking to my friends in full time jobs I kinda feel guilty!
Maybe I need some more hobbies, but at the moment the draw of earning more money by working harder is far too appealing. It seems I just can't say no to money.
When I was freelancing, I'd be putting in 50-60 hour weeks most of the time, because I felt like the hustle really paid off, but any time I got burnt out, boom, time off.
Health insurance wise, we're you able to get coverage for yourself, or are you participating in a COBRA plan from your previous employer? To be honest, health insurance is probably the one thing that would keep me employed in regular salaried position. The fear of having a medical emergency and it wiping out my savings is a scary and totally realistic possibility.
When I was laid off from a job a few years ago, I compared the COBRA price to ehealth, and I found COBRA to be priced about 4 times higher than if I chose a similar plan from ehealth. And, with the same brand insurer.
I'm unemployed since last week and I've been trying to find a part-time programming job for more than three months in Geneva, Switzerland. Part-time freelancing sounds great, but I have no idea where to look for clients.
If more gigs embraced ROWE, perhaps folks wouldn't have to choose the lesser of two evils.
Not saying that freelancing or consulting is bad, just that I think there's a viable alternative. I don't know what the future looks like, but I certainly hope the "40 hr salary work-week" goes away.
Not sure about the average freelancer, but most technical freelancers I know see it as a stepping stone towards getting their own little SaaS or iPhone app business off the ground.
If you're working full-time for a company, IME contracts tend to own all intellectual output at your time there, at home or otherwise. This doesn't matter much if all you do is put out MIT licensed experimental programming language parsers, but I wouldn't put many companies above executing on those terms should a product you build in your off-time achieve success.
If you are billing significantly above $100 per hour, you are not a commodity technical talent and have leverage in negotiations. Redline the IP clauses you find objectionable, and supply alternate phrasing. Stress that whatever is paid for by the project from inception to delivery remains solidly available to the client. Lots more details for freelancers to work out, but I don't want to hijack this discussion and just wanted to point out you don't have to accept the standard boilerplate if you don't want to.
As you say, I would have to be in dire financial straits before I accept a freelance contract that even casually mentioned IP outside the scope of a given clients project.
Is it that the developers here are not good enough, or not trustworthy enough. Or is it that they are unwilling to take the plunge into the unknown. I do think there surely is an inertia factor to it. But that's true anywhere else.
Maybe I just haven't looked well enough.
And did it pay well enough for other people to consider it?
I am not an exception.I know tonnes of people who do 'freelancing', though most of them end up starting small companies to take care of taxes etc. (they do much better marketing than I do) and work on a time and materials (x $/hour) basis (I don't). They work for companies in the US/Europe. With rare exceptions, it doesn't make economic sense to work for Indian companies, though it depends on the value you can add. Pays much better than the BigCo salaries (I know people making more than 100k US $).
The hard thing is establishing a reputation for competence, since with so many body shopping companies (Infosys, TCS etc) hiring (literally) battalions of borderline incompetents, "Indian developer" has come to be synonymous with "incompetent fraud" in many people's minds in the west (can't blame them, really), especially in the outsourced context. Standing out in this sea of ultra cheap incompetence takes a lot of work. The ability to communicate well (both oral and written) in English is critical.
All that said, here is some free advice. If you don't have any specialized skills, are not prepared to work really really hard (much harder than in your usual Indian Bigco), don't (personally) know any potential clients, don't jump into freelancing. It is not easy.
By the time I was ready to quit the 9 to 5 BigCompany grind, I had many offers to freelance. I just got lucky and I am really the wrong person to give advice on how to freelance in India.
And that is all I have to say. Cheers.
We don't take a percentage of your earnings (we charge a subscription to the agencies instead) and we have WAY too many requests for positions for us to fill at the moment.
Consulting implies a more advisory role while freelancing implies you are working on something.
Another similar term is contracting. The implication of contracting is that you only work on one project at a time. Often enough at the company's office as well. Contracting is more like a temporary work situation.
'Creative' industries like web design and development have a tendency to use freelancing. While consulting or contracting would almost always be used when developing a java program for a bank.
I am a software engineer specializing in robotics systems, and I find it really hard to find contract work that doesn't involve Javascript/PHP/etc, let alone one that involves engineering systems.
The usual advice is to specialize in something that's specific but in demand. For example, you could get really good at setting up a particularly common type of robotics system, or setting up systems for a particular type of problem. Perhaps try approaching the sales folks for a robot company and seeing if their customers are often looking for experienced freelancers: If so, would they be willing to recommend you? (Of course, if the robotics company has its own consulting division you might not have much luck with this plan…)
That said, he's in the worst insurance market in the US: NYC. To get the equivalent of the $168 / month plan we have now, esurance was at least $800-1200. Sickening. Best bet I found is Freelancers Union. Health insurance is horribly broken in NYC.
Be careful if you have certain prescription needs and check with each company if they cover what you need; the list changes company to company.
"Healthcare is a big and challenging topic, so if you find this to a problematic point for you, there’s a whole chapter devoted to it in the all-around very thorough book Working for Yourself. The short version is that if you can get on your spouse’s plan, that’s a great option, and COBRA can also be used if affordable, and can be turned into a personal plan after 18 months. I decided to go with an individual plan, looking extensively at both freelancersunion.org and ehealthinsurance.com before choosing a plan from the latter."
I quit my full-time a couple months ago and it's how I've gotten all my work.