views:

311

answers:

6

What skills are required to work on a temp / contracting basis, and how does a developer know when they are ready to work in these circumstances?

I have some colleagues who are suggesting contracting work is 'the way to go'; the pay is significantly better. It appears that when a permanent position pays (X times $1k) per year, the corresponding contract position pays almost $X per hour - which is close to twice as much. I look forward to doing this type of work as an experienced expert, but worry that by doing so right now I'd be turning away learning and development opportunities.

My assumptions about contract work are the following:

  • less / zero money invested on training and development
  • less concern for job satisfaction and learning ("they won't be here in 12 months")
  • possibly less concern about the overall quality of the project ("we won't be here in 12 months")

There are similar questions on stack overflow at the moment but what I've really looking for is:

  • What does the developer give up by moving to contract work? Is it preferable to have structured learning in a permanent position rather than seat-of-the-pants learning in a contract position?
  • What skill leve should the contractor have before making the move? Is there still the same kind of growth in contracting that there is in permanent positions?

Rightly or wrongly, I see this as a choice between $ (contracting) and learning / development (permanent). Is this fair?

+4  A: 

All my "work" has been contracting work. I enjoy it, or at least I enjoy it as much as I would enjoy a 9-5 programming desk job.

However if contracting is "right for you" or "right for Agent Smith" depends on you (or Agent Smith). I really do not think there is any golden bullet and I feel that trying to analyze something in a manner such as this just does a disservice to the person asking a question. Perhaps you will get rich as a contractor. Perhaps not. Perhaps you will learn a good bit as a contractor. Perhaps not. Perhaps you will like contracting (or programming for work). Perhaps not.

Take time. Reflect. Try it. And don't be afraid to change.

The door you don't open is the door you don't go through.

pst
+14  A: 

In Australia at least, you give up more than a lack of training/education. We give up any paid leave entitlements. If I take a day off work it costs me one day's pay. If a public holiday occurs (as Easter just has) I give up a day's pay.

Also the relative security is less - a three month contract often has the avenue of an extension but if not you need to find another one. An on-going position, whilst it can be pulled out from under you at any time, is not designed in its nature to be short term.

These two reasons are some of the biggest as to why the pay is so much higher as a contractor.

What skills do you need? A lot more discipline, self-sufficiency and an analytical skill to hit the ground running with little support.

I've noticed that as a contractor you're plonked down, with little hand-holding and told to get to it. Whilst some companies will have very good induction for permanent and contractor alike, I've found contractor work generally gets the short straw, there is a sense of urgency, that you're only here for a short period and since generally contractors are used to fill a resourcing need that has suddenly occurred (due to the loss of an existing staff member of a project running late) people aren't too interesting in consuming that valuable time with hand-holding exercises.

What do you get out of it?

Much more experience in a wide range of diverse projects and environments. Also its almost like 'try before you buy'. In many instances contractors can be offered permanent positions with the company if the fit is right and the resourcing need exists. You get a real feel for the company on good pay for the first few months then if you want can settle down, or move onto the next adventure.

Yes, training and skills development are generally not offered ot contractors - they perceive your skills development as your responsibility since it will have a greater benefit for you and your next client than for them (why spend money to train someone who will in all likely hood not be with you in 3 months time?).

Just my experience and observation - hope it helps.

Michael Shimmins
I'm also in Australia, so I understand the lack of sick leave, annual leave, public holiday pay etc - but this is somewhat counterbalanced by the ability to run a small business, claim a work machine and education costs as a deduction, etc.In essence I am wondering (or hoping for reinforcement) that a permanent position is the right thing for me at this time. I believe it is, and your answer helped - thanks.
Kirk Broadhurst
I am from Australia too. I have seen contractors working for 2-5 years in one company and heard of even more. In the companies I worked contractors received same respect as permanent staff. Many companies have contractors in senior management level as well.
Pratik
Same in the UK.
Frank Malina
+4  A: 

Something that a lot of "developers" lack is business knowledge in specific fields where there are a higher percentage of contracting positions available ie: Global and Retail Banking, Insurance. You might be a great coder but if you are given a project where you need to translate business or domain knowledge into practical solutions it can be a little daunting.

Some people like contracting and others don't, I have gone down both routes and always seem to end up chasing contract work simply due to the rates.

Nearly all "good" contractors I have worked with spend a lot of time keeping their skills and business knowledge up to date and place a high value in delivering quality code, with the hope they will be offered a contractual extension or another role at a later date.

Lloyd
Good point. I'm not referring to industry specific contracting but I do see how having such experience could be very valuable.
Kirk Broadhurst
+3  A: 
luis.espinal
A: 

@Kirk, I think the best approach here is one that was mentioned about specific business knowledge. I am not the best programmer in the world (or the worst I think), but I have made a career because I've applied my real world knowledge in an industry to programming. It really helps when you speak the language your client does, and when you deeply understand their business or industry. In my experience, if a generic programmer is worth $X, then a programmer with specific industry knowledge is worth $X*1.25 ~ $X*1.5

Haldrich98
+2  A: 

As a long term contractor here are a number of observations:-

  • The market is just as important as your abilities. You can be the worlds best x86 assembler programmer but if there is no demand you won't get assignments. So carefully check out the market for your skills and experience.
  • Industry experience is probably more important than technical experience. Banking, Insurance, Oil and Pharmaceuticals will take someone with experience in the industry over someone with experience in the technology.
  • You need to be prepared to keep your skills current and/or marketable. There are two key tactics here, one, if you have experience in a particular industry don't be afraid to apply for jobs which dont fit your technical profile, and two volunteer if some part of a project involves new/unfamiliar technology offer to take care of it.
  • Be conservative about money, taxes, medical expenses. You will have more money coming in but you will have more money going out and a more erratic cash flow. Most permies spend most of their income most of the time, this approach will lead to pain and misery if you are a contractor. Don't max out on mortgages and car loans and always manage your finances to allow for a three months without an assignment.
  • Permies have no job security anyway these days -- they just don't know it. The constant awareness that assignments come to an end keeps you on your toes eying up alternative opportunities and if a contract gets cancelled then you are emotionally better equipped to deal with it.
  • Be prepared to invest in yourself! Pay for courses, attend conferences, nurture relationships with other long term contractors and agencies, try to be top of the list when someone asks "does anyone know a good ????".
  • The good behavioral you learnt in kindergarten pays off! Be polite friendly and considerate to your clients and colleagues, fulfill any commitments you undertake, and don't complain when you get given a boring job. From the client's point of view someone capable and personable is better than a troubled genius.
James Anderson