Moving from a Permanent Position to Contract Work?
duncan bayne asks: "I'm sure many developers in salaried, permanent positions have been tempted by the self-management, flexibility and higher pay that are the perks of being a contractor, while at the same time looking nervously at the uncertainty and irregular income. So, to all those in the Slashdot crowd who've made the change - what was it like, was it worth it, and what advice can you share?"
Contracting isn't exactly self-management. Many companies prefer to do all project management themselves and simply treat contractors as implementers.
When I first started out it was definately frightening, however as time went on they kept giving me more and more responbility, eventually they ended up with a contract CEO. Don't ask. But the perk for me is that since I'm contract I can hit on the hot workers at my workplace without having to worry about any side effects. Try it sometime.
I think it was worth it to me. You have to realize that you won't always get higher pay and more flexibility; sometimes part of becoming your own one-man company is that you have less flexibility because you are the only one to do things. And while the pay may be more per hour often you get fewer hours, or spend huge amounts of time marketing yourself and doing research to setting up contracts.
Still, on the whole it is worth it. You do have more independence.
Traditionally people following this route have had former employers as their main clients. With sites such as scriptlance, rentacoder, guru.com, and etc., you can now get a larger client base, and even start doing it before you quit your old job.
However, I do have to say, that if insecurity makes you nervous, maybe you shouldn't do it, or at least save up money for a while first.
I used this resource when I did what you are considering doing: "So You Want to Become a Consultant?"
But should be a stepping stone to having your own company that actually *makes* something. I was a consultant for about 1.5 years. Not great money because I was only doing part-time while designing my own product.
"Eve of Destruction", it's not just for old hippies anymore...
Feh!! Good luck to you. You can have it!
No folly is more costly than the folly of intolerant idealism. - Winston Churchill
I've been contracting for a couple years ago. I've discovered that contractors often get brought on board often to organizations that either are experiencing unmanagable growth or are stuck in the mud because of problems with business process. So it can be frustrating. But the money is better and it's nice to know that you can take a couple weeks off here and there (assuming you save your money, etc.).
I think it's really a lifestyle thing. I like being permanently (although that word is a joke in this market) employed from the standpoint of working on the same project and getting some momentum for a while. But I don't have kids. Don't have a mortgage, so that's really the only advantage to me. That and if you like your co-workers a lot and want to stick with them. Those are reasons I'd rather be permanent.
Not much help, I know. Like I said, it's a mixed bag. Permanence is about more than just stability in work. It's about stability in what you do, stability in who you work with. And depending on if the job is boring and if you like your co-workers this can either be a plus or a minus. I'm just glad I have the financial flexibility to make that choice and not worry (as much) about the financial end of it.
I went from a cozy 3rd year job at an upstart, to managing my mom's spyware riddled m$ home network. Altho the hours are great with decent meal benefits a cozy corner office....... I for one, welcome avian flu. :[
Switching to Contracting? KFN
I recommend getting a copy of The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan.
I read this after getting my first (and very bad) job as a programmer. It covers many aspects of working in I.T., including some of the differences between working as an employee or a contractor.
Good Luck!
I think I think, therefore I think I am.
You actually might be better off - there are plenty of opportunities out there for talented contractors these days, especially senior people. The money is better, but you need to probably incorporate yourself to properly 'play the system' IYKWIM ;-) Bottomline is that you can probably make up to 30% more/year being a consultants, but bear in mind that you also need to buy your own health insurance, pay for your own 401k etc. So, don't be timid when negotiating your rate - if you have been making $100k/year in salary you probably should ask for at least $60/hr as a consultant, otherwise you're probably just break even or even wind up not making much more. BTW, that estimate consider approx. 3 months of no work per year. Good luck!
I made this move a little over 3 years ago. I was in a desperate situation in that my employer at the time was axing people left and right, good people too. I ended up getting dumped an entire bag of junk and work that I couldn't perform. My coworker, who was in an architect manager role had had enough and made the jump about 3 weeks prior. I ended up hooking up with the same contracting firm he went to and got myself under a W-2 employment agreement with them. He on the otherhand already had a 1099 corp established and was able to get the appropriate agreements in place for it. I personally didn't want to go through the motions of establishing personal health care, the 1099 corp, etc. It just wasn't something I could stomach at the time.
The jump was scary as all hell. I hopped on a new contract about 48 hours after leaving my former employer and started getting setup. Unfortunately, the position was not exactly as my account rep had conveyed with me. Nor was it as clear cut as the contractee's interview/position description stated. Needless to say, the first few weeks were a bit bumpy. I was able to establish a fairly good rapport with the client and things have been more or less peachy since. There is the temptation in some cases that, as contract, you will get paid overtime. I have to warn you. This is a blessing and a curse. When you do this stuff and go the extra mile, it sometimes becomes expected of you. While the extra money is nice, the long hours tend to really eat in to you.
In early June, after a couple of internal management organization shifts, I was under the impression that my contract was stable through the end of the year. Well 1 week into June, I was informed that I would no longer be needed in my current role after 30 June. Needless to say I felt that I had just been screwed over, my contract firm was outraged, and I was really starting to freak out as my, then, girlfriend (now wife) had just moved in. Money coming in was VERY important. Luckily, my contract firm has feelers in all over this particular company, they were able to secure me a position quickly in C++ land, which I wasn't overly proficient at as having programmed in Java for the last 4 years, but it was work. The way the agreement was inked, I would be paid as a salaried employee up to 40 hours, get 2 weeks vacation time, 5 sick days, etc. Overtime was a bit of a sticker. I have to work something like 6% overtime or some such garbage before I get paid for it. Since my earlier experience put a real pinch on me, overtime was going to be minimal at most if I could help it.
Long and short of this is that you should really research your options and your current situation. If you can stick it out and look for a perm position, go for it. If you are willing to "eat shit" for a while, you may come up smelling like a rose. My experience may or may not be the same that many people have. If you are confident in your skills and are able to adapt quickly to fluid situations, then you may want to try your hand at it. Make sure though that you have enough banked up to cover shortages in hours (i.e. around christmas time where code freezes may be rampant and actual work may be scarce).
Hope my long winded telling of my last three years has not been over the top or wandering too much.
For me, I have very few clients, one of which makes up the bulk of my income. I was sort of forced into contracting when that primary client couldn't afford to hire me full time with benefits.
The working from home is very nice, and yet due to my 11.5 month old, I am far less productive. There's something nice to having a real office to go (away) to.
As a contractor, make damn sure you have enough potential clients that can support your needs- for me, if my main client dumps me, I'm toast and there is no clause in the deal that they have to give me x-weeks notice since I'm not an employee.
Anyway, contracting has its plusses- and if you've got a good client base, it can definately be better than working in a cubicle. But you're also off on your own and you assume all of the risk.
So if you decide to wing it, work really hard to get and keep clients.
Well, it was definately worth it for me. - But it's not always more flexible. Sometimes a customer has a deadline, and if you promised it done to that date and are late, then you're gonna have to pull some hard work-hours the last week or so to reach it.
Sure, there's some flexibility in the fact that you don't have to ask a boss for anything, but as soon as you get enough customers, you're pretty soon going to have the same workhours as you would in a normal job, because that's when people expect to be able to get hold of you over the phone, also it's a lot more difficult to fit in a vacation if you have lots of work piled up.
And lastly, watch out, it's very easy to become a work-o-holic.
My <1000 UID is with a hot chick
The pay is usally fairly good as compared to employee (even considering their benefits.) If you do not live in metro area though you may find yourself flying into a job on Monday and returning home on Friday. If you like that life then go for it. I did it while I was young and loved the travel. Now that I have a child, I don't want any part of it. Additional benefit, as an consultant I have worked for many different companies, IBM, Cap One, Citibank etc etc. I've learned a lot of business domains. As an employee somewhere you may not get that. This business knowledge has helped me start my own consultant business locally with a vast array of clients. Headaches: paperwork! Ensuring you have a good accountant who understands the business of a consultant so you get max return. May be hard to find. Sometimes you may be aware more so than you should that you are just a consultant, not an employee. It hasn't happen too me but others have personally told me they were treated unfailry because they were not an employee. I've been doing it 12 years now, no regrets! Oh yeah, big plus, no more freaking annoying 360 evaluations. If that does not mean anything, those annoying evaluations where you judge your fellow co-workers. Ahhhhhhh!
Two wrongs don't make a right, but three lefts do.
I had a nearly-ideal opportunity; my employer was closing, and our sole customer needed a development department. I knew their offer was a panic reaction, and wouldn't last, so I offered to consult (non-exclusively) for a few months. That allowed me to launch my independent consulting career, which lasted a little over four years.
My problem, however, is that I'm not good at sales: cold-calling, lead-tracking, pavement-pounding. Once in contact, I could generally make a sale, and deliver solid work for good prices, but it was only enough work to break even after rent and taxes. When things temporarily slowed down, I didn't have much cushion.
I'm very glad I did it, but I wouldn't do it again without a bigger operating buffer or a sales partner. You really need to combine technical and sales skills to succeed.
Having done both at various times over 24 years, here's the poop for USA:
1. you'll have to make more than 50% as self-employed as you do salary to keep about the same benefits and have same income after taxes counting time between gigs making $0.
2. mediocre health insurance not including dental or eye for whole family: $430/month near chicago area, other posters might also give some rates.
3. Bookkeeping will be a pain: educate yourself on estimating and making quarterly tax payments or just opting to pay penalty, keep record and receipts, know tax laws for business expensing, entertainment expense, and use of vehicle, which is complicated. Tax software for the self-employed helps a great deal, highly reccomended.
4. Don't quit your day job and then start a business or look for contract work. Start your business while you work, or get a contract with appropriate start date and then quit job with proper two weeks notice, don't burn bridges. If you help your current employer to make a smooth transition you can usually use them as a good reference later. So no mooning/flipping the bird/taking dump in desk drawer of the CTO or your boss on the way out
5. Having a search engine friendly resume on internet has lead to most of my 6 -8 month contract jobs in last five years, not bulletin boards or job sites or snail mail or newspaper ads.
6. You can't restrict yourself to projects that are cool or exciting, some might involve some boring/legacy/archane junk that you've done before and the client needs someone with that hard-to-find skill. Happened to me twice in last 3 years.
5. You're in sales/marketing now, baby! of yourself - you need to network with people to see what opportunities are there, let people you you're willing to tackle projects, aggresively pursue follow-on projects and look for other work at clients.
I left my own company because my friend and I were going to team up and work freelance. When I told my bosses that I was going to leave (as expected) they first tried to convince me to stay but after they saw that I was not going to stay they said "Well, I guess that is all" and I said "Well, not really" and explained that I can still be contracted to do some of the projects that I worked in. Then, they were really excited and we both saw that it could be a good deal. They didn't have to pay for health insurance and for a flat rate have me work on smaller contracts. I still get emails from them about issues they have with environment I set up for them. And I help them for free for small issues.
I sent them a proposal and quote for how much it would cost to finish a major project they wanted me to work on. I quoted them at half the rate that it would cost for someone internally to do. It was a lot of money for me since at half their rate I would get enough to live on comfortably for a few months and still give me time to work on other projects.
They were slow to respond and never got me feedback on the proposal and eventually got an email telling me that they would like to continue the development internally. It was a bad economic blow for me and was living on the small projects that I expected to have fillers around that big project. I was making a fraction of the salary that I made at that company for many months, but I stuck with it. I ate less went out less. I cut down my bank statements from having hundreds of a transactions per month to a few dozen. The decision to leave was made in the beginning of this summer and used up a lot from savings to sustain, but I learned that a lot of the seeds that I planted a few months ago are just now becoming fruitful. I am in the process of signing 3 major contracts with people who I talked to months ago and I expect to be able to live on this easily for at least a year.
If I were to do it all over again, I would. It was the best decision I ever made. Freedom is great. I work more than I ever did at my old company. I am doing more advanced things and I am learning more. Because I don't have to be at the "office" I work whenever I want. I read more about other topics I am interested in.
BUT! discipline is everything. I make sure that I worked a minimum of 8 hours a day. I tried to do 10 though. If I wake up late, I work late. My housemates always comment about how disciplined I am and how I am always working, and it's true. Every moment you have, work. You also have to set boundaries. I never work on Saturday and Sunday. I turn of my cell phone and computer and don't touch my computer. I have another friend who does this and I suspect he's going to burn out pretty soon (i.e going to grad school).
what is nailchipper?
Prepare to be disappointed. Most contractors are implementors. That's one way. Another more albeit more negative way of looking at them is "sh*t shovelers", aka grunts. Most contractors are brought in when high level decisions and designs have been made. The contracting business is nowhere as robust as it was 10 years ago. With IT budgets slashed and the birth of offshoring, unless you're damn good and have made a name for yourself, I would not recommend it for the faint of heart.
-M
One thing to consider - you might make a higher wage, because the company doesn't have to pay for your health insurance. Make sure you have health insurance for your family!!, and you. This can be quite expensive, and maybe worth sticking to the company, as opposed to being an independent contractor. You might want to look at the cost and see if you really are making more as an independent vs being a company man.
If your life goes perfectly and you don't have any problems then great - you gambled and you got lucky. But what if you get into a car accident/ get appendicitis, or something worse? - Do you really want to pay out of pocket for medical expenses? What about eyeglasses or dental?
People get into accidents through no fault of their own. It's nice to be an adult and PLAN ahead for the unexpected, instead of just gambling on everything being perfect.
..........FULL STOP.
I think that people fresh out of school should seek out salaried positions for the first 1-5 years to build experience (learning the real consequences of a missed deadline is the single best lesson during this timeframe). After that, I think they should think seriously about going into the contract market. The "risk" associated with being a contractor (depending on your location) is no more than that of an employee. It's just a matter of different illusions/perceptions. The best job security, in my (not so) humble opinion, is always the ability to secure the next job . Unfortunately, most people tend to be too timid to realize that in most cases a company will take care of the bottom line, not the employees, first.
But your mileage may vary.....
Before I funded Feeling Software, I researched the market for several months. I also contacted hundreds of former colleagues, industry contacts, etc. I made sure I had enough cash in the bank to last at least 6 months. (It takes on average 2-3 months before I get paid by my clients, partly because currency exchanges from USD to CND means that checks are frozen for a month.) I read several books, e.g. "Getting started in Computer Consulting (Meyer)". I had nearly 10 years of commercial experience for highly reputable companies. I also did managed the R&D for a start-up for over a year. I knew about government subsidies, how to deal with investors, etc. Basically, I was prepared for the next step. It's been 8 months now and overall we've been quite successful. 4 employees (myself included), a dozen excellent clients, including regular ones. Cool projects. I'm still not making as much salary as I could if I worked full-time. But that's because we keep money to invest in the company. Overall the company is profitable and we're always ready to hire top talent when we see it. Note that unless you're pro at what you do, and therefore already able to keep a good and satisfying full-time job, you're not going to enjoy contract work more than regular work. Good luck. Christian Laforte 3D Graphics Expert http://www.feelingsoftware.com/
I do contract engineering work for mining and oilsand clients. In the last 5 years I have worked, in order: in Calgary, Vancouver, Edmonton, Vancouver, Edmonton and am currently in Vancouver. Two of the lean times have been very lean and forced the move from city to city, the other moves were chasing better opportunities.
Two other comments:
-I could never have made this work if I was encumbered with a wife/offspring.
-I will never go back to being an employee. Well, if I get hungry enough I might, but if I'm not hungry, then I'm not interested in being an employee.
-AD
I pulled contracting gigs from 2k1 to 2k4. And it was okay. I was a single early 20s guy, fresh out of the military with vetrans health care and a strong liver. Jump up to 2k4 and I had a wife, kid, and a house to keep tabs on. My last contract was killing me because health insurance was not included and the bill for family coverage was $980/month. So a year ago I got hired on to a local very successful and stable company, and I've been loving it ever since. No more down time with unemployment and odd jobs to pay the rent. No more putting my resume into 600 applicant positions. No more worrying about what will happen when I finish a project. Nope, I took a slight pay cut, but I gain full health insurance, 401k with 8% matching, profit sharing, a yearly bonus (depending on sales), a cubicle with a window view, and a project list about a mile and a half long. Job security is a beautiful thing!
-Rick
"Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
It is easy to underestimate the value of the benefits that most "permanent" employees have. I recently considered a contract position that was going to pay $70/hr. In my current position I make good, but not great, money as a Java architect. I did the math and figured up the monetary value of my benefits (stock, 3 weeks vacation, sick days, holidays, 401k) and the "break even" point for me was somewhere between $60 and $65/hr. Oh, and by the way I wouldn't see any money as a contractor for about 65 days. And the contract was only four months. The extra $5-$10/hr just wasn't enough. I would basically have to put all of that money in my "rainy day" fund, so my disposable income would have been about the same.
My point is that many people look at hourly rates in the range of $60-$70/hr and *assume* that it is a lot more money than they are currently making. Once you factor the value of benefits, that may not actually be the case. The worst thing you can do is jump into a consulting engagement assuming that you will make more money.
with bidding on projects on the job boards you mentioned is that you have guys from the US and guys from countries like India bidding on the same jobs. The US contractors want $80/hr, the Indian guys want $10/hr. It's very tough to land a freelance contract that doesn't require you to be onsite.
Otherwise, 8 out of 10 contracting jobs are usually doing the crap work no one else wants to do. And working with other contractors IS A ROYAL PAIN. Most of my contracting gigs paid great, but the work was pretty undesirable (read: CODE MAINTAINANCE
All I know about it is that consultants contribute a lot of code to the Daily WTF
Everything I need to know about copyrights I learned from Slashdot.
Before a business partner and I decided to go on our own, I made a point to have at least six full months of money at my current standard of living *before* we made the leap. Because of certain choices I/we made in landing some of our contracts, it got dicey towards the end. Luckily, it has gone well since.
I'll tell you what: Once I saw how quickly the six months passed with contracts dragging on and on, I've since made two pledges to myself:
A.) to have at least 1 full year of loot in the bank in cash and solid investments (low risk bonds and the like) juuuust in case
B.) to always save at least 10% of my gross income monthly even after I'd achieved A.
I personally watched four good-sized to lucrative contracts all at once drag on FAR longer than any reasonable person would have expected. Then there's the normal invoicing and payment delays, particularly so when working with very large companies, government, or educational institutions.
As for the mechanics of savings, IMHO ingdirect.com is a great way to do just that as they offer superior rates.
Best antivirus software
I've been freelance since 1998 and I'm on my wife's benefits. Yes, it would be much tougher without her (at least WRT benefits).
There are other ways, although I haven't thoroughly investigated them, such as through The Freelancer's Union. It's expensive there, but not really out of line for what your employer's paying for you in a "real" job.
There are (IMHO) two kind of contracting/consulting jobs:
;)
:) You don't want to get to the point where you'd take any job at any rate because you're flat broke.
1) 100% real independant: you find the client, you convince him, you do all the work from home.
2) being pimped: some firm calls you, you go work "in-house" for their client just like any other employee, but you're paid much more than if you were a "perm" since you're expendable, no insurance, no retirement, etc.
I've done both and I have to say being 100% independant is a lot tougher: you must spend a lot of time shopping the client, convincing him, making sure he's happy, negotiate a bit when things aren't as smooth as planned. It can pay big time, but it can also backfire BIG time if you mess up. Working for a firm relieves a bit of pressure since you don't have to find the contract yourself, just apply for the position, but you still have to negotiate your rate with someone working for that firm who's sole goal and main skill is to negotiate you down
But no matter which way you go, there are some very important skills you need to work on.
- Presenting yourself in an appropriate manner (dressing, talking)
- Be at ease and used to negotiate, deal, do an interview, etc.
- Build_your_network. Keep in touch with previous employers, senior employees, friends who know people who know people, etc.
- Know your stuff (whatever you do, C++, project management) from A to Z.
- Control your budget. Spend as much as you need to live well, but don't buy that cool new 5000$ gizmo unless you have 6+ months of savings in front of you
You need to EAT thru every book you can find on selling, consulting, having your own business (IRS, accounting) and get as much advice and backup from friends and family. You need to get over any shyness or insecurity in order to give the impression of someone in control, able to accomplish the task at hand.
From there it's up to you. Depending on your skills, you may very well end up having no security, not much more money. But if you really do your homework and identify and work on what you see as your weaknesses (eg: talking in public, negotiating your rate without the fear of "not getting the job") I can garantee you'll be happier than you were in your "perm" job.
I had some tough times and it wasn't easy all the way. Got to a point where my whole fortune was 800$ and I had no work in front of me, nothing. But then again when I look back, I don't regret one bit. The kind of money I'm making now is the salary I dreamt of making "in 10 or 15 years when I'm a VP or big manager here at company XYZ".
If you didn't have the constraints of being an employee, would you work more or less?
If you'd work more because you get paid by the hour, enjoy what you do, have a desire to understand how businesses are run, and now have a vested ownership in the results, then you're on the right path to start contracting.
If you like having the business do the business part for you (legal, financial, insurance, management, etc), like knowing that you can leave work behind after your 40 hours a week, and you don't go home trying to figure out what else you could be doing (and not just because you signed an IP agreement) then you're probably better off as an employee.
It's a big leap, and everyone here is right when they say you take on more costs (but you already knew that I hope), that there's more work, taxes, risks, etc. But it really comes down to a personal desire, since if you have that desire (and hopefully some ability that people will pay for), then everything else will work itself out.
My consulting business took off the day that I decided that I would never again perform work on an hourly basis. It makes for difficult negotiations, but I insist on a flat fee and a set completion date. This allows me to over-perform by getting jobs done ahead of schedule, and my clients dont bother me about adhering to a schedule. I show up for meetings and any other duties at the client site, but I dont let them watch me program, and I aint there to teach anyone how to do anything for free. This way, I can manage 4-5 programming jobs at the same time, and never have to watch a clock. I get a bonus if early and a fine if I am late. If you fill out a timecard in order to get paid, then you are a temp. Plain and simple.
A "contractor" is the field of programming is somebody who works at a company, doing a regular job, but gets his/per paycheck from a head shop. I worked as a "contractor" for 5 years, and was never once freelance, and I never "consulted" with anybody: I just worked.
As a contractor, I was paid significantly more. I was paid hourly instead of salaried, so I was actually paid for my time. I got to take off time between contracts as I liked, because most of the contracting firms had tons and tons of jobs waiting. Also, I wasn't generally involved in inter-office politics. I got to "job-hop" without being damaged by it on my resume... I simply chose 3-6 month contracts so I wouldn't get bored. Switching jobs that frequently allowed me to grow my skill set and experience very quickly. I never did any more paperwork than anybody else because I was a regular W-2 employee. I had all of the benefits that I wanted because I could easily afford benefits and much more.
As a contractor, I usually felt bad for the "permanent" schlubs.
General Advice
Pros
Cons
Being in my late 40's, it's almost impossible for me to find a technology or programming position with an established company. I'm either too old, too set in my ways, will want too much money, over experienced, too primadona, or too close to retirement age to be of any consideration compared to the 20-somethings out there. And since I don't want the headaches or want to play the politics of a management position, I'm basically forced into becoming a freelance consultant. With that in mind - I love it! I make my own hours. True, I usually work 60+ hours a week. But, I get to choose to take a morning off now and then without having to ask anyone for permission. Yes, the financials are a bit of a nightmare, but once you get the hang of it and keep track of every cent made, and every receipt, then it's not so bad. Also, if you have a lot of experience in a specific area of technology, and you have a knack at writing then you could also look at writing articles and books. Between writing and programming, I'm managing to keep pretty busy.
TheTiminator
I switched last January from being employed at a bank to being a contractor at a primarily software development shop. The switch was kind of scary for me because I got a family which needs certainty and health insurance. So I got blue cross which isn't as good as what my employer used to provide but it does the trick.
Things I love? No more idiotic bank rules to follow, which only seek to prevent me from actually doing any productive work. Being able to work in an agile environment. Being able to actually focus on software development versus idiotic worksplace politics. Not having to sit in meetings half my life coming up with specs that will never be followed.
Things I don't like? You pay more taxes because you are self-employed and you have to deal with it (quarterly payments, etc...). That's my only complaint.
I've been a contractor most of my 25 year career and I think it's the best way to go. You have no politics, fewer meetings, managers listen to you more than they listen to their own employees, and they don't waste your time as much. If you need something they tend to get it for you right away. There's also the variety, and for me the knowledge that I have a planned end date helps alleviate any frustrations and negatives there might be. I don't take jobs that I don't want, and I get free training by going after projects where I know most but not all of what's needed and can convince them that I'll be able to learn the rest quickly.
The only downside I can think of is that sometimes I do get attached to a place and don't really want to leave. But usually I can think of a couple negatives that balance that out.
To find jobs I use temp agencies such as Volt, and smaller ones that spring up all the time. I just send out my resume to the usual suspects when a project is winding down, and they find the jobs and arrange the interviews. All I have to do is show up. On average my projects last 6 months to a year and I have 3-4 weeks off between.
Agencies hire you a a W2 employee, so they pay their half of social security. I work a little over 45 weeks a year. Taking health insurance cost into account, my situation is roughly equivalent to having a full time job at $70-75k/year with 5 weeks paid time off and benefits. Not bad for web/db dev, and with no downtrodden-masses feeling that can come with a permanent job. Best of all, no maintenance assignments or beeper-carrying. All my work is new dev.
All in all it would take a mighty big carrot on a mighty big stick to lure me back to FTE.
Many programmers like contracting because it's a way to run a business without having to deal with people. They give themselves a company name, write off their apartments as work expenses, and speak to no-one for days at a time even though they occasionally need to win clients.
Most of all the experience of running a company/contracting is fair game for getting into corporate management later on. Most of the managers in multi billion dollar corporations are former contractors who listed their contracting job as "president of X".
Contracting does not produce more income than full time employment. Contractors devote a substantial amount of their income to higher social security tax, medicare tax, health insurance which companies provide their permanent employees. In fact, most contractors are paid less then "permanent" employees because they don't get annual bonuses or severance.
The payoff is the corporate management promotion. The contractors of today may be broke, but in a few year's they'll be multi billion dollar corporation, homeowning, plasma TV watching, managers while the rest of us are still sleeping in shipping containers.
Working for myself was nice because I could select the projects that I wanted to work on and then 'become' that type of business. I didn't make a lot of money that way since it took longer to do things, with every project being a new adventure. But it was an excellent education and I got by. Obviously, I was lacking economy of scale that larger and more assembly line ventures enjoy.
To run your own business, you have to be someone with the capacity to make sure people pay, be able to negotiate, deal with folks who don't compensate you, etc. You have to be able to have the courage to ask for fair wages. You have to deal with clients who change their specifications constantly and don't want to pay you more for it. I've taken to getting signoffs on the specs with the understanding that changing the specs later will result in extra cost.
This does provide flexibility and more free time, though personally I've had trouble keeping a steady flow of work which has hurt my overall profitability.
I tend to do a lot of long term contracts, and then pick up short term work in between jobs. It's a nice thing to be able to fall back on.
___
It's the end of my comment as I know it and I feel fine.
Contractors creed: No Act too unnatural.
But I would have to raise my rate for the sendmail part. :-)
I've been contracting for 18 years now. Boy am I getting old. :-)
My 2 cents:
1. The general rule of thumb is to charge 50-100% more than your salary was.
2. Buying health insurance is going to be a major pain if you are in the US and can't be covered with your spouse's work plan. Plan on spending $600-700/month. Prescription coverage is especially hard to get. (When I started consulting, insurance was $600 PER YEAR!)
3. Think about incorporating, probably as a LLC corporation. Buy Nolo's books on corporate structures and definitely talk to both a lawyer and accountant. Incorporating will help protect your assets if you ever get sued and can also give you more tax deductions.
4. Tax deductions are your friend. Deduct everything your accountant says you can - car (if you travel to a client), health insurance, computers, your cable modem, books, education expenses, etc.
5. You will have to pay both sides of social security taxes in the US. That means 15% of your first $80k in income is immediately gone. You may have to pay medicare, unemployment insurance, local taxes, etc.
6. Unlike what someone else said, I prefer hourly to fixed price contracts. This allows for the client to make changes (they always do) and you get paid for debugging, installers, research, testing, localization, etc. NEVER SIGN A FIXED PRICE CONTRACT WITHOUT A DETAILED, COMPLETED SPECIFICATION. Always try and make a client responsible for testing the software when possible, for liability reasons, acceptability, and because it's very hard for an individual to test software on many different operating systems, hardware configurations, etc.
7. Look for other clients. One client isn't enough. When money gets tight, contractors will be the first to go.
8. Look for other contractors and possibly join forces. Networking is vital.
9. Open a retirement account - definitely a Roth IRA and probably some other kind too (SEP IRA, SARSEP, etc). Your accountant can give you the details.
10. Never sign a contract with someone you don't trust unless they have deep pockets and even then it's probably a bad idea.
11. You are charging a lot of money. Make sure your skills stay ahead of everyone else's. When I started consulting C++ didn't even exist. I've been through new languages, new operating systems, new tools, embedded systems, server software, client software, etc. It's getting impossible to keep up with everything, so you need to predict the future and learn it ahead of time. You *will* make mistakes (I spent a year working on OpenDoc!), but hopefully you will also grab onto something new that will take off (I also spent time with early versions of QuickTime because I knew it was going to be big).
Contracting can be great, but it's definitely not as easy as sitting back and collecting a paycheck.