Having worked many permanent and many contract roles as a software engineer I have to say there are pros and cons of both.

As a contractor your biggest perk is more money, and also more freedom if you’re in the right mindset, but this is only if you know how to negotiate. As a contractor it’s up to you to define the terms of your employment, so if you’re not good at negotiating then you can end up worse off (more tips later).

As a permanent employee you have better job security, various benefits (depending on the company), and the simplicity of not having to manage your own accounts, contracts, etc.

You probably have an idea which is best for you, so let’s dig in to the pros and cons of both… although it’s easier to simply cover the pros of both, and the cons write themselves.

The pros of being a contractor

No need to care about office politics

I thought money would be the biggest perk of being a contractor, but it’s not – it’s not having to care about office politics.

I took my first contract position when I was 27 (in 2005). As the only contractor in the company, they were kind enough to include me in the monthly company meetings.

Sitting amongst a group of permanent employees complaining about not getting a pay rise, not enough of a pay rise, or less of a bonus than previous years, made me realise how much these things matter when you’re working perm.

As a contractor it’s up to you to negotiate your pay, and if you’re not happy with it, that’s your fault. Because it’s your fault, you don’t have any bad feelings towards the company for not paying you enough.

No need for overtime

As a permanent employee you want to impress, in the hope your hard work is recognised and rewarded as a pay rise or bigger bonus.

In reality a company rarely recognises the efforts you put in.

I learned this useful fact very early in my career when I joined IBM as a graduate and worrked my a$$ off believing I’d achieve stardom.

In hindsight this was very naive, and none of my hard work was recognised. In fact, the next year of graduates were paid more than me, as were those who joined the following year. All I got for my hard work was a pay rise inline with inflation, and despite arguing with my manager how that wasn’t really a pay rise – she steadfastly refuted and said it was.

As a contractor, you’re there to do the job you’re paid to do, and you don’t have the pressure of striving for a promotion or pay rise.

This means, come 5pm, you can go home.

How good is that?

And when you get home, you don’t need to care about work.

Money

Renumeration is a huge perk of contracting.

You have various options – go through an agency who calculate your pay, work as a sole trader, or start a limited company. It’s easy enough to do the latter, which makes you a CEO (which is cool), and is the best way to make sure you take home as much pay as possible.

Having a company has a big perk – deducting expenses from your profits. This means you don’t pay tax on legitimate business expenses, such as commuting to work, parking, mobile phone, broadband, home office (if you work at home), attending events, books, courses, and also – as a necessity – accountancy fees.

You can also manage your money with more flexibility. For example, if you have a mortgage, paying yourself all earnings early in the year means you can pay that money off your mortgage and save interest, then later on you can pay yourself less to accumulate the money you’ll need to pay in tax (several months after tax year end).

I highly recommend contributing to your Superannuation regularly – This will help you retire early, and regular investments and compound interest over the coming few decades will allow you to retire rich (trust me).

Find yourself a good accountant, and they’ll make sure you can capitalise on all the tax savings permanent employees have to suck up.

Oh, and contract pay is almost always higher than permanent pay as well. Sometimes it’s easier for a company to higher a contractor, and for them it means they can terminate your contract far easier than firing a permanent employee.

Freedom

When you start as a contractor you’ll find missing a day – such as a holiday or sick day – is a clear monetary loss.

I realise that doesn’t sound like a pro. It’s definitely a con. Until you learn how to manage your mindset.

Once you get used to the financial freedom of being a contractor and being paid more, it’s up to you (with some negotiating) how many holidays you take.

A few months into a contract role I spoke with my manager and requested some time off. He asked how much time, and I said 3 months. He was a bit taken aback, but I assured him there would be little impact on the product development – I’d put in place a software architecture and segment of a web app, and trained a junior developer how to rinse and repeat the rest of the application. All was good.

After 3 months travelling around Australia with my dog in a Land Cruiser, I returned to work to find the junior developer had screwed everything up, which simply meant my contract was extended.

Being your own boss

I kid you not, being a contractor means you’re your own boss, even if you contract to one client.

How cool is being your own boss, and not some permo slave?

The cons of being a contractor

Here today, gone tomorrow

As a permanent employee you’re there for the long term, even if you’re rubbish at your job.

As a contractor, if you’re bad at your job you won’t last. Even if you’re good at your job, you may find yourself out of work at any time.

On one contract role I wrote a data management application which reinvented the company. The application one awards within the industry, and saved the company from a $17,000,000 5 year contract with a software vendor who had simply failed to write the application properly over the past 5 years.

The architecture was used to guide other project teams to develop better software from there on in.

A huge win, but do you know what happened?

Once my project was complete, my contract was cut.

The project manager solidified himself in the company, received all the praise, and for the next several years became the highest earned in the IT department.

As far as the company were concerned, I had simply done the job I was tasked to do.

They never realised how fortunate they were to have benefitted from my skills.

Accounts

I hate accounts.

Originally it was a lot to learn, and lots to manage, and I’m not very good at stuff like that.

