Ask Slashdot: Employees or Contractors?
gurn submits this item for discussion: "Here's my challenge, I currently managing the development section of a small Consulting Firm. All of the developement efforts are being handled by contract employees. They have announced that they are going to start expanding aggressively and as a result need to ramp up quickly - especially on the development side.. The president of the firm is uncomfortable with the developers being contractors, while I think it is the only way to get the best people. My thinking is that those that really know their worth and have high skill levels tend to be contractors. What do other companies do? What is your experience with contractors vs. employees? "
I love working as a contractor. The only downside I see is the penalty on taxes. ben
My experience has been this: if you need a task done that can be well defined, and has a short lifespan, say 0-3months, a contractor can be good. Examples might be writing tools that are "grunt work" or doing admin work for machines that are "hanging on" until your next project completes.
;)
In one position, I had a number of contractors work on development and deployment of a mail/web platform to support 25k customers. While they did reasonable work, what we defined and what they built didn't really jive in the end, mainly because they didn't come with the long term experience with our customers. Certain flawed systems, most notably NIS+ were used that later proved to be problematic, after many of the contractors were working elsewhere.
My advice is to find good people who share your vision and have the proper skill set who you can keep long term. This won't be easy, especially in an environment like the valley, but its better for you and your customers, and will almost certainly cost less. Don't forget that you can get an employee who has 75% of what you want, who will cost less than a contractor, and who can learn the other 25% as things progress. Employees can be put on-call... most contractors will balk at this.
As for all the good people being contractors.. I dispute that. Those contractors don't get good options in startups as a general rule. They may get more $/hour, but in the end the employees who stick it out tend to cash in way more.
-lynch
...I think it is the only way to get the best people. My thinking is that those that really know their worth and have high skill levels tend to be contractors If you really know your worth and have a high skill level, then why aren't you a contractor?
Depending on how you structure the company, employees are certainly more loyal, especially if there's stock involved. They'll hang their asses on the line to get the job done, whereas contractors typically -- note "typically" -- have a laissez faire attitude towards projects. This is more a market problem for employers than anything else; contractors typically come from firms that can have a backlog of opportunities. If the contractor is faced with a difficult project, the contractor can usually bow out for an easier one. An employee can typically find jobs quickly in the market, certainly, but there's always the hassle of having to find the job (unless he/she wants to become a contractor).
I've found that a good working environment with employees is better than any group of contractors...
More importantly, I think, is that a significant number of in-house development positions have been given to contractors...and many of the contractors are former employees who quit, then returned as contractors. Certainly the company may come out ahead in that they don't have to pay such things as social security and other taxes, nor do they provide any benefits, but the IRS looks very closely at the use of contractors for more than just short-term jobs.
Also, I would question that you get the best and brightest of people. I think that you get individuals who are seeking a lot of money...but they are also giving up security, important benefits and entangling themselves in a potential tax nightmare. Unless you know that you are dealing with savvy business people, I would question the wisdom of your contractors. The pay that they command may be a lot of dollars in their pocket, but when all is said and done, chances are very good that they have forgone a substantial long-term financial gain for some short term money. And that doesn't sound like a smart move to me.
But it's true that to quickly ramp up a rapidly growing operation contractors can be a boon. Just make sure that you're using your resources wisely. You'd probably be well advised for your first contractor to be a human resources analyst.
=h=
In this business, even if you're an "employee" of a company, how long do you really expect to stay with that single company anyway? While working for one company, someone may decide to be labelled "employee" or "contractor" simply depending upon how they want to do their taxes, what kind of short term benefits may be provided, personal reasons, etc not because they are more or less skilled than the other guy. Some places are reporting over 25 percent turnover per year of their IT staff. I see no reason why being more or less skilled than others would make you choose one label or the other.
I am a director of a small consulting company and we generally find that we get the best people by taking contractors. It also means that we aren't paying them when we haven't got work for them to do.
The downside is that sometimes they find work through other people and they aren't there when we need them later. This has proved to be less of a problem than it might, but we have very loyal contractors because we treat them very well, pay them very well and involve them in the company as much as we can.
We also take on some permanent staff, and permanent staff is what some excellent people want to be. Bear in mind that after the designers have done their design, you need to implement it and that sometimes the 'best' people are wasted on scut work but it still needs to be done. Sometimes people are after the security of a permanent position, and they aren't in the business for fun or anything, but they can be damn good backing on the project nonetheless. Mums returning to the work force can be fantastic in this sort of role, especially if you're willing to cope with them working their own hours and so on.
My sister was a Senior Systems Analyst with a big banking group before she quit to have kids, and when they got a bit older she couldn't find anything but the lowest paying of jobs in the industry, even though all of her analysis and management skills were still completely applicable. She's now the being offered a slice of the organisation she joined simply because she's proved (again) that she can do all that, and because she's the longest serving employee - after only five years.
So: it takes all kinds to make a world...
-- Andrew
Andrew.
I would like to see you justify that statement. If people come in under contract they essencially work for the company, so the execs paying their contracts need to be more diligent about making them diligent in their documentation and such. It's not the contractor's fault he wants to do a good job in a short amount of time. But if he's paid to do the extra administrative tasks he will.
I'm a loner Dottie, a Rebel.
The only person responsible for that is the manager that let it happen.
Make them an offer they can't refuse. Wave benefits in their face like health insurance, 401K, and other tax free stuff. Give them nice offices and make them sign contracts for x months, years, etc. They will probably take the bait. Also, try to generate a pleasant work environment.
I used to work as a contractor and was hired by a company I was working for. It's a lot more stable plus I don't have to deal with all the crap at tax time. I like going to the doctor and not having to pay full price and other stuff like getting $1100 CAT scans for free. I like my 401K. And, I like the people and the place that I work with. I don't have to be a salesman to get work--it's just there.
There are a large number of top notch people out there that have absolutely no desire doing contract work. I'm one of them. I like to get to know the people I work with and that can be rather difficult if you are jumping from job to job a few times a year. I also can't stand looking for work, I've got better things to do with my time. Yeah, the money contracting is nice, but as they say, money isn't everything.
Also, not all contractors are created equal. I have worked with a number of execellent contractors and I have also worked with a few turkeys (the turkeys don't last long).
Contractors are nomads, obviously. They move from job to job as the contracts last. They do not bond with the driving ideas behind any company and they do not have experience as to what will make a company work. For junk work contractors might be fine, but if you are developing a product that you'd like your users to use without suspecting a schizophrenic of writing it you won't contract 10 different groups of programmers for your 10 versions.
The fact that code is readable and modular and all that came from the idea that other people would be seeing your code but it doesn't mean other people HAVE to see your code and that every revision MUST be handled by a different person.
As a low-level manager in a tech support office, I have a large number of people I'm responsible for, and a recent hiring trend was to bring in almost exclusively contractors from [a prominent technical staffing company]. This has had two contradictory effects.
One, they know just slightly more than the untrained people who were brought on as company employees, but often had more relevant experience. This was both a boon and a burden. . . while they took to training slightly better, many had chips on their shoulders and were openly discussing their intentions of moving on after their 90-day period was up. Fine, that's up to them, but not so bright or good for morale.
Two, there is the issue of seniority should they choose to become employed by the company. This has caused no end of headaches.
This isn't an industry-wide sample, of course, but for what is basically entry-level technical staffing, contractors are not the best solution.
I agree with the individual who said that employees are better for long-term projects, since they will have more ultimately invested in the outcome.
Rafe
V^^^^V
Rafe
Opinions expressed by the author may not actually exist in the wild.
As a contractor I must say that, where I work, if the didn't use contractors things would take 10 times longer. There are two reasons for this:
:)
1. I work for the Australian government. The public service has a ridiculous class structure that means that new staff can't get employed at higher than the lowest level and getting increased pay for a particular level is hard. What this boils down is that that can't pay enough to get good software engineers on staff. If the don't have good software engineers there projects come in way over time and over budget. With good software engineers that come in only a bit over time and over budget
2. Software isn't core business. If the had to pay the required rates to keep good software engineers on staff that'd only be able to employ half the staff and the extra they are paying for SE's is wasted when the don't have work for them.
Admittedly there are a few problems with contractors. Most of these are to do with the fact that they don't have the same commitment to the company. What I've fund works well is if you have a few employees on the development team with the contractors. This means the contractors are invloved with the company. The employees don't have to be software developers they can be people who are there for requiremets and for ideas on what is required.One of the employees should also be a manager who is dealing with the admin side of management. This person should work closesly with the Technical Manager who should probably be a contractor. This approach will mean that the contractors work on your site all the time.
The company that I work for has established this method of contracting as our standard operating proceedure and when we bid for contracts we explain to the customer this is how we do it and we explain why. Most of the appreciate it and it helps us win the contract.
dabrig
"If ignorance is bliss, then wipe the smile off my face"
that was my $0.02 =) )|(
i want to live life, not just go through the motions
Sure, the hours suck. and it might take longer...
but it's just so cheap! real computer geeks don't need help!
"Subtle mind control? Why do all these HTML buttons say 'Submit' ?"
ReadThe ReflectionEngine, a cyberpunk style n
Well, having been a contractor who has worked on several projects over quite a few years, I have to say that while there are many contractors that can demand the big bucks for their highly marketable skills, there are also vast legions of contractors that are more or less useless and are only there as temporary people to fill in on crap jobs that full time employees won't do. I find it interesting, though, that you rarely find a contractor who is inbetween- they truly are either in the top, or down at the bottom. I think your choice depends on the application and the need; Keep in mind that fulltime employees can sometimes be best because they can be held responsible more than a legion of unknown contractors, from who knows where. YMMV.
EOM
In the Boston area anyone with a couple of years experience in the right areas could get a contract through an agency for 50 bucks an hour within a day. If you have 5+ years experience you can get 100 an hour. On your own you can expect to add 50 percent to that. Why anyone would waste there time working for a dead-end company is beyond me.
Of course, if you have an equity stake, that's a different matter all together; but working 80 hours a week to get a coffee mug and a hearty slap on the back at the end of a death march is for chumps.
As a well-paid Software Engineer I know that I prefer to be a real employee over being a ho for a bunch of brain-pimps (the contracting firm). I've done both.
One of the best things about being permanent is having a boss who really appreciates my dedication and skill (and becomes addicted to it) as opposed to a pimp who says "your last John sayz yer, like, real good or sumpthin" with glazed eyes. I don't mean to put them down too much. They're often well intended enough.
Then again not all contractors are body-shops, but I've not been forutnate enough to work for those...
License: By reading this you are agreeing that you agree with me.
personally i would love to work as a contractor because of the exposure to so many different tools, projects and toys, plus travelling could be interesting. overall being a contractor implies less reponsibility.
however, dealing with contractors can be a nightmare. it is inevitable for a fast growing company or division of the compay (e-commerce for a huge retailer for instance) to hire contractors while training and finding in-house staff. later on, contractors will remain but gradually be replaced by in-house staff (why? because it is cheaper and they tend to do a better job than contractors in the long run). contractors usually do not stick with the project and are less dedicated to it. they bring a very different skill set and might do things differently (documentation, implementation decisions, etc) than the regular workers.
right now after contractors used to be a main part of the team, we have them dong just minor clean-up, tools implementation and sometimes architectural input.
the trend is rather obvious - hire contractors and then train in-house stuff and slowly cut down the number of contractors (not necessarily eliminating them all)
...sie sind nicht grün
From my own experience as a contractor the only reason documentation is done is because the management doesn't want ot pay for it. On my current project we keep complaining there is no time allocated to documentation. I personally have been pushing for 6 months to update our documentation. Other divisions in our organisation are using our underdocumented software and we still can't convince them to do it. If the run out of money and can't pay us they are going to find that the have a huge chunk of useless software that no one knows how to use or maintain. Whenever I aks management says that there are other priorites and that some new feature was needed last week. What can you do?
dabrig
"If ignorance is bliss, then wipe the smile off my face"
I currentlly work as a project manager over a group of about 15 contractors. It is a very hard situation to deal with. On one had contractors usually are very good technically, and lack when it comes time to formulate an understanding of a companies business processes. (In short we have 70 million records in 65 databases, and it sometimes seems like it would be easier to teach the employees how to program than it is to teach the contract programmers how the data relates to the business.) This leads to delays. (For example - we may have a 4 day coding job, that turns into a 2 month nightmare because the programmers can not understand the business logic behind the tasks at hand.....) Whenever we have a contractor that begins to learn the business side of things -- they tend to start looking to move on to the next "gree pasture" when they get bored...It is no skin off of their backs, but we have to go through the whole process of "re-education" of the next guy. This is a vicious circle. IMHO
As an employee, I know that I'm going to be sticking around and probably MAINTAINING that code at some time in the future (even if I move to another project, I always find myself getting pulled back to patch up older projects to deal with unexpected contingencies), and thus I'm more likely to put the code together right in the first place. Take as an example the encryption code that I'm working on right now. I could have just taken any crappy old pseudo-random number generator and got good enough code that worked well enough for marketing purposes (albeit not cryptographically secure, but hey, it's a marketing checkbox). Instead, I took the time to put some DESIGN into it (if you look at sci.crypt you'll see part of the thought processes underlying that design). I wouldn't have done that if I was a contractor. I would have grabbed any old PRNG and rammed it in there, because the whole point of being a contractor is to go in, get the job done, and get out.
Anyhow: Contractors are hit'n'run, employees stick around. You need them both -- the project that I am working on could very much benefit from some contractors for a three-month time period, I have partitioned it off into a number of smaller projects that I can get a contractor working on in a jiffy. (Thank you Unix, "many small tools chained together" works!).
Think of it as the Microsoft approach ("good enough" code) vs. the ideal approach (code that is designed for expandability and maintainability, code that has some DESIGN behind it).
-E
Send mail here if you want to reach me.
It is not aways easy to determine the precise breakdown between in- and out-sourcing. Given the rapid mobility of the high-tech workforce, perhaps a better perspective would be what career structure can the company offer employees?
... The key factor is whether the company is located in an geographical area with enough diversity of skills.
Thus to keep someone in-house, the project would have to be of reasonable duration and of core relevance to the business with on-going committement, perhaps targetted at a family man/worman looking for stable employment. The skills and knowledge/training involved would require a fairly high salary so you have to look carefully at whether the product would be long-term competitive (forget patents/copyrights, with software anything can be duplicated/replicated).
- Outsourcing for specialised skills that would not have the volume of involvement to keep an expert happy/interested. Also for once-off events like security audit, conformance testing, etc
- Sub-contracting/casual stuff for things that others can do better, suits part-timers who need/like variety and are young enough to travel. You're going to find it hard to keep footloose staff so its better not to tie the success of the project to upwardly mobile people who will up and move.
- really urgent stuff, well I can be cynical here and say to form a subcompany and offer mega-options to attract suckers to sweat 100 hour weeks before they burn out and crash or have an anuresyn (sp?) before 30 but then money is not important, right ?
I suggest that you view employment as being a sliding scale and be flexible in your hiring procudures. Given the choices out there temping, contract, equity partner, etc, you afford to be selective in your choice of personnel.
LL
1- Generally employees should be hired for critical tasks.
I love the people I work for, and what I do - but if someone offered my twice the salary, I'd leave. Simple as that. I have about 4 major projects that would be left hanging, and they would have a very difficult time replacing me. We've had difficulty just hiring some to "assist" on our team, never mind being "senior". Mind you, I'd likely wrap up my projects cleanly, or at least give them a chance to salary-match. (Otherwise, it's just not professional)
That said, if you're really happy with a contractor, and you can give them a competitive salary, offer to make them an employee... it strengthens the loyalty somewhat. Because...,
2- Contractors generally know more.
Like I said, less managment and admin, almost all the major work is done by contractors. Government employees, despite the constant (free) training, just don't keep up. They took a gov't job for the stability - not to spend hours a week just to keep up to date. Contractors are in it for the money and the tech, both of which require keeping ahead of the game.
3- Listen to them, even if you don't think they have a vested interest.
Nobody want's to be associated with a failed project, and they all want to be part of success stories, so if they are really telling you something is stupid, don't ignore it completely. (The same can't be said for contracted companies though... there's less personal reputation at stake)
4- Always have them onsite.
Offsite contractors are just difficult to manage, and communications break down. Simple as that.
5- Make them feel part of the team.
They helped too, and everyone likes a pat on the back for a job well done. Don't overlook them just because you assume they know their contribution. If everyone else in the team got a token, but not them, they'd feel pretty bad. I know it sounds like a small, silly thing (Dilbert-related), but it helps.
While it's true that having 10 different groups of programmers for your 10 versions will waste time, as each group has to get re-acquainted with the source base, it still may be better in the long run to rotate people through the project. Why? If you're programming component Gizmo, and you know that somebody later on, other than yourself, is going to have to maintain Gizmo, you're going to think a little more about making Gizmo easy to understand/documented. However, if you believe that you are the only one that will ever be maintaining this Gizmo for a long time, why bother with documentation/understandable design -- you can get your new features implemented faster by skipping those steps. The nomadic consultant programmers will understand that they need to write better code such that the system can be maintained.
This brings up an interesting question: how is code handled inside Microsoft? Do programmers end up running their own modules for long periods of time without rotatation of programmers? If so, this may explain why Microsoft's programs started out being fairly good, with new features ahead of the competition, yet now, several years later, they are having horrible problems with stability and code bloat. One reason I think Linux is so stable is that the programmers expect and hope that others will view and improve their code, so they write it in an understandable fashion. Microsoft code is undoubtly terribly more ugly to look at than any open source project (just ask the folks who got University licenses to see the NT source).
Without long term, dedicated employees, your company cannot build a technical personality and its associated value.
I have been both a contractor and a full-timer. The work I did as a contractor was simple and task oriented. Whenever I wanted to innovate or improve the process I was ignored or rejected. Now, as an employee at the same company doing the full-time version of the same job I have latitude to do what I need to do to help the project and the company succeed.
Looking back on my contractor days and also at contractors now in my group, I can easily say that for positions that the group clearly needs creativity, dedication and innovation, it should choose a full-time employee - and reward them well. As a full-time I have taken on nearly the same task with a ton more energy and enthusiasm than I was even allowed to before and am therefore helping out even more!
If you need people on to help maintain a project for a definite period of time go with contractors. If you need intelligent people you want to add value to the entire company with, choose full-time employees.
Thanks for your time.
theSLEEP
on the other hand, it all depends for a project. if you are building an e-commerce site for the business - it's done in 6-10 months and all is left is maintenance and some intranet stuff. this is clearly a contractor's job. it's done and you move on. if it takes up to 2 years, then regular employee might move to a different company essentially becoming a contractor.
so for isolated, self-contained projects contractors might be a good choice (as long as you do not want to maintain it or expand it) while for the long-term stuff employees would be better.
...sie sind nicht grün
It sounds like the code these developers are going to write is part of your company's core mission. If that is the case, then you really need these developers to be part of your company's core.
If the code is simply add-ons, doo-dads, and gee-gaws to what you actually do, then I back off. Frills and extentions can be done by contractors.
But if the code really matters, if you are judged by the application, then you need to have your developers' motivation aligned with the company's. That means making their financial success tied to the success of they company's. That means equity, not contract-by-month.
Building a good engineering team is not an easy thing. But it is absolutely necessary if you want to put out a good product.
I really disagree with the concept that "the good ones go into consulting." The good ones really care about what they do, and that means sticking around long enought to make it sure it works. Of course, you have to make it worth their while. Good people have "vision." They see their products almost as children, and care for them accordingly. Consultants see their products as rest stops on a highway. Nice for the moment, but nothing to invest any real time in.
Do you lose sleep at night worrying about work? I bet you do, and it is because you care about your job and how your company does. Good developers will be the same way. Contractors will worry for 3 months, and then just walk away.
I noticed something today while I was at home after 8 hours of work. At about 9:00PM my boss calls me up. He's changing my schedule around to 12-9PM and scheduling me to work on weekends.
Now I'm a contracted employee. I'm also a tech employee. Something I've noticed is how much tech companies in general now don't care if you're a contractor or an employee, but they assume you have no social life, and that you live and breathe their company.
I got a little ticked off, mainly because I'm going back to school soon, and that I went for my interview and got the job about 3 months ago (at the beginning of the summer break for me), and I started about 2 weeks ago, them knowing well ahead of time that I'd be going back to school at the end of September.
But now the very end of my summer at home, the time that I wanted to spend with friends and my girlfriend, are sort of shot. I'm at work all day and when I get home, it's too late to do anything with people that go to work early in the morning (basically everyone).
So I'm guessing I'm taking this opportunity to bitch, because I'm in a bitchy mood. But I don't see how a company can assume you have no social life and want you to live at work. I know a lot of techies do this (according to the earlier /. post that), but... isn't there something more to life than work? Can't we all get paid lots of money and work normal 8 hour days and 40 hour weeks? Is that too much to ask?
Oh well.
FuzzyC
Well I can give you a consultants and perm employee view of things. In my consulting travels throughout 2 dozen different BIG companies I generally find that consultants come in two varities Really good and Really crappy. Its ..aka zillions of approvals and such to buy a dam box of tapes.
easy to weed out the bad ones.. Generally a consultant knows that you can fire them at any moment so they generally dont slack off to much and work to make their bosses happy. Although consultants generally dont like to put up with a
lot of corporate bullshit..at least the good ones.. They dont want to be involved in office politics, strict dress codes, and really crazy hours, etc. Generally people become consultants to get out of a low paying gig or they are tired of they previous mentioned items. Since we are in a big buyers market a consultant can leave at a drop of a hat as well. I generally get about a dozen recruiters calling me a week trying to get me away from my current gig. And the pay rises dramatically in a sort period of time. Consultants generally have very fresh skill sets and are used to working quickly to solve complex problems. They dont like being sucked into the corporate quagmire
Now a perm employee comes in two varities these days it seems: Those that have been consultants and are going back to perm employment and those that have always been perm employees. IMHO Perm employees tend to get lazy over the years and dont keep their skills as fresh as they should. Consultants who are going back to perm tend to have a much fresher skill set but eventualy will fall into the same habits as perm employees reguarding keeping their skills up.
If I was managing a development project that needed to ramp up quickly I would Hire perm a good technical lead and a good project manager. Then let the rest be consultants. You need someone who is perm to keep the project alive incase you have a mass exodus for some reason by your consultants or their is high turnover. Is this project going to require a lot of maintence over the years? You might want to hire more perms then I just suggested.. Its gonna take 1-3months for a consultant to get fully integrated into the environment and start performing fully. If you have a rapid turnover you may never get productive. You then need to ask why you are having high turnover.
If you do hire a bunch of consultants then pick the best out of them and make them attractive offers. Remember how much they are making hourly.. you will have to shoot high to get them away from consultanting. Maybe offer the consultants the possibility to turn perm if they work out well from the beginning. If they accept then make sure you offer training so they can keep those skill sets fresh. I wont join a company that doesnt offer at least 2 weeks a year of offsite training.
I dont like looking for a full time job by being tried out by companies but if they make an offer and I like the place I will generally consider it. So far over the years, 6 or 7 have made offers but none came even close (within 20k) of what I was making as a consultant and I wasnt ready to deal with corporate bull. Recently I just accepted an offer to go perm but it was the right company.. Great people, Great pay, Good work.
This is ALL my personal observations over the years. I would like to hear others..
Malice95
Yea I know the spelling sucks.. I'm tired..
Of all the figures you quote, they can only get better by being selective of the company you take options from. Its similar to playing any game, you don't make move randomly, you think about them. I have worked for 4 startups now and had 2 go public (but I left the last one that went public just before it did).
Just remember to be selective like you would normally be and don't let the lure or options seduce you to work at a place that you don't see going anywhere.
-jason
I currently work for a small but successful Ecommerce/Web Development Company In Melbourne Australia. I was put on as a contractor, I was not given the opportunity to choose between being employee or contractor I was told that if I didn't sign that 20 page emplotment declaration that I would not be getting the position. My question is this... Since this is my first ever job as a contractor, I am wondering exactly how much tax I have to pay per fortnight ? I only earn $1000 a fortnight (maximum) which is a pretty poor wage but will do because Im at University. Should I be claiming tax at all ? Im currently recieving cash checks and Im not sure what I should be doing with my money. Can somebody with some sort of accounting background please help me with my problem ??? Or tell me where i could recieve some ???
If i was in that position i would be looking at getting some permanent staff, the beauty of it is that the person/people that start the pages always know exactly what they where doing with it and how they wanted it to appear.
This keeps the same appearance running though the whole site, and you could find someone as dedicated as the webmaster for slashdot has been...
All in all, i think that if you find someone who is a talented and skilled web designer, then you should atleast try to make a perm position for them within the company... I personally am fed up of seeing pages that have no set idea though the whole thing, changing from frames to tables to whole different styles.
The Reality in which we choose to live in really sucks
Point being that it was corporate POLICY to hire kids for peanuts in full expectation that after putting a year of work, those kids would go elsewhere. They figured they got "good enough" work out of their cheap employees, and it saved them money. Their response to the IT shortage is illustrative -- they were one of the biggest enthusiasts for increasing the number of foreign IT specialists that could be imported on special visas. They figured that'd let them hold on to their kids for a few months longer, since there would be fewer higher-level jobs open to them (since the kids are woefully underqualified compared to the typical Indian programmer). That's how corporate snakes think, y'see.
Point: Employers who give a **** about their employees don't have those kinds of turnover problems. You can bet that employers who have those kinds of turnover problems typically have fascist environments that monitor everything, office politics rather than ability detirmines advancements, they require regular piss tests, have dress codes that are more conservative than Wall Street, and require two reams of paperwork to requisition a stapler. Sometimes these guys even pay well, but it just isn't worth the hassle of working there.
-E
Send mail here if you want to reach me.
I completly agree with you, contractors are the best as long as they are professionals on whatever they do. I don't say employess are not.
But usually a contractor have more experience.
It depends on what kind of profesional you are hiring, if it's a good one, does it really matters if it's gonna be employee or contractor? the chances are.. if he's really really good he's probably not going to take a job as employee, and if he does, he might be lying you about his knowledge and/or experience, at least it happened to me a couple of times.
most of the companies I know hires contractors for the most uncommon tasks and tries to find employees for the most common ones.
I hope not to offend anybody, I'm just talking (and complaining a bit) based on my experience.
Then you need to fire the person that hires them. The problem isn't contractors, the problem is somebody in your company doesn't know how to hire good people. This is a very common problem.
----------
In a real emergency, we would have all fled in terror, and you would not have been notified.
At least when I was contract on a 1099, I couldn't figure a way to expense my health insurance. Tax law treated it as a personal expense, not as a business expense, and personal expenses are not deductible.
-E
Send mail here if you want to reach me.
It's worth considering Uncle Sam's definition of contractors. Specifically, the IRS (for that matter the justice department) considers a contractor to be someone whom you hire to get a specific job done, but you cannot tell them how to do it. With contractors, you may only have control over the finished product, not the process of getting there. Getting this wrong can give a contractor leverage when it comes time to pay out benefits when a company achieves liquidity. They can rightfully argue that they should have been considered employees. If memory serves, the government itself (USGS) got burned on this a few years ago.
There is no reason for "employment" at all, one can use contractors on a long-term basis as long as the contract is structured to do so.
I am an independent contractor and a business owner. I will not work under terms of ordinary employment, and I am fortunate enough to be able to set my own terms and have them met, without negotiation 99% of the time.
This does not mean I am unwilling or unable to commit to long term support of my clients. Moreover, I have worked contracts which were "full time" for over a year duration, and which posed no serious accounting difficulties for me or my client.
The important thing that you *must* do in such cases is to ensure that there are two contracts, one in each direction - the contractor must be responsible for providing his/her own hours, work area and tools. Conversely, if work needs to be done during certain hours at your place of business, a rental agreement may be drafted to specify the same.
Consequently, you do not have to pay unemployment or FICA taxes, and your contractor can receive more money upfront, to manage according to his/her own priorities.
Peace and love, y'all
I am a contractor. And before you shoot me down as being 'worthless' (as some are calling us), let me say that in this industry, there are alot of individuals who are worthless (by my estimates, 50% of all IT ppl are below average in ability or aptitude). Alot of these worthless IT ppl do become contractors, as they cannot hold down a job in an IT position. However, there is a significant number of contractors who are worth hiring on contract. The only reason that I am a contractor is so I can have the freedom to pursue contracts and jobs that vary wildly. I am a Network Engineer (CNE certified), A 'programmer' (I don't like using this title, as the only language I have truly mastered is *ick* Visual Basic), and an Electronics Hardware Designer. It would be impossible to find a job that encompasses all three of these areas of expertise. A true contractor takes complete ownership of the contract, and as long as the contract is explicit in its demands, then that contractor will exceed your expectations. The only problem is finding a good contractor. Its the same as finding an employee. Most of the ones applying for the contract/job are not suited for the job at hand, and some (well, most) exaggerate their skills when trying to land the job/contract. I would say hire contractors for this job, but dont use advertisements or employment agencies to find them. Call your associates, friends, members of any User Groups you may belong to, or IT persons at other large companies. See if they know any contractors that they can recommend. I've done this in the past, and it works. Just my two cents worth... (well, 3 Canadian cents).
Feed the need: Digitaladdiction.net
While it is true that some first class people make a great living as contractors/consultants, many are also people who just can't get hired on a regular job.
For some reason the "hiring process" is much less stringent for contractors, so these unhirable people can make a living that way.
One of the top level contractors told me that 80% are of the useless variety, that give people like him a bad name. Don't know if it's true, but it sure is food for thought...
I am a Project Manager in a Contracting Company, so probably I am biased in their favour.
Anyway, Contractors come in various shapes, just like the employees do. You can find contractors who will work 9-6 and you can find contractors who will more commitment to the company/work than a regular employee.
Advantages of Contracting:--
1. You do not need to hire and fire people just to get enough headcount for the peak development phase. Someone else handles the headache for you.
2. Although you are paying more than what you would pay to the regular employee, when you count the costs of Human Resources Management, Technical Training, 401, Vacation, Sabbatical, Stock Options etc., it does not end up being much more.
3. Many contractors do come with a better expertise of the functional area you are interested in.
Disadvantages (reasons/solutions):--
1. Loyalty. If you asking for a person to work with you for 3 months, you do not expect that person to be more loyal to you. And why should you??? However, I have seen contractors working for a single client for multiple years and being a strong part of the client team.
2. Employee Satisfaction. When an employee notices a contractor earning more than him/her, it is not bound to leave a good feeling. However, as long as they understand that the contractors are temporary and justified for a particular requirements, AND not a threat to their jobs, this risk can be mitigated to some extent.
3. Code quality. I put that in as a joke. Code quality is as good as the deadlines and/or the application design, irrespective of whether the coding is done by an employee or a contractor.
4. Loss of expertise once the project is over. Yes, once the contractor leaves, the expertise is gone. But should you not have some employees in the project?? Or some long term contractors?? At least one of these is essential.
Othe Perspectives:---
I come from a company which believes in offshore development. We do most of the work in India, while keeping about 10-30% of the manpower at the client side. Since the costs of doing work in India are about half the costs of doing work in US, the cost issue becomes moot. Also, part of the management headache is passed to the consulting company. And since we are commited to working with an offshore model, we put in much more effort to make the offshore work a success. This model is great for large project teams though may not be suitable for small projects.
Anyway, please do not treat this as a promotion for my company. I am a regular slashdot reader but this is the first time I though I would be able to contribute something to the discussion. You can write to harry_ruby@hotmail.com to discuss any other aspects of this issue. I would rather not get company email to get flamed.
PS: I have worked for 4 clients in my 8+ years in this industry and have been involved with the current client for more than 3.5 years. As a contractor.
If you are developing anything that is for the long haul, as Brooks in the "Mythical Man Month" says, you'll be tossing out at least the first attempt. Chances are, you'll be refining, maintaining, and redefining the requirements again and again. And if you want to have a maintainable code-base, it pays to have people developing for the long haul. Instead of bringing in new "bodies" to keep re-inventing the wheel for better or worse.
Using contractors is one good way to find out who you want to hire. If they're good hire them. Pay them whatever they want in salary/wages and benefits (within reason). They'll be worth it. There are countless studies (despite the platitude, I can't name one) that state that the difference in productivity between a great and a normal programmer can be six times the productivity. Good programmers on staff are worth it.
Once you have a couple good lifers on board, they'll usually be able to give you leads from their own network of contacts as to who is available, and who will fit the bill for a given job. Which in the end, is better than trying out 6 contractors to find 1 good one.
Life is like an egg better scrambled than fried. -- Ken Sawatari
Yes, there are a lot of bad contractors out there. Yes, There are bad consultants. Yes, too many are motivated by money alone.
But most consultants are {should} be different from the sort that most people seem to have experienced and are commenting on here.
I am a consultant. I work for myself, sub-contract out for additional help only when needed for a specific area. I tend to maintain my relationships with clients for years, even if they only have me do a few dozen billable hours of work for them per year, unless they are completely unreasonable or don't pay their bills.
The pay is nice (easily twice what I can make in my state [Maine] as a employee most places). But I don't consult because of the money. I am a consultant because I *hate* doing the same thing every day, and I want to be using and implimenting fairly new stuff on a regular basis.
As a consultant, I get to see and use a lot of new technology, and gain experience in a lot of different settings. I get to work with all kinds of people and different types of projects. I have even cut my rates to work on a project from time to time, because the project looked like fun or was interesting in some way.
People hire me because I get the job|project done and can resolve problems (or better yet, anticipate problems) that leave their own guys stumped, or at the mercy of their vendors. I usually work directly with the customer's IT staff, and am often given day-to-day management oversight of their staff for the duration of a project.
I believe the fact that I work on many different projects for many different people is a value add for my clients. I can't tell you how many times I have been able to tell someone "you want to watch out for X when you do Y" because of experience that I gained on another client's project.
I also hate office politics and the other BS that often goes on in organziations (ever have to chase paperwork for 3 hours to buy a $100 part?). As a consultant, I am an outsider.
I can tell the management or the CIO or whomever EXACTLY what is wrong with their methods or ideas or who isn't pulling their weight, and not have to really deal with the politics, if I don't want to. It is not that this gives me a license to be rude, but rather, an opportunity to be completely honest with them. Sometimes this doesn't go over very well, but often times, they are glad to hear it.
A good consultant should be able to save you time, money, or both on your project. They should be able to represent your best interests in all areas, especially when dealing with vendors and outside contractors. Consultants should be vendor neutral. A big pet peeve of mine are the so called "consultants" that are really just resellers for a set of product lines, and really only want to sell you their "solution package". Consultants should only sell their time and expertise, and nothing else. I very rarely ever let a vendor or contractor group so much as buy me a drink.
One of my own personal goals is to always bring enough value to a project (through cost savings or time savings) that it more than pays for my consulting fees.
In short, an outside consultant should be hired for the same sort of reasons that you might hire a good lawyer, accountant, or other professional: to help you with major planning or processes, to give you access to a depth of knowledge and experience you don't have in-house, and to kick some major butt when and where you need it.
There's a lot of good info in here, a lot of good advice, and very little that could possibly need to be moderated down, so, I almost feel odd skipping over page after page of commentary that probably contains the same sentiments I'm about to espouse.
I've seen contracting done well and contracting done poorly. I've worked in situations where i felt it was done poorly.
Yes, by and large, there is at least the myth that all contractors make more money. This isn't always true. I'd venture to say it's more often than not a myth these days.
I can't say i enjoyed my experience as a contractor. I love the company that i worked for, I just got tired of being citizen 2nd class.
Businesses can't survive without teamwork, and a team oriented perspective is aided by actually, well, being made a member of the team.
Loyalty is a two way street. If you see a long term need for your contractors, offer them a full time position. Offer them an equitable salary and job security. Let them know that they can take their pick, that you don't wish to force them to change the way they work for you, but you'd like to offer them job security because you value their work. See how many of them will bite. I suspect a fair number of them will, and a fair number won't. To each his own.
I think it's absurd to think you need to hire contractors to get the best people. You may find excellent people working as contractors, and better than what you'll drag in off the street generally, but by no means the best.
At some point in their life, most people find themselves in a situation where they realize their stress level, or the stress level of the people they love, would be greatly relieved if they were to aquire a position of security in a good company, and feel assured that they have no reason to believe they'll be looking for work in a few months or years.
That being said, I'm afraid there are too many companies hiring contractors on a "when we feel like it" basis. It's incredibly unfortunate that the lines between "technical contractor" and "temp" have become so blurred.
If you know you're only going to be using someone for a limited time, let them know how long that is. If you're filling for a 3 month project, give them a contract for three months with the option for you as the employer to extend the contract, and give them the option to negotiate to leave early if the project completes before the deadline and they are nolonger needed.
Give them a definate date, guarantee them work for an agreed-upon length of time, so they know when they will be available, and when they should start looking for other work. Leave yourself the option to forewarn them of possible contract extension if the project is going longer than expected. Leave them the option to negotiate to leave early if the project is ahead of schedule.
In short, give them a clear cut, sane, and equitable package.
And lastly, by all means, even if they are a pinch hitter, let them join the team. They've signed the nondisclosure agreement, so you can let them come to meetings that pertain to their work. Let them come to the company picnic, have them bring their family or a friend of they like. They feel uncomfortable getting involved, and may decline, but it's only polite to invite them. Let them know that for the duration of their contract, granted some obvious security risks that need to be looked out for, they are indeed one of the gang.
Otherwise, if you've shown them no great consideration for their person, you can expect them to show you a smiliar ammount of consideration for your project.
It's just food for thought. There were days when i was between "real" jobs when i felt like i wasn't doing all i could do for the company i was with, but couldn't totally convince myself that I wasn't more of a water boy than a pinch hitter.
I feel bad about that, but what i wanted was a secure position with like-minded, team oriented people, and i couldn't help feeling disappointed with the situation i was in.
Some people like contracting. Treat them well, they'll treat you well. When you need them again, they'll come back to you.
Some people are just looking for the right company, or are waiting for the right company but haven't fully visualized the need for it. If you need them, offer to take them into the fold, it's a better relationship for both of you. If you don't, give them as much stability as you can. They will appriciate it, and will do you the same favor in retun.
This is just like television, only you can see much further.
Here's an idea, you get what you settle for.
Everything that I might have said has already been said, and sometimes not too politely. Given that I am a contractor and that I prefer it that way, you can guess how well I like those snide remarks about contractors being ill bred parasites. However, to give it perspective, look up J. Campbell's analysis of the interaction between the nomads and the agritarians. Compare it to the Contractors and Emps. Funny how things work out that way.
My question might be more suited to a different Ask Slashdot but as far as getting experience goes is contracting better or employee? Right now I'm a systems engineer for a large systems integrator. The problem is, we have no projects, no opportunity to learn new skills, no nuttin. I'm either sitting in the office (ahem, reading Slashdot) or out at a client troubleshooting a tape backup problem. For most of the last year I've been involved in various desktop projects for a large (5,000 or so desktops) bio-tech firm. Sounds ok until you realize the "project" consists of point-click-wait, repeat. Bottom line, I'm bored out of my skull. I've pretty much decided that my future with this company is zero. The main question is, if you've made it this far, should I be looking at contract jobs or just look for a company that has more going on?
And a lot of companies simply can't hire me. I'm not some C++ water walking guru. I simply won't take the HUGE pay cut most companies are looking for when they make me a permanent offer.
I'm a contractor because currently, I am comfortable with business reality. A publicly-owned high tech firm has its priorities in the following order:
1: Customers (No customers, no business)
2: Shareholders (Only slightly less important)
3: Employees (If anything left from 1 and 2)
To those of you wondering, stock options DON'T make any difference. I still make more money in the long run. Sure, I could work for the next Red Hat, but that's like winning the lottery!
It comes down to the fact that I like what I do, but I insist companies compensate me fairly. If the economy takes a downturn, I will almost surely end up making less money. HOWEVER, a lot of permanent employees are going to get canned as well. As a contractor, I can save for that rainy day.
As someone who has just started his own independent consulting business, I take some offense at the generalizations that contractors care only about $$. I do not work through a body shop, I work direct with my clients - they get a better deal monetarily and so do I. I think that the individual determines how they approach work and their employment status has little to do with how connected they feel to a project, etc. I think, that if anything, a contractor/consultant feels more (at least I do) that they should be doing a good job to justify their high rate of pay. I worked for almost 3 years in a Big 6 firm, then as a consultant for a Top 10 software company, then at a Top 10 newspaper, and I'm happier now as a contractor because I have one thing in more abundance than I ever had before, and that's FREEDOM! Granted, I'm not completely free vis a vis the needs of my current, full-time client, but I went to the Open Source conference two weeks ago because I wanted to go. Yeah, I had to foot the bill, but it was well worth it and more importantly, I didn't have to shuffle my feet in to The Man and ask permission to go to something that I believe will take my career to the next level in the next 3 years. I plan to never work for a body shop - I'd rather go back to full time employment than be someone else's ho. But as long as I can be my own pimp as well as a ho, then I'm pretty damned happy.
My experience is, contractors tend to be motivated by one thing - money. Early on I got a nice contracting job doing electonic design. The same week I came on board they fired 40% of their workforce, some who had been there 15 years. ;-))
They offered me a full time position later
Subsequently the only company I would have considered a full time position at was IBM. The rest usually had some kind of wart that made me wary,,, so it isn't Always money.
Just another perl hacker in Bangkok
This brings up an interesting question: how is code handled inside Microsoft?
:)
Altho this isn't really on-topic I'll relate this little story because you brought this up.
When I was in university and taking a program design class, I had a TA who had previously worked for both NASA and Microsoft (not at the same time).
The TA session was on specifications, and he trotted out some of the specs for the space shuttle software. It included huge amounts of detail, as you might expect for something like the shuttle.
After the class, a few of us accosted him about specs. I asked him what kind of specs they used at Microsoft. He said that he was worked on a word processor (presumably Word), and he said that the design/coding went like this:
[0] Microsoft "designer" draws a picture of what the gui should look like.
[1] "designer" goes to coders office and hands him/her the drawing.
[2] "designer" says to coder, "make it look like this"
[3] "designer" leaves office.
Assuming this is true, it might explain a few things
I have been a contractor for the majority of my 8 year IT career. I have been a "perm" contractor and a freelance contractor. I have seen some horrible contractors in my day. Total BS artist that would say anything to get a contract. I have seen employees do the same. I focus on Network infrastructure and security. In the valley the need for this is great but most companies can not afford a full time security/router guy. Most don't see the need. About a year and a half ago I went perm for a company. I built up the entire infrastructure from stratch, automated almost everything, then sat there and watched it run. I then proceeded to go insane. The most excitement was a user forgetting his/her password.
Well enough ranting. If I where building a company I would try to hire perm staff ASAP. This is realy hard in the valley. If you can't get full time staff and must go with contractors make sure your contract is well written, wuth clear project goals and make sure documentation is a requirement.
bpennington@lucidnetworks.com
I've experienced employees that were exceptional,
I have also seen a large majority feel secure and
just punch the clock.
I've seen contractors that were outstanding, and
others that had resume's that read like a bad sci-
fi novel, once their true level of experience has
been revealed.
It's really a game of hit or miss, I feel that
contractors worth their weight in reputation are
outstanding, and may even want to roll over.
Employees freshly hired, are fresh for about 4
months, then settle into security. I personally
lean towards contractors, but hell let's be honest
it's all a crap shoot anymore:)
Awesome!
I have never been an employee. Been a contractor from day 1. So how have I done? Sometimes I was a hero and other times an asshole! That is the reality.
When you have a company, it does not matter if you use contractors or employees. The company has to be properly managed. That is what makes the difference. Contractors or employees will not save the day.
Microsoft likes to pride itself on the quality people. So why the problematic software? Simple answer, and this was from one of those high quality people. Management does not want to see it. We need to ship product. For those products that are well done, management cared about the product.
However, attracting people can be difficult. Employees may stay longer and contractors and become employees. What you need to do is find the right people from either pool and then attract them using the color of money and work environment. Remember one thing. Often I will take a rate cut so that I can work on the REALLY COOL stuff. I look at it as an investment for the future.
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
Background: I have worked as a maintainer and developer for more than fifteen years. We work with projects, i.e. we work for customers with products that should be finished in from three to twelve months, with from two-three to many more developers.
It could well be that contractors are among the "best" people, and we do occasionaly hire some when we're short of people. The big problem with contractors is that they always come in on projects unprepared, because they haven't been there that long.. which means that the project is hit hard with Brook's law: Adding people to a project that is late makes the project even later. It doesn't matter how good they are. We can hire super-contractors but they're not much more useful than fresh students, because they don't know the background for the project (they are often expansions or new features in old projects), they don't know the customers and their site and other projects etc. We can make them useful if we have a long-term project
with good experienced employees leading the project where it makes sense to hire the contractors, and only if they can join from the very beginning. But we definitely prefer to populate the project with the old hardliners (our own employees). Conclusion: Contractors can be useful for completely self-contained, rather simple and short projects and jobs.
TA
The contract/permanent debate is very similar over this side of the pond, but the government, in their own sweet way, are about to dive in.
They are planning a change in the law to say that if someone turns up for regular hours, does a specific job, answering to a specific person then that person should be employed not contracted. What criteria they plan to us is unclear, but the bottom line is that they're a bit miffed at the various tax loopholes that contractors exploit (most noticeably the practice of operating a single-person company and being paid via dividends, not directly). They are having to be careful because, when they initially drew up the guidelines a fair number of other professions were included, barristers and members of parliament being the most noticeable. They tinkered with some of the rules, but nobody mention the fact that most MPs came in via the law because that's irrelevant, OK? :)
In the main, while contractors are probably the best means of getting something specialised done quickly, there are an awful lot of bad contractors out there who are only there because of the ridiculous rates that you can get.
--
"I do not speak for my employers, though they are controlled from my Teddy's huge pulsating brain."
I have only been in the computer industry three years, and never as a manager, so take this advice with whatever salt you wish. However, I've worked at several jobs with both contractors and regular employees, and I've taken the opportunity to mesh their opinions with my own.
If you feel that your company can manage technical employees well, hold on to them, and "grow" them, then go with employees. If your company can't hold on to both a good technical manager and good technical employees for any period of time, hire contractors.
Of course, if your company specializes in serving up bleeding-edge, silver bullet of the month solutions, you may HAVE to choose contractors.
----
-- you're never dead until you run out of quarters
Well, I must say that I understand the president of you're firm very well. May experience is that contractors can be very good for smaller development tasks, with clear objectives, and clearly defined system requirements. However I guess that you're boss might in the end want to develop a software company, and not only continue to run a consultancy, we all know were the real money is..Bottom line: You can't build a successfull software company if you outsource you're core competence...
In practice, Contractor Number 3 doesn't give a [beep]ing [beep] about what will happen after he has left. He won't be around when his poor successor trips into the piles of [beep] that the contractor has left.
I am working in a software company, and that's my experience with contractors. They may have good skills in, say, programming or administration, but each and any of the ones we have here are socially disabled people who no-one wants to have around for more than 3 months. The kind of short-term work a contractor typically does in my company is ok only for the kind of short-term mind the typical contractor is (solely speaking of the company I work for).
If anyone should ever have me maintain contractor code again, I will refuse to do that as long as I can. I'm doing it now, and its just plain sick.
Yes, you are right there. -- Another glass of champagne?
go work in marketing you lazy slob.
...We're here to stay. I work as a contracting Systems Engineer. I worked full-time permanent positions for 5 years, then decided to take the plunge as a contractor. And yes, it was primarily a financial motivation. I would like to be able to buy a house in the next two years. The basic fact is that as a permanent employee I would not be able to do so for the next five.
I'm proud of my work and I think I give 110% to a contract. Some other posts have complained that 80% of contractors are a waste of space. In my experience, 80% of all employees (contract or permanent) are a waste of time. Permanents just tend to get carried more. Bad contractors normally get weeded out pretty quickly. Most of the contracting agencies I have dealt with are quick to blacklist any contractors with bad reps.
Sure you don't get the "benefits" of permanent employees, but I love contracting and I wish I had started it earlier.
The one major thing I have found with contracting has been the experience of working for companies that I would not have liked to have been a permanent employee of. Contracting gives you an inside view of some companies and how badly they are treating their permanent staffers. When you take a permanent position you are making a blind leap of faith regarding the company. As a contractor, you know that you are there for a finite period, and if the company is a good one, there is always the option of taking permanency. You can usually negotiate a permanent slot with a good company if you have been doing good work for them.
Besides in the IT industry "permanency" is an illusion. How many permanent employees stay at the one place for more than 2 years? Not many! As one employment agency stated in a recent interview "If I read a CV where an IT person has been in the same position for 3 or more years, I ask myself - WHY?".
"I can only help one person per day. Today is not your day. Tomorrow is not looking good either."
This whole discussion is rather silly. If you tell them where to be on a daily basis (like be at your desk from 9 to 5), then they can't be a contractor. If not, then you have a simple choice. Let them choose. What's the cost difference to you? Nothing, especially since you're probably not going to offer them health insurance (like all fast growing companies I've been associated with, bastards) and 401K's are typically for people who stay at a job a while. There, problem solved.
If you provide the right pay, an interesting project and a good working environment you should be able to recruit good staff. Don't worry about whether they're permanent or contract, concentrate on what they bring to the party.
The main advantage of employees: they will still be there after the project went into productive status. And that's when the first serious problems pop up - usually after a few weeks.
We quite often had problems with projects by temporary contractors: the project finnished right on (or slightly over) time - somehow. Then the contractors went away - and administration had to cope with the problems.
So an employee approach adds security and reliability - for the employed (safe job) as for the employer (safe resources).
May I ask if you, sir, is a contractor or is this proof that management have low skill levels and doesn't know their worth?
Tell your friends about xenu.net
You've just described the 80-20 rule. I've seen just as much crap delivered by W-2 wage slaves, as I've seen delivered by worthless body-shoppers like Arthur Anderson.
I've run into very few top-flight coders on *any* gig, and when I do find a talented engineer working on a W-2, it's usually because they're fresh out of school, and have no idea what they could be worth.
For one example, I have a friend who was working at Oracle as one of their SE's, who was regularly saving multi-million dollar engagements for Oracle, who was being paid *just* over $100K/yr. He's gone out on his own, and now he bills out at $250/hr, after several iterations of raising his rates to cut back on the amount of work people want to throw his way.
The best developers are worth upwards of $150/hr, and if you want to keep them on your staff, PAY THE MONEY. Make it worth more to them to stay than to go.
I've been at quite a few companies of all sizes, from AT&T to 3-man startups, and I can tell you horror stories of employees who have 12 years' experience on their resumes, but who really have one year of experience but they've done it 12 times.
Staying in one company for too long causes mental atrophy.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
In case you are curious, I do contract work for the U.S. government. We work side by side with the government employees. I have been at the site for 1 1/2 years, and there are others at the site who have been there much longer.
The workgroup I manage is a mixture of contractors and sub-contractors. We usually bring the sub-contractors in with 6 months right-to-hire. This arrangement has worked out well for ramping up quickly. (Even so, it is hard to find good web programmers these days!)
I have worked both as an employee and a contractor in the IS field for the last 10 years. I managed all development and support operations for a software development company for 7 years and now run my own contracting company as well as working full time on a data warehousing team. It is my experience that, if your goals and the application design documentation are clear and complete and if the contractors are competent, there is no problem at all relying exclusively on contractors for limited development operations. Just be sure that you have permanent staff who are qualified and capable of providing the necessary support and modifications after the product goes to market and the contractors have moved on to other projects. On the other hand, if your company uses the "close enough for rock & roll" approach to design documentation and customer requirements, you will need a full time staff of employees who have bought into the project from the start and can rely on their memories and or post-it notes to keep the project on track. It all boils down to "do you want to do the hard work up front (document the requirements), or would you prefer to build a core team that you can rely on?" Both approaches require tons of work on the part of management, but both can be equally successful. Your choice.
You can find either. The decision of what to go for depends on what your plans for the future are. It may be that you want have a lot of developers for one project. You hire staff, then they will complete the project, and you now have a lot of unused developers. Now you either have to find another project for them, or fire them. Firing them is bad karma, if they are permanent. If they are contract, then the contract ends and they walk away. Everyone knew that was the deal at the start and they are happy.
Moving staff to another project is harder, especially if you are a small firm. Big firms (IBM, AA etc ) can always find somewhere else. The smaller firms may have a problem.
Work out which is right for you.
Remember that contractors are human too. If you treat them like peons, then they will act like that, and you won't get the best out of them. Its very common to have contractors who turn up on their first day, to be given the old 386, the dodgy 14 inch screen, and the keyboard missing the space bar. The permanent staff have PIIIs, 21 inchs screens, and get to go to the project meetings.
Once there, they wonder why the contractor that they treat like a second class citizen doesn't give a shit.
Treat them right, and they will work as well as permanent staff for you. And be loyal.
- Contractor farms. Usually H1Bs, but they ask very little money, do what they're told, and do it pretty well thus far.
- Greedy college kids. "I have no experience, but all my friends tell me that I can make a fortune in this biz, so I threw out my degree in English and declared myself a web expert. Please pay me $90/hr even though I don't know what you mean when you ask me how to pass a parameter." Way too many of these (which is what caused us to go to the farms).
- Contractor. "I recognize that I can get better compensated for my skills and experience by being a contractor." Perhaps the best sort to get, because they usually behave like fulltimers, and you can keep them for a long time. They do what is needed of them, without arguing, and they're not too greedy, they usually have the experience to backup their rate. The only problem is that the more stuff you let them do, the higher the odds that, when they say "I'm bored" in a year, all that knowledge goes out the door with them.
- Senior consultants. "I'm very experienced and very good at what I do. I will only stay with you 3 months, please pay me $150/hr." Sometimes these people are great, but the problem I saw is that they don't often want to do what they're told. These are the guys that want to come in at the ground floor and use their expertise to help design your system. What if it's already designed? They're not often good at enhancing or maintaining somebody else's work.
- Ex-consultants. "Did the consulting thing. Now I'd like to stop travelling, settle down, start building up some benefits that I can count on for my family." Believe it or not, it still happens. There are people out there interested in a career. We've got a few of them.
I'll mention, too, that not all your best people are contractors, and I can prove it. What about startups/IPOs? Your average person, regardless of his skillset, wants to maximize his money. Look at how many seemingly intelligent developers out there won't work for the big companies at a fulltime salary, but WILL take a pay cut, and work 3x as many hours, on the chance that it'll pay off with an IPO.I'd bet dollars to doughnuts that most consultant-heavy IT shops are spending twice the money to get half the work done because they're staffing up with what are essentially migrant workers.
FTEs are a valuable asset because after they're done with one project, they take the understanding of your business gained there to the next one. Unless you've got a contractor or consultant for the long haul, you're not going to get this and will end up spending a few thousand dollars each time to get a new person up to speed. Business doesn't think ahead anymore.
I'm a FTE and intend to remain that way for a bunch of reasons:
I rather like the idea of having a long-term relationship with the business that hired me.
I like knowing how long my commute will be six months from now.
I like not having to be stuffed into the worst space the company has to offer.
And last, but most important:
I like to be around to see whether or not I did a good job and provided what the company needed. I've dealt with lots of consultants, and to date only one ever called back to see how his work stood up. (And he wasn't looking for more work, either!)
I may not be pulling down the $100+ an hour I could doing C&C work, but that last item is worth a lot to me as a professional.
I'm also on the "have a core of employees for core product" side, for reasons that people have elucidated. While I agree that even employees should not assume absolute job security, I don't believe that most companies are going to take that short term of a horizon toward their employees. And in some ways, if things turn bad an employee is in a better position to up and leave than a contractor. Leaving in the middle of a contract doesn't strike me as a terribly wonderful thing to do, whereas employees are always free to leave whenever they please.
Furthermore, this attitude "everyone's short term anyway, so I might as well be a contractor, rake in the $$$, and keep jumping aroune" is exactly wrong for a company trying to build up a long term base of experience (which should be any company trying to build a product, as opposed to a company that's merely a body shop). At my previous company, we scrutinized very carefully anybody who seemed to jump around a lot. Our CEO firmly believed in employees rather than contractors for all but very clearly defined, very specific projects, and we all agreed with him on that issue.
I can think of one particular exception at an earlier job, though. This was an individual who wanted a contract specifically for benefits reasons -- he had some medical condition that was well covered by his insurance, and he didn't want to risk having any coverage problems being on employee health benefits and preferred the extra cash to useless health insurance. However, it was understood that he was in all other respects an employee. That worked out, but the important thing is that he had an employee attitude, and wished to contract for unique reasons related to benefits.
Under no circumstances would I hire a contractor as a lead system administrator. I'm certain that there are plenty of them who do conscientious work, and I'm well aware that there are disgruntled employees, I would much prefer to have a system administrator whose incentives and mindset are structured toward a long-term relationship with the company. Certainly I would permit hiring a contractor for specific tasks, such as assisting in a major network expansion or reconfiguration, but the person who's in charge of systems and security is even more important to keep around and suitably gruntled than, say, a VP of engineering.
There are good sides to both, and bad. From what I've seen, contractors are usually hired for short-term work, and they don't plan on sticking around, either. Contract work is usually in-between jobs or a second, usually part-time, job. They know their stuff, do it (and usually do it well), and move on.
Employees, on the other hand, tend to stick around longer. Here the possibility of getting a leech exists; but, there's also a good chance of finding someone who works, gets trained, works a few more years, and moves on. You may get some that get trained and leave after getting trained, but if you pay them a reasonable salary or hourly wage, it won't likely happen.
If it's work that will be needed for a long time to come, get an employee who wants to be trained and pay him reasonably well.
A few pointers? Careful mixing contractors and employees. Some contractors get jealous or huffy and leave, and some employees get pig-headed and try to be the boss.
Don't advertise contract to permanent. It shows you aren't sure if you want/need an employee or a contractor. Likewise don't offer a new position, then turn around and let the employee go after a few months. Not only are you both disappointed, the ex-employee will go around bad-mouthing you (intentionally or unintentionally, he will). If you really want to contract to perm, advertise contract, and tell them contract to possible perm in an interview or once they start.
Keep in mind that some of the people who know their worth and have high skill levels also have families and a mortgage, and don't like the idea of contract work (or temp work). You also get peons from temp agencies who have inflated egos and inflated qualifications.
My personal preference? I dislike contract work and despise contract to perm. If a company can't make a commitment because they don't know how long the work will be around, I can accept that. If a company isn't sure of my skill-set or work ethic, they probably have a bad recruitment process, and do I want to work for them? If the work is going to be there, make a commitment.
Winners tell stories while losers yell deal.
So whenever you've taken over a project from a permie you've always had perfect documentation as well as code that's so polished it shines. Lucky you. What follows are my own opinions and personal experiences as both permie AND contractor. I'm not making sweeping generalisations, because as we all know there are good and bad in any walk of life... A noticable difference between permies/contractors that I've experienced is the degree of professionalism shown by either type: contractors behave more professionally on the whole - have better timekeeping and do a better job, more efficiently, because at the end of the day they have to be professional to get that renewal and a higher rate, not to mention the reference when they do leave. They need to do the job better than their permie counterparts to make their manager feel he's getting his money's worth. Remember that permies are a lot harder to get rid of so it's easier for them to get away with slacking off and doing a shit job - 'oh, send me for some training and I'll do it better (and slower) next time', whereas a contractor doing the same will find himself out of a job pretty sharpish, or without being offered a renewal when expected. When it comes down to it the only REAL difference between contractors and regular employees is that successful contractors are confident enough in their abilities to feel comfortable taking the 'risk' of giving up their nice 'secure' (ahem!) permie job and go along the contract route for greater financial gain. And I must point out - the key word here is SUCCESSFUL - sure, anyone can blag their way into a contract or two, but it's only the ones who can prove themselves repeatedly that can make a susccessful and very lucrative living out of it. In my (most humble) opinion, in this day and age the only reason for staying a permie in a technical job is that you either don't yet have enough experience, you genuinely don't want to take the risk (and what's the risk anyway? You can always go get another a permanent position if the contract market dries up) or simply not good enough in your field to be able to make a success of being a contractor.
I've been a contractor for about 9 years now, and I'd pretty much agree with the views that have been forwarded saying it's a myth that when you hire a contractor, you hire the best.
There are certain considerations to take into account:
1) Almost anyone can be a contractor. Having the status of contractor does not necessarily indicate any level of expertise in a field at all.
I've known many contractors state experience in a field when they have little real experience/aptitude at all.. They find their feet on the job, and pick up a very expensive skillset, which they can take elsewhere. Be very certain that anyone you hire knows the ropes, or you could end up paying for the 'training' without reaping the benefits.
2) Contractors are best used in tactical deployment, rather than strategic. In other words, there are times that something needs to be done NOW, you you have neither the skills or the manpower to achieve it. You hire a contractor or so to raise your productivity to the level required. Very useful for a little used skills that are only required now and then.
For long term, employees are always superior. They come to know the internal workings of a company as well as their own job.
A lot of contractor time is often taken up with learning the new communications structure in a company. This can offset the savings made by superior skills.
3) Skills transfer is often one of the jobs that contractors are hired for. When you acquire a contractor, put them in a team with two or three permanent employees, with the brief to aid these people and support them. Your permanent people will pick up part of that skillset (the necessary part) rather quickly.
A good contractor will always try and work themselves out of a job (it gives a good reputation to leave a string of very satisfied customers, who know how to support the work done).
4) Reliability. Remember that the contracting world is very mercenary. These contractors you hire can quite easily be hired into another job for better pay, at very little notice. They are far more fluid, and have less loyalty than a permanent member of staff.
With the average throughput of contractors, you will be likely to lose some, and then replace them, with someone who again has to learn the company. This will bring in an equilibrium of skills where the ambient skill level reaches a maximum, due largely to the fact that you will likely lose some of those experienced with the system you have, and then lose time due to training new contractors.
To advance a company on solid foundations, the bet bet is to give good pay and conditions to permanent staff, and hire in contractors to transfer skills that are, or will be needed as required. Make sure these skills are transferred to your permanent staff, and over time, you will have a team far more competent for the tasks in hand than a group of hired contractors.
That is pretty much the long term aim. In the short term, for aggressive action and rapid aquisition of skills, contractors work well.. But, always make sure that the core of your company is held by permanent employees, otherwise, you could easily lose your most valued skillsets almost overnight.
Just my tuppence worth,
Malk
Contractors aren't going to care about your project the way you do. I work for a big company and I've seen us hire contractors to come in and do work, and the code that gets written (although occasionally okay) is often terrible.
:)
A contractor might be tempted to think that if they don't do this exactly the right way (in a way that won't scale well, perhaps) then it won't be them that will have to fix it. Or if it is them that has to fix it, they'll get more $$ for doing so.
OTOH there are a few truly gifted programmers doing freelance contract work. Find one, someone you can trust, who does good work, and hire them
- SteveX
(And then there's the "I've taken a six week course in Visual Basic and now I'm a big money contractor" sort)
Having worked in several full time and consulting positions, my current experience is that consultants or contractors are perfect for projects that require a skillset that the company is not willing to pay for full time. We build out e-commerce networks regularly, and are used to size the network (something akin to voodoo magic if you want to do it right), design architecture, lay the infrastructure, size the servers, build, harden, and configure the servers, design network monitoring, design security, etc. etc. etc.
To do that, the company would have to hire, full time, 1-2 network geeks with experience in high-speed co-location networks and redundancy, 1-2 security geeks capable of dealing with high-traffic exposed websites and various network hardware and OSs, 1-2 snmp/netmon geeks for HP Openview or whatnot, and at least 2 crak Unix admins.
If the company picks up consultants instead, the buildout may cost them 200k, but it is much cheaper than salary for all those people. Also, what do you do with all of those people after the project is finished? As full-timers, they will get bored and leave. As consultants, they don't have the chance.
good. fast. cheap. (pick any two, you can't have all three)
As a contractor, I'd have to agree that your description fits several of the contractors I've worked with over the years. The sad truth is, there are people out there who are contractors because they need to change jobs every few months, before their incompetence becomes too apparent to the boss. I don't believe the above describes 80% of contractors, maybe 10% Mind you, I've also encountered a few permanent employees whos IQs closely approximate their shoe-sizes. Fortunately, these tend to gravitate fairly quickly to management, where their stupidity can do less harm. I've also worked with some excellent contractors, people with a wealth of experience, who have gone contracting either for the money, or because they just enjoy the variety. After all, not everyone wants to spend a couple of years developing a system, and the next 10 maintaining it. And there are, of course, a great many highly skilled permies out there. The gypsie life doesn't suit everyone. Overall, I'd have to say that the contractors I've worked with probably are slightly better than the average permanent, but probably only because they tend to have had a few more years experience. Certainly it would be a mistake to staff a project entirely with contractors purely on the assumption that they'll be "better" than a room full of permanents.
Quidquid Latine dictum sit, altum videtur (anything said in Latin sounds important)
In my experience, contract workers are not a better choice than full time employees. Contractors are usually short term and therefore don't really care about the long term. They're going to be working on a new project a year from now while the full time employees clean up the mess.
If I sound a little bitter it's because I've had to clean up after one to many consultants. I've finally talked senior management into hiring fulltime employees instead using contract employees or a consulting company.
I'm hiring motivated employees that I can mold and train. Experience is nice, but being about to "create" the employees you need is even better. It takes more time, but the outcome is worth it.
The only problem is keeping those employees...
I recently took a part time "position" to make some extra money on the side, helping a startup company with some badly needed design work. It's just nights and weekends, but it's flexible, I work when I want, and mostly can work from home. This is great because I also have a full time job during the day where I am a real employee, so it does not interfere. When setting up this extra opportunity, my choices were to be a contract worker or an employee of the company. This being my first time with this sort of thing, I asked, "What's the difference"? Basically the only difference is that I'd have the taxes taken out of my checks, so that I wouldn't have to worry about the IRS and a tax nightmare later. Pay was the same either way, there are no benefits (it's part-time) and while I am considered an "employee" of the company, the job is really no different than being a contractor with taxes taken out of your check. So which one am I? Is this a grey area?
this may sound a bit strange but you need a dedicated and talented bunch of employees for the core group of a major project. As a VP of Software Development I found it frustrating to find good quality talent in the permanent market so we fell back on contractors. The other people felt that this was a test drive and that we should offer perm positions to the talented ones. To be honest, the people that tended to leave contracting and take a perm position tended to have lost the edge and want something "safe" or to coast. I found (and find personally) that the good people that are comfortable with contracting tend not to make good employees. I found that in myself as well and I'm back out there contracting and writing code again. I think that if you're going to get good permanent employees, you have to catch them before they find that contracting is so rewarding.
The other side of that coin is the fact that there's very little difference between a contract person and a perm person in terms of their leaving. The perm person might be a bit meeker since they haven't changed positions regularly. The same is true for the employee/contractor. If push comes to shove, you're probably on the street just as quickly when the money dries out.
Funny that last night on the Network TV news I saw that a former Microsoft contractor filed a class action lawsuit. I know it is just a money grab on the part of him and his attorney but I thought the timing of this post was odd. Pretty dumb to work a job for a while then sue about the status you were hired as.
--- Join my team at www.dcypher.net $10,000 to the winning computer #147 "Homebuilt Computer Users"
Contract to perm. I see this alot in the industry. I see it as a way to weed out the less skilled IT employees. Most of the time when you hire someone on directly you take a gamble on if he\she will perform.
Well all I can say is that you have not worked with me. Maybe you should sometime, I could perhaps show you what a proper, professional, independent freelance contractor can do. have a fun day !
When choosing between contracting or hiring the biggest issue is the lifetime of the product. Its not code quality - hired staff can produce bad code just as effectively as contractors. Its not loyalty - in today's economy there is no such thing, not even for hired staff. And its not cost - the project will probably cost you the same whether you go with staff or contractors.
The fact of the matter is contractors take all of their knowledge with them when they leave. If your product's lifetime is limited to a single version, never to be enhanced or modified in the future, it makes sense to go with contractors (why staff a huge development team only to fire them all at the end of the project). But if you intend to enhance and/or maintain the product, you would probably be better off keeping some brains around that understand it. That usually means having full time staff.
In any event I would be leery of going with an all-or-nothing strategy. Going only with hired staff will lead to layoffs at the end of the project. Going only with contractors might will lead to organizational ignorance. Finding the balance is the key.
Often the healthiest approach is to build a core team of engineers (as stated by a number of posters already, this is a challenge in and of itself) and hire contractors to work with full-timers as projects necessitate.
However, the basic issue is the "rent vs. buy" issue: do you rent a skill (contractor) or buy it (employee). You use the same metric for this as you do for capital equipment:
If the need is short term or the cost is high, you rent.
If the need is long term or the cost is low, you buy.
For example, you buy a car in your home town, since you are going to need it for a long time. However, you rent a car if you are on a business trip, since you need it only for a few days.
With skills, you ask yourself "Am I going to need this skill in a year?" If the answer is yes, you hire an employee. If you can honestly say "No", then contracting makes sense. Where I work, I am pushing the boss to hire an X Windows programmer, because we are using that in a new project that is going to be around for a while. We could solve our immediate need by getting a contractor, but then we would not have the person around in a year when I need some more work done. The only way a contractor would make sense in this context would be if I teamed him up with one of my people to help my guy learn X.
The biggest single reason most shops contract rather than hire is that the contractor doesn't count against the department's headcount, even though he costs the department twice what a regular employee costs (can you say beancounter? I knew you could).
It sounds to me like your boss has fallen into the Dilbert trap: "Anybody who works here is a moron, anybody who comes from outside must be a genius".
Hire the skills you will need long-term. Pay them what they are worth, let them develop their skills, and above all else listen to what they tell you! After all, if you cannot trust their opinions, why are you paying their salary?
#include "std_disclaimer.h"
The views expressed in this post are mine, not my employers.
www.eFax.com are spammers
Ability has little do do with a person's status as employee or contractor; you get good and bad of both (each person chooses what is good for them). As to which is hired it is up to management to decide. Pro's of employees are knowledge retention over time, (sometime's) increased sense of responsibility and/or trust. For contractors, well simply put, they should be used for specialist pieces of work for skills the full timers do not have, to get over work-load 'humps' and to supplement the work pool while hiring the full timers. Me, I'm a contractor, simply for the immediate cash flow each month. Full timers can easily blow away contractor money by lucking out on a start-up company that (sometime in the future) gets bought out.
In today's job market, it is hard to find employees. If you hold out for that perfect employee you will never hire anyone unless you start sniping them from other companies.
Because of this a lot of companies are now using contractors to beef up their development/admin staff. To management, contractors are nice because you don't have to set them up with benefits and you don't have to manage them. If they are late everyday, call the contracting firm and they yell at him/her.
A drawback is project management. You hire a contractor to write code for a 3-month project. 2 months into the project, the project may get expanded to 4 months (usually due to new customer requirements). The contractor is only bound for 3 months, so you have to:
1. Hope he/she hasn't signed another contract to pick up where this one leaves off.
2. Hope that he/she likes the environment and money well enough to continue working for you.
You can run into a real nightmare here. Contractors cost a lot to begin with and now they can "hold you hostage" for more cash.
In conclusion, permanent employees are the best to have. It may take longer to get started, but in the long run, if you keep them happy you'll never have better employees!
Hello everyone. My name is engel, and I am a contractor.
My experience with contracting is this: The shop I work at has 'permanent contractors': contractors that are there for the long term, not just a few months. We don't have the problems that most other contractors have, that is sloppy 'good enough' systems, but we STILL have major problems.
Most of my fellow contractors are a lot better than the 'regulars'. They are smarter, faster, and have more skills.
Therefore, the regulars hate them.
I mean, WITH A PASSION. Every day I get some comment about how I am worthless, and I constantly get harassed because I am a contractor. There are times when I have seriously considered seeking legal counsel, and I've only been here 7 months. Why should the regulars like the contractors? We aren't responsible for anything (meaning we get more done because we aren't in constant meetings or having to brown-nose) and we get paid more.
So what would I suggest? I would suggest not having contractors at all. I would rather BE a contractor (more pay, and insurance isn't that high for me), but I don't see my role as being especially well suited to a corporate environ. The suits just don't get it that there is more to a decision than a paycheck. The point is to make a good working environment, which contractors do not create.
So for a VERY short term job that does not leave legacy code, I would say 'maybe' to a contractor. Else, don't ruin your company that way.
Oh, and I agree with the statement above that contractors IN GENERAL aren't better skilled, they just want more money...
Here's are some of the differences between a contractor and an employee. I know because I've done both.
1. Contractors don't expect you to give any committment whatsoever to them. And you shouldn't expect a committment past the term of their contract from them either. When I was a contractor, I never counted on anyone giving me an extension. When it was offered I often had to turn it down because I had already found other work.
2. Contractors are good for work that does not relate specifically to customer or internal requirements. If you're building a project from scratch, they're worthless. They won't help with requirements and development building (even though they/you might try), because they don't and won't try to understand your company or your customers. They are in general, however very good at implementing things that just need to be done (and quickly) and don't require an understanding of your company or customers.
3. Contractors don't have any stake in your company. Employees do. They have their livelihoods at stake. And, often they have stock options at stake. So they will actually care about your company. Contractors usually couldn't care less.
4. In team environments, employees usually work best. I've been at companies where nobody worked well in teams, but usually if they do, if there's a sense of belonging and family, they're employees.
In short, don't expect anything from contractors other than quick work when you need it. Employees are best when it comes to the long-term.
Here's an example:
Your company, a large telecommunications company that starts with the letters "Luc" and ends with the letters "nt", needs to develop a new switching system from scratch, including hardware, firmware, and software.
Employees would be best in general. Perhaps you want to use contractors to do specific tasks like create the Visual C++ based monitoring and administration GUI, write specific modules, etc.
It's essential that you don't use contractors for key positions like project and product management, programming the firmware, hardware work, or writing critical backend modules.
That's my 2cents.
Where I work, we've been burned in the (recent) past by contractors. The attitude I see from nearly every contractor I've worked with has been one of not caring for the long term progress of the task or project. And it can be worse...
;)
We had asked our contractors to help us build test automation. They did. We made the mistake of not reviewing their work often enough or thoroughly enough. After churning out a small mountain of scripts, we found:
A. Not a comment in sight
B. They didn't work, nor could they ever have worked.
I'd like to think that this was an unfortunate situation that happens rather rarely, but I admit that I'll think twice about hiring contractors again. The time and money wasted on this was very frustrating to deal with.
Incidentally, contractors in my company tend to have an indefinite contract period, which pretty much makes them higher-priced full time employees who often produce low-quality work. (Again, this is my experience.)
If you go with contractors, I'd recommend:
A. Do NOT assume they are somehow more expert or more senior. It most likely is the opposite.
B. Make sure the contract period is defined and finite. You can always bring them on with a new contract if things work well (of course you can also "fire" them with an indefinite one if things go badly
C. Interview very carefully and thoroughly. Contractors switch jobs much more often and interview much more often. They know what you want to hear, so they say it. It doesn't necessarily mean they understand the technology or are proficient at the work they advertise.
I'm probably a bit paranoid, but it happened to us, and I can easily envision it happening elsewhere. My general rule of thumb (now) is that all employees get interviewed very thoroughly and all work gets reviewed on a regular basis.
In your question you say that in your experience that all the highly skilled people are contractors. At least in my area of the country (Maryland/DC/VA) it seems to tip the other way.
... going through the interviews, having yourself scrutinized over, etc. Only the 'best' get chosen.
... only having to work 40 hours a week, getting 5 weeks of vacation, having 10% of salary added to a 401k for you, good medical coverage ... These kinds of things can only be had with a full-time position.
... and we would look at contractors as well as hiring people ...
...
... we would get tons of resumes of people who 'had made a web page once in college'. We would never end up finding a perfect match, and even when we thought that we had, they weren't, because they had 'bumped up' their resume with the contracting firm so that they would get more assignments ... so they fact they claimed they could do Java simply meant that they had read the nutshell book once and did a sample program.
... Unless you have a large batch of grunt work, that is clear and dry, spelled out perfectly, and couldn't get done 'wrong' because it is spelled out so well ... In that case, sure, you can let a contractor come in, and finish it ...
Anyone can get a job as a contractor. When placing my resume around I have gotten carte blanc offers by the mail. A packet mailed to me saying: 'Fill out this skills survey sheet so that we know what types of contracts you will be best on and you will instantly be an employee of ours and we will call you with your first assignment within a week. Your pay rate will be $xxx an hour.'
Whereas getting a job through a company as an employee is a detailed process
Plus, alot of people (myself included), simply like the stability of a regular job
Sure I could make more money by going the contractor route, but money isn't everything, happiness is.
On the other side of the issue . . . every time in my current job as well as others I have held that we have needed a new employee
Well
Typically what would happen is if we brought in people for interviewing as an employee - 90% wouldn't be what we were looking for, but we were able to weed them out and find that 10% to choose from that were exactly what we needed.
When we got resumes from contracting firms of employees that they felt fit our needs, it wasn't even close. If we needed a 'web programmer' (HTML, Javascript, Shockwave, Flash, CGI, Perl, etc)
*sigh*
So personally, I reccomend employees over contractors
I think that you get individuals who are seeking a lot of money...but they are also giving up security, important benefits and entangling themselves in a potential tax nightmare. i am a contractor and i dont have any of these problems. i get paid a salary, but i also get overtime if i have to work it, and i dont like working it. and i get stock options in my company so i have a stake in how well it does, so i do a good job on projects to get repeat business. And in contracting 90% of work is repeat business, so if you go a shitty job then you dont get repeat business
I am a contractor. I have known/worked with contractors who had to be contractors because they could not do work and could not hold a job.
Other people with similar skills have full-time jobs because their bosses like them.
OTOH, I have known immensely talented people who have been both contractor and employee, and moved in both directions.
Bottom line: you have to pay good people, either cash or stock/dreams/perqs/social rewards.
"The Constitution, the WHOLE Constitution, and nothing but the CONSTITUTION."
I do staffing/recruiting/delivery for a packages group of a pretty large IT services company. We will not utilize contractors for any engagements we have for a couple of reasons: * No ownership to the client or team. * Usually no motivation for late hours. * Never will go above and beyond the call of duty. * Always asking "What do I have to do?" instead of working with others and just picking up pieces of work. * NEVER a cultural fit to the group. Even hiring a consultant for full time positions who were once working independant is a red flag. For the same reasons above, they usually never last with the company for more than 3 months. This isn't the case for everyone, but in the last 5 years, it's been the rule not the exception. This was also the case at my last 2 companies. Just my experience...
1) As an employee I have some reasonable guarantee of stability. I can plan to be someplace for at least a few years and be confident that I can remain there. And if I'm not happy there, I can leave just as easily whether I'm a contractor or not.
2) My skills become a valuable long term investment to the company. If I'm a contractor, I'm pretty much considered a disposable resource to be used up and thrown away. If I'm an employee I can reasonably expect that my employer will pay for training, etc.
3) It sucks to pay taxes on contact work.
4) If I'm an employee I get to express my creativity a lot more. I can start projects from the beginning and put some personal investment in them. If I'm a contractor, I'm picked up to perform a specific task and then I'm gone.
etc, etc.
My feeling is this. If you are going to be developing a project over the long term, look to hire employees. Invest something in them and they will pay you back far more than a contractor would. Reserve the contractors for limited tasks where you lack the necessary skill set and the speed of the solution is most important.
---
This sig has been temporarily disconnected or is no longer in service
I dispute the claim that contractors have more experience/knowledge. Most of the consultants that I know are young and relatively inexperienced people who are working as consultants to travel and make some good money for a few years. They are also in it to _get_ experience.
This isn't to say that they are not smart individuals who can and will do the job, but in my experience with the pile of consultants we've had come through here during our most recent (and still going) project a minority of the consultants are acctually more experienced than the employees we have here.
During a project like our's it's hard to not hire contractors to fill in the spots, or do grunt work, but nothing replaces an experienced and long term employee. I certainly don't want to stay here forever, but an employee who will be here for 3 or 4 years, knows the company and how all the systems work together is a much better resource to work on a project, even if he has to learn something new to do it. Sure a consultant may already know the procedure, or product, but he doesn't know your systems and structure and generally isn't interested in learning about them.
In a big project consultants definitely have a place, doing the grunt work and helping the long term employee learn the product so he can do the job right.
There are a lot of good people who work as contractors and there are a lot of good people who work directly for companies. I started off as a contractor but the contracting agency didn't do a good job of keeping me happy when I worked for them, so I signed on to work for the company directly. The agency did go to great lengths to rectify the situation after the fact but I viewed that as 'too little, too late'. The hierarchy that allowed the problems to occur was already firmly in place.
If you want good people and you want to retain them then treat them well. This includes paying them well but more pay and/or a good signing bonus is always available around the corner. Make sure that the goals of the project is something your people can sign on to and believe in. Management's job should be to make it possible for the technical people to work, not to make the technical people work. If extraordinary effort is required in terms of hours worked then management hasn't done a good job of calculating the man-hours required. Either fix this (preferable) or supply people with the tools (ISDN and machines at a minimum) to let them work the extra hours with the smallest possible impact on their lives.
The above matters to me anyway, if I ever start waking up in the morning dreading work I know its time to quit.
BUT, the PM should be aware of the added risks when using contractors. I've seen many projects running into serious problems because of insufficient/bad contractor management. If you think about it the risks involved are most of the time just common sense:
(i) Is he good enough? You normally have quite a good idea of your own employees' experience and strengths. A contractor may have a good reference etc. but some more background research may be needed to establish confidence that he will be up for the job.
(ii) Problem definition and design. Too often a badly defined contract causes a lot of delays downstream when you realise that what is delivered is not really what was requested, causing a lot of time for rework and integration. This is often made worse by a PM not willing to commit to the extra overhead and ensuring there is REGULAR feedback (e.g. staggered design reviews and deliverables) from the contractor and good communication between him and your own people who will be using his module.
I'm sure there are many more issues, but I'll stand with the above two. Do the effort for some background research on the possible contractors, don't take one because he's cheap and available NOW
something wicked this way comes...
When I do a project, I certainly intend to be there for the long haul, and intend to keep my clients as long as I can. It's to my benefit to do so, since my clients will be happier with me, and my name gets spread around as being someone who does good work--meaning I can charge more later when demand picks up, plus I can choose my projects.
I consider myself to be the specialist who does an excellent job and is at the peak of his field, and I am more flexible in my time planning and production than most (if not all) employees. I'm also not afraid to say my opinion of how the job should best be done--no simple "yes, sir" from me, but rather I'll help my client make sure that he/she gets what they need, not just what they want.
Anyone who slags a contractor as being the shlep who skulks in the door only to collect his/her paycheck needs to think harder about. A contractor always knows that he/she can be fired in an instant, with no severance pay or other lasting benefits. The only benefit a contractor gets is to simply do a good job and get paid--because there will always be a day when there is no work to do at all, and no money.
Best regards,
Ethelred
Everyone wants to be Ethelred. Even I want to be Ethelred.
i am a contractor, i work for a company that pays me a salary. I get all benefits, 401k and stock options. I have a stake in my company, so i make sure i write good code, 90% of contract work for our company is repeat business. If we do shitty work we dont get more business. I work with a project team of people from my company, i know almost everyone in my office personally. Most of the people i have seen posting have done bodyshop work(just a warm programming body filling in till they get a replacement, or to do some grunt work) Most bodyshop people are there for the money only. i am there to do my job well and make a good reputation for my company, so that they can pay me good and so that i have job security.
I have been a contractor for 4 years, after about 4 years of working as an employee. The reason I changed to contracting was for the money, but not in the usual way.
All of the projects I have worked on have had the design/development/test schedule cut to meet some deadline. Or, feature-creep has caused the project to bloat, without allowing the schedule to grow. The classic result of this is all of the programmers working 10-12 hour days for months on end. I switched to contacting to get an hour's pay for every hour worked. I would have no problem going full-time with a company, but my time is not free. If I ever contract for a company that does good SW engineering, with realistic schedules that can be met with 45 hour weeks, I'll be the first to sign on. Until then, contracting is the only way I feel that I am fairly paid for my time.
IME there are good employees and bad employees, good contractors and bad contractors. But as I review past experiences, a few trends appear:
- The best experiences with contractors generally happened when there was a clear understanding of who was in charge of the project. (As a side note, the project manager should almost always be an employee.) Conversely, the worst experiences often involve a lack of clear management. One instance comes to mind, that is almost funny in a Dilbert sort of way (although it didn't seem like it at the time): After several months of work on a large project, one of the expensive contractors berated the project manager in a meeting for "acting like he thought he was the project manager or something."
- Putting a contractor in charge of the project sometimes works, but the checkbook and the hiring authority should remain with an employee. I have seen cases where a company has given over those two privileges to a contractor from a large consulting firm, with disastrous results.
- No matter whether you hire or contract, make sure your project schedule is reasonable, and that it includes plenty of time for up-front requirements development and architecture, and time at the end for QA. Perhaps the most certain way to doom a project to catastrophic failure is to promise the board of directors a ridiculous schedule with no analysys and no QA, before hiring any of your developers.
What I would recommend, and what seems to work best in most companies I've seen and/or worked for, is to make your project managers fulltime (preferably pre-existing) employees, and below that use consultants for any position you can't ENSURE you need at the end of the project. (IE JoeSoft administrator you might hire, but the JoeSoft developers you will have no need for - and you can always bring consultants back if it becomes necessary.)
;) ..)
The other thing I have noticed is, just like normal employees, consultants and contractors come in a variety of shapes, sizes and skills. I've seen quite a few (as developers) who couldn't program their way out of a 'while' loop, and others (doing code-monkey work) who were _writing_ languages in their spare time. But the advantage to consultants is you can let them go. Poof. Call the company (or the employee if its an independent) and tell them that the consultant doesn't match for x-and-x reasons, and you are envoking the trial period in the contract. (You -did- ask for a trial period in the contract, right?
Just my 2c.
/*He who controls Purple controls the Universe. *
www.gotontheinter.net
Updated vaguely once a whenever, maybe once a whenever-and-a-half.
Well, anyway, that's my $.02, hope it helps.
The most important comment the original poster made is that he runs the development section of a consulting firm. It didn't sound like they were a "product" company per se. In this sort of environment, depending on the engagement, hiring contractors could be a good idea. That said, hiring a contractor is a lot like going on a blind date. You never really know how they'll turn out. Even though you'll have a resume to look at before you decide, you won't really know how they'll work out until they've actually started doing some development. Independent contractors (as opposed to those placed by recruiting companies) may be a better bet. They may have more of an interest in doing a thorough job if they ever want repeat business. In a "product" company, I would be very leery of having contractors building your core technologies. Outside of the potential intellectual property nightmares, there are quality issues involved.
FuzzyC shaped the ether to write: /. post that), but... isn't there >something more to life than work?
>I know a lot of techies do this (according to the >earlier
>Can't we all get paid lots of money and work >normal 8 hour days and 40 hour weeks? Is that too >much to ask?
No it isn't, but then again it's all a matter of what company you choose to work for, and what your priorities are.
For example,
I will usually pull 12hour and 13 hour days... but if that is the case, then I will demand the I get Friday off or be properly compenated for it. You usually get what you ask for.
Another rule, that works for me is:
Don't work on the weekends, and don't even power-up a computer on the weekends unless it is absolutely needed. End of story.
Life is too short and the weekends are too short.
Smile! Jesus loves perverts too! (ROT-3 Left to e-mail)
...existing corporate policies make it neigh impossible to hire and retain good employees.
I'm amazed that companies are willing to pay salary + 30%-50% overhead for a contractor, then expect them to take a pay cut, lose their overtime pay, and get locked into a 3%-7% raise structure, all for the privilege of having someone else sign their pay checks.
I see many posts discussing the loyalties of employees and contractors to the company, but I didn't see any comments discussing the company's loyalty to the employee. Believe me, that's just as important. I've been in the IT industry for 10 years now. In the past 4 years, I've had 5 jobs pulled out from under me. Companies have gone belly up financially, changed their business model/product line to where I was no longer an asset, or any other number of other things. Over the past 4 years, these forced changes have eaten all of my personal assets. I'm in my 30's, have no retirement savings, no stock, and an almost zero bank account. I've never owned a house, having only been able to rent. I have not had a vacation in 5 years because I've either not reached the eligablilty date with the next employer, or was still recovering financially from the last disaster and could not afford it. Add to that the stress of starting over again, and again, and again. NO THANKS! I'm extreemely well skilled in a lot of different areas as well as having advanced knowledge in some specialized areas, but have difficulty getting interviews because of the employment turnover, which if they would bother to ask would find was clearly out of my control. When I do get the call, I usually have no problem getting a respectable offer because of my knowledge base. For these reasons, I decided to work as a contractor under a large consulting firm as a means of dealing with this corporate madness. That way my pay, benefits, and retirement are NOT affected by the wims of the buisnesses I'm contracted to work at, and I can list one constant employer on my resume.
What do you call 10,000 contractors at the bottom of the ocean??? A GOOD START!!!
My longest tenure at a company was as a Contractor for 1.5 years, two of my contractor friends have been there for 3 years and 4 years, respectively. The company recieves flexibility and a higher Revenue/employee ratio than otherwise, as well as being able to keep these extremely valuable resources.
As for Contractor motivation, I dispute that a contractor's motivation would be any different than an employee's, they just experience different forces. If a person was inclined to do good work because they ENJOY programming, then they will do good work, with good design, whether they were an employee or a contractor. As a contractor, I am valued for my design skills.
As for self-motivation, I feel that I do better work as a contractor than as an employee (although I like to think that I did good work as an employee). As an employee, I found myself spen ding an inordinate amount of time worrying about politics, and internal status (why is that yahoo being promoted, etc.). As a contractor, I don't particularly care what person X is getting as long as I'm getting my rate. And when any company wide events happen (merger/sale rumors, etc), it has absolutely no bearing on me, except if I feel that the project might be canceled or scaled back.
Sure, almost everybody wants to become a self employed consultant/contractor, and stop working for 'the man'.
But, how does one go about getting the first few crucial contracts, BEFORE you have a contracting history to draw from?
You have no real advancement path. If you do end up becoming a team lead and then a dept. head you are stuck. They push you away from the technology and cause you to stale. They handicap the very reason people on your team respect you as a manager and work with you to produce awesome results for the company
So you are stuck. Manage or do tech no in between or no advancement. I have experienced this again and again.
Many posts have also been about the upside of employee stock options. I have a ton of options that will probably even be worth something within the next 5 months.
The downside of the options, I had to work my butt off at a 15-person company until it had 200 employees. As they approached their IPO they were almost embarrassed by the young techies that made them a success. One day I was giving routine presentations in front of 50 -300 people. The next day I was hidden away as the new more experienced (read older) people, who they wanted do be the IS face of the company, started screwing stuff up.
Also another set of options I had from a different company turned out to be totally worthless, so with options your millage may vary.
Well now I am contracting. My rate is reasonable and I still make out better financially. I also know my place and am not playing the start-up game anymore.
Maybe after the last start-up experience fades or if the options make me a lot. I will be less down on being an employee.
PS The other upside is that you have an out. So many times I have been an employee and people who should not have been making design decisions were in the architect role. This was painful for me. I like to take pride in my work and I had to work on projects that could not work because of bad design. As a contractor when the contract is up you don't have to feel guilty about not renewing.
If you just want soldiers, then contractors are fine. If you want people who are seriously vested in your success, then you have to make them believers, and the best way to do that is to give them, at least the best of them, a cut. Equity, options baby! We have some fantastic people here on salary who could be making twice as much as contractors. They took the cut because we convinced them the business plan was sound and they would get a slice of the company when it goes public.
RE: Microsoft's recent court case, the one involving contractors...
Didn't MS just loose a big court case that gave all the contractors the back 'benefits' including stock options? I'm guessing, but I'd bet that most of those contractors were not 1099 contractors. That means that even though they were W-2 employees for a contracting company (job-shop/pimp) because they worked at MS full-time and the court decided that because they were at MS and directed by MS every day, they were MS employees, who whould be given MS benefits.
If that is all true (i'm sure MS is still appealing the ruling?) then doesn't that start to spell the end of that type of contracting? How are (big) companines going to be affected by this? I have (and am now) worked as this exact kind of contractor (I've also had stints as a consultant and perm) at several large corps, if behemoth corp. had to actually eiter hire those contractors or let them go, there would be massive changes in both the work that could be done and the financials of that corp....
i'm verklemt, discuss...
I tend to agree with the people on here that say we are all contractors to a degree. The turn over rate even at really good companies can be very high (like 20% per year at most of the companies I've worked for).
The only advice I can give you is this: If you really want employees that will care about the company and will become the pillars of the company you have to treat them like it. You have to give them a vested interest in the company. Not just stock options once in a while or a 401K but real benefits from real results. So few companies have done this right. If a group makes the company money, pay that group for it. It's not that hard but very few places get it right. And also let them make decisions, without that ability the money will be hollow and unpredictable.
So if you are not willing to do that, hire contractors by all means. They work.
First of all I agree with the post that says that 80% of all contractors are bad. I, as a contractor, have cleaned up after them but also have cleaned up after many bad employees also. I remember stapling some bad contractor code on the wall of a large corporation and every time they questioned my higher rate I would point to the crap on the wall. They got the message.
Now I mainly do telecommuting from my own office. The good aspect of that is that, rather than a contractor who gets whisked off to another contract somewhere after your contract is finished, I am continuously available for further design, analysis, typically some mentoring & technochat, and any fixes. As a result, most of my business is "word-of-mouth" and I have long term relationships with clients.
One thing I've avoided as a contractor due to earlier experiences 15 years ago is to 1) avoid stupid shortcuts like "hard coding" of any type, 2) avoid utopia (i.e. use of the most bleeding edge technology usually accompanied with moving-target-specifications), 3) Go for tool sets and core skills rather than all-embracing "magic applications" and 4) make things modular so that portions of a system can be removed and substituted for but with minimal operational impact. This makes for easy coherent maintenance.
Another thing is that if you're having to make all data element changes to your OO Java(tm) code (i.e. get and set methods for each element) or having to by hand put and get elements from your JDBC work, or having to go through an IDL compilation step there's something called Dynamic Data Objects(tm) which eliminates all that.
(Java is a trademark of Sun Microsystems)
(Dynamic Data Objects is a trademark of Tri-Century Resource Group, Inc.)
Now...taking over someone else's work is no fun because it's someone else's work. Sometimes that *is* compounded by poor design or lack there-of.
And in your 16 years, how many times have you seen the client or boss change expectations/work plans on you mid-project.
So, is the 80% still the problem or are there other problems too? Now to be useful and address the real question
If you go contracted, don't be completely hands-off, still be involved with the contracted developer. I was once told (after being told RTFM) "Ignorance cannot be tolerated, only cured"
If you go with employees...hire good ones and make it worth their while to do something good.
I did development at a large company (then on of the 'big six') and they gave me a gutless computer (P133, 16MB RAM, 2MB Vid RAM) on lease and made my co-programmer share my CD-ROM across the network cuz his didn't have one. And this was for the 'multimedia development'. I was actually a temp and they wanted to hire me on FT...but the way I was treated there didn't make me want to stay. I saw them drive away private contractors as well. They threw last minute assignments at us and when we came through, we were lucky to get 'thank you'. When I left they contacted me for help with code I had done. I told them to read the documentation...which I *HAD DONE*.
My contract is up on October 1, at which point they are converting the position itself into perm. It's company policy to interview anyone within the company for the position and then make the decision--in other words, I am not guaranteed to get the perm position. However, if made an offer, I WILL accept. Why is this?
Without exception, in every contract I have been in, the company has not fulfilled their end of the bargain. In updating my resume for the current position, I noticed I had worked 9 different contracts in 5 years. Usually the way it works it this...
I'm working, things are going well, I'm getting kudos from the company I'm contracting to. I commute, so it takes me an hour or so to get home each evening. I get home, and there's a message from the agency to call them. When I call, they do the bit of smalltalk, and then finally tell me about how the company has done a 20% layoff of employees, or how the funding for the next quarter hasn't come through, or any number of stupid excuses.
So when I work, I may be making $, but I don't have the stability of knowing day to day I have a job. Believe me, finding out your job has ended 5 minutes after you get home from a hard days' work is not my idea of a good time.
Take the pay cut? Take the benes? Definitely. I don't want to be looking for employment every few months.
Disconcerting, to say the least.
I think the tendency amongst the non-computer-types who manage IT nowdays is to view their entire staff as toy-happy ne'erdowells always looking for new ways to spend "their" money. If their staff says they need to upgrade their 10baseT network to a switched 100BT network because the current network is completely saturated, they have the same response as if the staff says that they need to buy top-of-the-line SGI workstations for all of the developers' desktops -- both requests are treated the same, as "frivolous techies just want new toys". After all, these IT managers came from finance or sales, they wouldn't know a network switch from a light socket.
An outside consultant, since he is not going to be the one playing with the "new toys", is viewed as more dispassionate by the PHB. Which, in turn, discourages employees, who then contribute to that turnover problem by going elsewhere or going contract...
-E
Send mail here if you want to reach me.
I'm a contractor simply due to the fact that as a programmer you quickly seem to hit a salary cap after a few years unless you want to go into management and get more hands off. I love coding and doing sysadmin stuff and as long as the contracts are there it pays SOO much more once you have a few years experience under your belt. Fortunately you can make a good living as a contractor in the bay area doing open source coding and linux sysadmin.
First of all, it's a consulting firm. If your employees can't ramp up on new technologies on a regular basis, it sounds like you have a pretty
narrow market, and unless that market is going to be around for a long time, you are in trouble.
Contractors can give the client confidence in the early phases of the project by kicking it off while the other employees get up to speed. It is important that the contractors be included in all meetings where specs are given.
The employees can certainly ramp up if you give them the support and resources that they need. Unless they are learning something completely unreasonable, you should be able to expect experienced coders to pick up a new language or technology in a month's time.
Adding contractors near a deadline to speed things up is common, and some people swear by it. I have been that contractor before, and many code warriors are up to the task. I would take the time to consider why you are missing the deadline before making that call, however. The contractor isn't omniscient; he or she has to ramp up also!
Many people, myself included love doing contract work. However you never know from contract to contract if you're going to be employeed or not and there are hardly ever any benefits. The money is generally better, but again, no benefits and sporadic work makes it hard for anyone to "settle down". There is little truth in the initial statement made that contractors know more than anyone else. The difference between a full time employee and a contract employee's knowledge needs only to be judged by *JUST* that. No relationships need to be invented where there are none.
Mind you, the contractors conceivably can ask to be considered employees after the first year, causing a tax issue for the company.
--davedavecb@spamcop.net
There's plenty of interesting things to do within my current employer's walls, and not enough hands to do them all. I don't have to go elsewhere to get variety.
-E
Send mail here if you want to reach me.
It sounds to me like you're going to need those developers around for a longish time if you're doing a ramp up. That being the case, hire them.
Why? All other issues aside, it's really pretty simple. The IRS will eventually come knocking on your door in you contract with someone, especially if they work inhouse, for six months or more. If you keep it shorter than that, they won't Sure, maybe it won't happen this year, or even the next, but when it does happen, there's nothing like an IRS agent at your door to make life miserable.
Steven, Senior Technology Editor, Sm@rt Reseller
I've worked as both and I prefer to work as an employee because I can determine who it is that I spend my efforts on every day and what contribution that organization makes to our society/world. I could not, for example, allow myself to work for a company that produces nuclear weapons or clearcuts our forests. As a contractor, it's very difficult to select who you work for. You might end up turning down a lot of jobs (if you're picky like I am). As an employee, I only have to do that once (or at least once in a long while). I currently work for a university and feel good about the fact that my efforts are generally going to help people (yeah, it's a slippery slope, I know).
I've been both a contractor and a direct employee. I found that for myself, I tend to enjoy the stability that comes from being a direct employee. As a contractor, I often experienced contracts getting pulled which is a rather distressing thing to have happen. (note; Similar things occured at some companies where I was a permanent employee). Overall, I think I'm happier being a permanent employee at a company that values my skills and my interests. Your mileage however will almost definately vary.
--JT
I've worked as both a regular employee and as a W-2 contractor. As a W-2 contractor, I was employed through a bodyshop. That is to say, I worked for a bodyshop, but did my actual work for other companies. The bodyshop billed those companies for my time, took a cut, dealt with my tax withholding and social security, and paid me.
Having been in a number of different employment environments, I have to say that the quality issue between regular employee's and contract labor is non-existent. Bodyshops will happily stuff anyone into a contract just to make more money. Similarly, I've seen far too many employee's who couldn't make the grade, and who survived on political skills alone.
Here, medium and larger companies will see an advantages to contract labor. Usually, contractors who are worthless get fired. Employee's who are worthless get promoted into management, because firing them tends to be incredibly difficult. (Or one makes their life miserable until they leave, which hurts overall moral. And encourages others to leave.)
In terms of duration of employment: I've learned, through hard experience, that the only job security in this world is the ability to go out and find another job. (It doesn't matter how good you are, when the CEO dissolves your department, you are still out on the street.)
At one job, where they really wanted to keep employees around, I lasted 1.25 years. At the time I was hired, they hired three people. I outlasted the other two by over a year. (I naively thought I should stick it out and try to make things work. Management made a series of bad calls that were corrupting a massive database. They refused to acknowledge the problems, or permit me to fix things. Then they decided to promote me into a "person we can blame" position. I was strongly motivated to leave.)
I left for a W-2 contract position. My salary more than doubled. But money is irrelevant. People do not work for money. This is a common misconception. I have been in nightmare jobs. Jobs where they say, while you are programming, we also want you to play receptionist and handle the phones. And, by they way, we just released a new software product, one that you are not associated with, to all our clients and it has more bugs than a microsoft beta. I don't care what they pay me, as long as I have alternatives, I am NOT going back there.
I stayed in that W-2 contract position for over two years, until the CEO dissolved my department, because I enjoyed the work. At one point, I was offered the opportunity to switch from W-2 contract labor to being a regular employee. At that time, I thought to myself: Let me get this straight. I take a steep pay cut, since you don't pay employee's anywhere near what they are worth. I lose my overtime pay. I gain benefits that are nearly worthless. There's no job security here whatsoever. And most importantly, there are no advancement opportunities. This is going to be a hard decision. How exactly do I politely decline without offending them?
After I left that position, I chose to go back to being a regular employee. And I took a steep pay cut. Why? Because the job was right for me. I found a place that challenged me intellectually. That permitted me to grow. And where many of my coworkers held doctorates in the computer sciences.
It is unfortunate, but most companies do not offer any advancement track outside of management. As a programmer, and a damn good one at that, I do not want to go into management. So, aside from certain exceptional employment opportunities, contracting is my only option.
I should point out that, when I decided to accept regular employment, I had in fact been offered another W-2 contract position. My salary would have been about 150% of my current salary. But they failed my job interview. Hint: Don't tell me you know computer science if you can't explain the difference between O(N^2) and O(logN). And don't say you know C++ if you don't grasp polymorphism. (Me: "You have a pointer to an instance of class foo, that is derived from a base class bar. Now you cast that pointer to be a (bar *)." Them: "I don't think you can do that." Me: "Oh oh.")
Life is short. I'll take a job that I enjoy over the money every time. Producing quality work, work that I can look back on and be proud of, matters to me. Everything else is irrelevant. I really don't care whether it's W-2 Contracting, 1099 Contracting, or being a regular employee. It's just that, as a regular employee, I'm seen as a peon. The lowest level of the managerial food chain. Which greatly limits my opportunities for employment and advancement.
All that said, I can offer one other piece of advice: Bring in analysis and design specialists. These skills are quite different from programming, and substantially more rare. (These are also people who are unlikely to remain with your company afterwards because you have nothing to offer them.) Perform an analysis of your business systems. Model it. (This permits anyone coming in to quickly grasp how and why things happen.) And then design what you need. For Object-Oriented work, this is more than half the job. Then, and only then, bring in an army of programmers and parcel out the coding assignments. Define coding standards. Have frequent code reviews. Require scaffolding test code and regression tests. Have your analysis and design team form the technical leaders during the programming phase. And have them redesign as necessary, because waterfalling never works right the first time. But spiraling consistently produces good results. Afterwards, some of these people will be interested in staying around for maintenance and improvements. Others will move on. Pick, choose, and negotiate whom you want to stay.
This is a recipe for success. It's only one I've found.
Many people here seem to be making some false assumptions:
1. There is only one kind of contracting/consulting work. Which is not true at all. I've known consultants that stayed with a company for 5 years. And there are also contracting teams that always work together, which lessens the social problems of contracting. Not to mention the fact that contractors often work with the same company on and off for many years as well. And there are also contractors that primarily teach employees. (Personal note: I think contractors write crappy code often because they are expected to and given deadlines to match. A craftsman is a craftsman whether contract or employee.)
2. Contracting is the same everywhere. That is also not true from what I've been reading. In different countries, heck, even different parts of this country the attitudes about contracting and employment are very different. If you are in Boston or the valley or Seattle, there are a lot more startups and the history of failed companies shafting employees is very long. Loyalty in such areas is very low. Even between big companies and small companies the comparisons and the contrasts are very different. (Personal Note: My opinion is either contract or work for a small company. Contract for the change of pace and the money. Small company for the chance to make something real, be a part of something big and get vested. But then again I don't really value complacency/stability that highly in todays market:) I think people have to take this stuff into account, like where this guy is coming from..
Why the hell is this a troll?
A good portion of contractors ARE momos who can't hold a steady job. He didn't say ALL of them.
And not hiring someone and treating them like a human being, and judging them by output rather than arrival time or how they dress is a SURE FIRE way of attracting someone with some talent. Truly intelligent individuals don't like to be controlled.
Here's a nickel, but a clue.
This message brought to you by the Council of People Who Are Sick of Seeing More People.
Just had to pick your nit. ;-)
... the race is not always to the swift.
Having been on both sides of this issue, and in the banking industry, I thought I might add my $0.02. While 80% might be a little high, I would agree that too many contractors are worthless. I would also suggest that too many FTE's are worhtless. Also WAY too many managers of those FTE's and contractors are worthless. I would point out that taking over a project that an FTE has screwed into the ground is no easier than taking over a bad contractor project. I have actually gotten chewed out for spending too much time on documentation when I was contracting (big suprise, that project bomded due to bad management). Anyway, there are just too few good people on either side.
Mind you, that view could be skewed by some recent experiences of mine.
As for who is better - forget the labels. Skills don't come packaged up with a bow and a label. You'll find some employees are really skilled in whatever area you want. Some might be open about it, others more reticent. The same will be true of contractors. IMHO, your best bet is to find out what the REAL skill level you have to play with is. Until you know what cards you actually have, you can't know what cards you need.
Once you know what you're after, you're in a better position to know if hiring contractors is a good idea. If the skills you're short of are likely to be found in one or two people, hire them. It'll be cheaper, and fewer people make for a more cohesive product. Diverse requirements, and contracting out is likely to produce better results.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
I'm in the U.S., and will soon be looking for contractors. What do I do if I can't find programmers with the specific skills I need? Do you think it's practical to contract people in other parts of my country, whom I will never meet face-to-face?
Also, how do people recommend paying the contract? It's for completion of a particular, specifiable, programming task; so should I pay a flat number of dollars for completion, or do I need to pay per hour?
how did this business school drivel slip into the language?
The decision should be based on financial planning and business plan considerations. You are a consulting firm -- which probably means you live and breath contracts. Flexibility is paramount. Business is most likely very volatile. Your payroll is probably far and away your biggest cost center. Permanent staff can swamp your boat in no time if conditions change. Temps can come and go depending on conditions. Temps coming and going is no big deal. Layoffs of permanent staff are poisonous.
Others make excellent points about what contractors are good for and what tasks are best done by permanent staff. From my experience at a consulting engineering firm, I'd say build a core of permanents that know how to schedule and manage your firm's contracts. They should have the knowledge and judgment on how and when to deploy and manage temps. Keep your principals on salary in order to build continuity and help with business development. Use profit sharing on a contract by contract basis and you'll probably find your staff eager to use temps to control costs. (All the blather about equity and IPO's are unlikely to be meaningful for a consulting biz.)
Either way the company has brought in someone to get a job done. In one case this is a f/t employee. In the other case it's a contractor. The only real difference is the legal employment status.
I have been a f/t employee and have had contracts that ran from 2 days to 2 years. The quality of my work is no different no matter what my employment status. If the quality of your work changes when you contract, this is a reflection on *you*, not on contractors in general.
I find contracting to be a very free market approach to work. If you want time off, and your manager agrees, and you can afford it, you take it. You don't have to worry about accrued vacation days or any of that rot.
Almost every place I've ever contracted has offered me f/t employment. I prefer the freedom and flexibility of contracting. I am, however, a professional. The quality of my work is the best I can do, no matter what employment status I work under.
But if the quick ramp-up is based on a glut of simple webification or e-commerce consulting contracts, or if there is little continuity or carry over from on On-Que.com contract to the next, temps rule. Another consideration for On-Que.com would be geography. Temps can be hired where the client lives.
The best code designers are really not that good at maintenance, and you don't want someone good at code maintenance designing your software, do you? The use both employees and contractors well and you can get the best of both worlds. But if you are going after contractors, then make sure that this is what you are finding, and not temp employees from a contractor. It is easy enough to figure out who is good and who isn't before the contract is written. If you are going through an agency then the agency is your contractor and it's employees are temp employees, regardless of what they choose to call themselves ("contractor" has legal definitions). If you have a fully independent contractor that operates as a business and who has been in business for at least 5 years, you probably have a winner. If they didn't have the skills and reputation to stay independent, they would become temp employees of a contractor (agency) that would pay them via W2. Thus, if you are dealing with a real contractor (paid via 1099) who has been in business for several years, you can assume that he/she has some skills, or would not still be in business. No such claims can be made for employees of a contractor (agencies) since they are really temp employeee, rather then contractors).
If you need cheap manpower, one other option you should look at is getting university or college co-ops. Though you'd certainly want a core employee or knowledgeable contractor doing your design and implementing the most complex stuff, co-ops are great for getting the grunt work done, especially for short projects.
I've found that contracting (short term, and lots of it) is a good way to broaden out your experience.... you get to learn heaps of stuff, but shallowly. I used contracting to know what to avoid.... there's almost nothing that I can't put up with for 3 months... but I won't go back to it. Now, I'm working full time as an employee.... and consolidating what I know and like, learning in more depth. I envisage, in a few years, heading back out contracting again, so I don't get stale, and stuck in a rut..... Learning is life.... if you stop learning, your career dies....
Chicks suck.
Guys are ugly.
Pass the kleenex.
This is the first time I've ever been a consultant...but I'm also an employee of the consulting firm, not "hourly". *And* I get overtime.
So, what do I think/prefer?
I plan to stay an employee. I don't want to have to deal with taxes, or benefits, etc.
On the other hand, I do like the overtime...I've been a direct employee long enough to truly resent the phrase, "whatever it takes", as though I were an indentured servant. This way, *they* have to consider the cost, not just lay it on me, without any consideration of whether I have a life.
Without that overtime...I see little difference: they force a pager on you, and claim that they're paying you for wearing a ball and chain, and being at their beck and call 24x7x365.25.
On the company's side, it's stupid to not have their own employees build the software, since they'll be the ones maintaining it...but mgmt is utterly clueless (it's the ties - they cut off the blood supply to the brain). Their own employees will tell them something...and several years later, when a crisis hits, and a consultant, brought in, all of a sudden, will tell them the same thing...and they'll listen to them, but not to the employee who told them that, nor will said employee get anything other than an internal "I told 'em so" out of it.
Also, those of you claiming that "all employees are stupid, all contractors are brilliant", are a bunch of young, ignorant assholes, with neither life nor smarts. Consulting firms often hire kids right out of school, with no experience (as I well know, from working at my previous job with folks from half-a-dozen consulting companies, with Andersen being the biggest), who've never written anything big or serious.
Y'all work in a sweatshop, and think working 12 and 15 hour days makes you "important" (and your grandparents, who did the same thing in factories, knew they were being used and abused, and created unions).
Different projects? Hell, of those of you who've worked in the field for 10 or more years, what's the average length at a job, before you move? Three years, isn't it?
Nahh, I'll stay an employee...and I'll be even happier when they finally unionize the field, so we don't *have* to wear fucking pagers all the time, or work 60 and 70 hour weeks.
mark
You can get visa'ed people as contractors. These people are of high quality and require little compensation. It's good for profits, good for business. A Win-Win for all. I'd suggest your employer to consider Foreign National consultants.
Most folks I know consider a "consulting firm" to be a bunch of contracted employees.
If you guys are contractual employees, aren't you being hypocritical (or really stupid :) by saying contracted guys are smart while your guys aren't as smart as contracted work? I mean, they *ARE* contracted work....
Maybe I've totally misread the statement. If that's the case, feel free to give me a good drubbing.
--
Ben Kosse
Remember Ed Curry!
If a contractor is no good, he/she does not get a re-newed contract. They tend to be much better.
War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
POLYESTER DOT NET IS HATED BY SLASHDOT SINCE THEY LOVE THE ONION!!!! GOT POLEYSTER?!
There are two reasons why a consultant's a consultant: 1.) They are very very good, and don't want to become enmeshed in a corporate bureaucracy. 2.) They are assholes that can't get along with people for any serious length of time. I'll add that the very very good types will also be charging a very very high rate.
There are some distinct differences from being
a regular employee to being a freelance agent.
Real employees have to be fired according to
a procedure. There have to be reasons and
justifications for it. Real employees can sue
for damages if they are fired incorrectly. And
there's severance pay, and other little bennies
as well.
Temp contractors have none of that. One phone
call, and they are out.
I've been both an employee and a contractor. My thoughts are that employees are best, because, if they are worth their salt, they will have the companies best interests at heart. Contractors are in essence, high-tech mercenaries, and although some are very good, and will have their clients's best interests in mind, some are just there to make a buck. Lastly, it is a falesy to believe that the best people are contractors. I've worked with many contractors who couldn't "code" their wway out of a wet paper bag (to coin a phrase) and then I've had to spend many hours rewriting their programs to make them work correctly and efficiently. This does not mean that all employees are good, because that can also happen. I hope this is of help.
Oh, c'mon! "We will be adding non-JS support as soon as we can", bla bla "due to a bug in Netscape" bla, hey, what good is css for a page that mainly consists of clickable images? Any high school kid can do better than that!
Don't forget if you hire a contractor for an extended period of time, provide that contractor a computer, demand that he/she work from 8 to 5 and to perform work in a particular way, the IRS may decide he's an employee and not a contractor.
And if they do that, the IRS will hit you up with a tax bill that is rougly 1/3rd of what you've paid that contractor in salary.
Contractors are used for short term projects that take a well-defined period of time. Preferably contractors also have some degree of control over their work environment. Simply giving some guy a 1099 instead of a W-2 doesn't count.
OTOH, if you've got good employees who want some freedom, why not consider allowing them to telecommute?
I disagree that the best staff are contract employees who know their worth. I know some contractors and they are a mixed bunch on the whole. A variety of circumstances lead them to contracting. Good employees are hard to find and then recruit. You need a fairly exhaustive interview process and you need good interviewers, so building that critical mass is the first obstacle. I know full time employees who are world renowned, and have head hunters calling all the time, they stay doing what they do because of the nature of the work, and their passion for a vision of the future, not only for the money. One observation relevant these days is that nobody ever got rich contracting, you can get rich on a startup stock options so who is the more ambitious financially? Who cares more about the long term success of the company?
If you want the best individuals you need a leading project with inspired vision and you need to find the best people and do what it takes to hire them. Offering a long term incentive like stock options seems to be one popular way of generating focus on executing well and staying around.
As a potential employee, you must weigh all the options -- taxes, W-2, insurance and other benefits.
Many IT headhunters offer contracting jobs with just a W-2 and insurance so the self-employed tax can be avoided.
If you are unsure what to do, talk to a good accountant -- particularly if it is a work at home situation. A good tax advisor can save a lot of headache and money. And the advice may be deductible.
Rehabilitated journalist and web builder No electrons were harmed during the creation of this mess
While I am aware that experiences vary, the overwhelming majority of the "employees are better" posts seem to be just a tad, well, biased. I became a contractor specifically because I had no voice in my company. I wasn't paid enough to participate in the stock purchase plan, yet I was expected to work ridiculous amounts of overtime for free. Conditions like these are, in my experience, typical, yet hardly foster the "company loyalty" that I keep reading about on this topic. Benefits? Don't make me laugh. The HR departments at my last 3 "real" places of employment managed to find new and innovative ways to prevent my delivery of insurance and the like, without missing a single payroll deduction. My final full-time job even managed to fail to pay me on several occasions. I actually had to involve government authorities at one point. Job security? I've only been laid off once; it wasn't at one of my contract positions. Put simply, I do a good job, and have stayed on at jobs while full-timers were laid off or fired. Contracting has been good to me. While others in this forum revealed their ethical deificiencies ('my only loyalty was to the 3-month duration of the contract, and quality be damned' and the like), I relished the opportunity to work as much (or as little) as necessary to ensure that the job is done properly, knowing that I am being paid for every minute of it. Managment actually listens to my suggestions, and I have been able to effect real change, even contracting to my former place of employment. I've never been worried about finding a new opportunity when I finish, as I have always been offered permanent positions with my clients. Repeat business, however, has kept me contracting for the time being. As for taxes, I really haven't had a problem. It has never ceased to amaze me that, while I was on salary, the payroll people invariably failed to take out enough money. I pay my own taxes now, and have never had a liability. Actually, more stuff is deductible now . Benefits are *better.* I haven't been able to find a company that can match my insurance plans. I don't get matching retirement $, true, but that's why I make the extra bucks--for an IRA. As I mentioned before, experiences vary. While it sounds like, in this particular case, employees are warranted (building what will become the core of the business), I am more than a little surprised at the invective directed against contractors. But then, given the obstacles that employees frequently place in my path (many are, in fact, the reason for my being hired by the client companies), I guess I shouldn't be.