Let’s get the embarrassing thing out of the way first: I did an MBA. Well, half an MBA. But I was simply misguided at the time, so I’ll let you in on a little secret:
Going into management isn’t the only way to get ahead if you’re a good developer.
Sounds obvious in hindsight, really. But, for the benefit of the guy on work experience at work (whom this post is dedicated to), and for anyone else in the early stages of their career, you can read on…
You’ll find, as a developer, that you can change jobs a few times early on in your career, getting payrises each time until you hit a pay plateau. This is the point at which you’re earning ‘market rate’. If you live in sydney, like I do, you’ll be scratching your head thinking ‘this isn’t enough pay to support a family - i need to do something’. At this stage you may think, as I did, that the next step is management.
But you may have looked around at management types, and thought they don’t all look like they’re enjoying it, shall we say? Running around from meeting to meeting, it doesn’t really look like the dream most of us have for our futures.
Many writers will give you their opinion on the path you should take. But your path will likely look very different to mine. We’re all unique after all. So, in that spirit, I’ll do my best to simply give you a few different options you can consider:
Contracting through a recruiter is a very simple affair: It’s basically having a series of 3 or 6 month jobs. You get paid a significant amount more (email me if you’re interested in gory details!), but you don’t get sick days, you’re expected to be very talented, and there’s obviously a bit of risk involved, with the possibility of idle time between contracts. Certainly worth looking into if you’re talented, and don’t have a wife or kids to support (or have some savings).
If you try this, I’ll give you bonus points for keeping in touch with all the cool people you’ll meet through your series of contracts. Contracting for a few years can do wonders for your network. Relationships matter for many more important reasons than your career, so make the time to catch up for lunch with ex-colleagues every now and again!
I’ve never done this, so won’t pretend to have much advice on this. But, if you haven’t got a wife/kids/mortgage you have to at least consider this. Even in Sydney there are lots of startup incubators around, such as pollenizer or startmate. Or simply self-fund / bootstrap and build a B2B SAAS app, Amy Hoy-style. I’m personally considering doing this when my current contract expires.
No, that’s not a mis-spelling. This is where you take on the mindset of an entrepreneur, but apply it internally at a big corporate. This is by no means second rate to starting your own business! The world has plenty of big companies that are overrun by disinterested people, and they really need passionate ‘intrapreneur’ types to shake them up for the better.
You may have to work at a few different places before you find one where you can flourish as this kind of person. You’ll be sticking your neck out - some places you might just get it chopped off. Stick your neck out anyway.
Here’s a good tip: If your company has a person in the address book with the title ‘innovation manager’ - shout them lunch and tell them all your ideas that could improve the company. Or simply, as I do, email some suitably high-up manager your suggestions for ways they could better use you time.
This is my favoured path for the majority of people.
If you’ve got the time, you can take on freelance work in the evenings to supplement your income. We all know that living in Sydney costs a fortune, so this can really help. If you do this, be careful to start off with smaller achievable projects.
I’ve found the best way to find clients is through networking, friends, and having a good blog. You may even find work through a freelancer website. When doing freelance work, be sure to split your work up into small milestones (say $1-2000 each) so they don’t run out on your bill, and be sure to send the client updates every few days on your progress.
If you’ve got kids/mortgage/whatever, and are chained with ‘golden handcuffs’ to a boring job that pays the bills - firstly, I feel for you, I totally understand. Your options are limited. But a really good option is to convince your boss to let you work 4 days a week - I’ve seen a few people do this. You could use the remaining day to work on a startup or side business, or on building a set of freelance clients that one day could support you full-time. For the sake of your sanity, try to get out of that rut.
Go to meetups! Find a couple that are related to your chosen language and go every time they’re on and make some friends. For instance, in Sydney there is Cocoaheads, SydJS, RORO, and others.
Also, keep in touch with ex-colleagues. It’s worth the effort to do lunch every now and again. Get out of your shell and be social!
If you’re still deciding what language you want to specialise in, make sure you choose one that has a good local community. It just makes lots of things easier in the long term.
Most of your mentors will be people you never meet face to face. They’ll be people like Seth Godin, Ramit Sethi, Patrick Mackenzie, Hugh MacLeod, Amy Hoy, and so on. Read their books, their blogs, their podcasts - soak it up. These guys (and gal) in particular are great. They’ll change your mindset for the better.
All this is predicated on you being good at what you do, but if you truly love it, that won’t be a problem, will it?
Go, choose your own adventure. Your career and workplace will mould your personality in ways you can only imagine. So don’t go into management unless you really want to - there are plenty of alternatives to try. Best of luck, Matt!
Thanks for reading! And if you want to get in touch, I'd love to hear from you: chris.hulbert at gmail.
(Comp Sci, Hons - UTS)
iOS Developer (Freelancer / Contractor) in Australia.
I have worked at places such as Google, Cochlear, Assembly Payments, News Corp, Fox Sports, NineMSN, FetchTV, Woolworths, and Westpac, among others. If you're looking for help developing an iOS app, drop me a line!