Early on in my contract life I felt like I was rolling in money early on, but as the time drew closer to paying tax time, I felt I was clawing back money (especially on years when I’d blown money on expensive holidays or overspent on a house).

When I had a child I hated accounts even more. It may take one day a year to go through my company bank account and bang it out properly in a spreadsheet, but it’s something I’ve always put off until the last minute, and in the proceeding weeks been stressed about.

Paying tax sucks, and even though you pay more tax as a permanent employee, at least as a permanent employee you never see that money – it’s deducted before the money hits your bank account.

You also have to pay an accountant what feels like a lot of money, although a good accountant should save you more money than you pay them.

Oh, and finding a good accountant is harder than you may think.

Bad vibes from permanent employees

Let’s say Bob, Jane, and Freddy are all software engineers writing the same software.

Do you think Bob and Jane as permanent employees will think of Freddy in the same way as a contractor.

We’re fickle people, and it’s very easy to be jealous of other people in your team who you believe are earning a lot more money than you (which is the default assumption with contractors).

I was metaphorically smacked in the face with a big wet fish with this on my first contract.

There I was going about my job, with the same pride I had previously as a permanent employee, when my team leader learned I was younger than him.

It’s surprising how something like age can affect how people think of you, but as the team leader had assumed I was older than him meant a higher contract pay was justified. When he found out I was younger, this changed his outlook completely – he was angry I was younger and (possibly) earning more.

His reaction was bizarre, and from that moment he refused to involve me, listen to any of my ideas or suggestions, and when he wrote an email ranting about the situation but accidently sent it to me by mistake, he was reprimanded and had to sit in the naughty corner for the coming week (a desk in the server room).

Despite professional conduct on my part, after a discussion with the company manager about the situation, there was little option for me but to terminate my contract. For the company, that was the only simple solution to a bad situation.

When you’re a contractor, unless you work with lots of other contractors, permanent staff will see you differently.

Pros of being a permanent employee

Simplicity

If you’ve read the incredible perks of being a contractor – more money, more freedom – it may surprise you that today (in my forties) – I work as a permanent employee.

The reason is simplicity.

You do your job, you get paid, and you have no fear of being laid off at any time.

Simple life, and that matters.

If you’re happy with your pay, and your perks, and you’re not bubbling away with anger about lousy pay rises, then being a permanent employee is great.

Get on with your life happy in the knowledge your pension is racking up to support cruise ship jaunts in retirement, and get your head down and work hard for that promotion.

Lot’s of people feel proud to be a part of a company, which is something you don’t feel as a contractor.

One of my co-workers (who I went to university with), just had her 25 year work anniversary. I’m not sure whether I see quarter-of-a-century at the same company a good or bad thing, but I can’t ignore the pride she had from being such a big part of the culture. Something to be proud of, and for her she’s surrounded more by “family and friends” than co-workers.

That’s nice, right?

Benefits

There are many benefits you receive as a permanent employee which contractors either don’t get or have to pay for themselves.

If you take a sick day, you get paid for it.

When you take holiday, you get paid for it.

That means, you can enjoy your holidays, and enjoy watching Netflix when you’re sick without getting all depressed about losing a wad of pay.

You get Super (or a pension), and that has value and security a few decades from now – which matters.

You may have other benefits too, like medical insurance, life insurance, cycle to work schemes, company car (although rare these days), and various other perks.

Super

Never underestimate the power of a super fund.

True story – After Uni I worked a mere year and a half for an IT firm, and my pension contributions were a mere $6k. When I next checked the fund in my 40s, it was worth $65k (and grew the previous year at 14%).

Investing in your retirement (or early retirement!) may seem unnecessary now, but trust me – this can make the different between retiring rich, or retiring poor.

I also encourage you to consider investing in other ways, such as ETFs, and a mere $200 a month now will in time snowball into significant wealth.

Bonus

A bonus is a bonus, right?

As a contractor you won’t get a bonus, or even a thank you.

Training

As a software engineer you’re working in a very dynamic fast-changing industry.

When I started writing software I did so using the BASIC programming language, in days of pixelated blocky arcade games which were played by Neanderthals who also fought with rocks and sticks.

It’s crazy to think my career has spanned so many incredible changes in technology – even the invention of the Internet and mobile phones – and it will for you too (AI is one game changing example).

As a permanent employee, giving you training (and training costs $$$$s) is a significant perk to excel your career and personal development.

As a contractor, you’ll be too busy sticking to what you’re good at, which is what pays you the money, and very likely a decade or so down the line you’ll still be working on that old technology.

After all, as a contractor, you won’t want to spend your own money on expensive training courses, you’ll want to spend that money on fast cars and holidays.

What’s right for you – contract or perm?

Having read the above pros and cons of permanent or contract work in software engineering, what’s right for you, and why?

What have I missed, got wrong, or got right? I can only speak from my experience, so I’d love to hear your thoughts too!

Write a comment below!


Leave a Reply

Your email address will not be published. Required fields are marked *