Paddy’s Day 2011 has come and passed. This Irishman did not partake in the festivities having pushed his body to the limit in the week previous. The day off made me to think of St. Patrick Day’s past where I would be quite reasonably drunk at a quite unreasonable hour. March 17th for my final year studying IT in NUIG comes to mind as an exception since I spent most of the day in the computer lab working on my final year project and repeating to myself the mantra “I am never, ever going to work in IT”.
Ladies and gentlemen of the class of 2011, if I could offer you only one tip for the future, this would be it:
As soon as you leave college, join a startup
There are two well-worn career paths in Ireland for IT graduates, you either
- Join a big company (often times in financial services or network solutions, both soul destroying) or
- Go into academics (which can be interesting but doesn’t prepare you for “real world” coding)
I, myself, did the former, the best hackers in my class probably did the latter but, for whatever reason, none of us joined a startup.
So why should new fledgling hacker’s join the tipsy topsy world of web startupery? Well here’s just a few good reasons:
You’ll work on the entire stack. Forget about job descriptions with statements like “we need somebody to keep our legacy invoice software up to scratch! We cheaped out on development from the beginning so now we need somebody who can sift through the application and make sense of variables like $lieb_dir_2!”. When you join a startup you’ll get exposed to everything from database configuration to SEO optimisation. Don’t worry about specialisation at this stage in your career – you’re just getting started.
You have to hit the ground running. Startups move fast and no one is going to hold your hand once you join. You’ll meet the team and then get your hands dirty by digging into the code like some kind of special forces commando coder. It’s tough and often relentless but at least you won’t be watching the clock and reading every article on football365.
Instant responsibility. Titles don’t matter in startups. You’re responsible for the code you write – not your team lead, not your manager, just you. Pessimists (and bad coders) will see the down side of being held responsible but you’re a hacker. You’re looking forward to praise arriving on your doorstep – not your team lead’s and not your manager’s.
Choosing your technology. In a startup you’ll have the power to do things your way (which in your mind is the right way). Wanna use the latest framework to make ajax calls all that easier? No problemo! Don’t want to write hacks for the turnips still using ie6? Of course you don’t! If you want to have any say at all in the technology you develop with, startups are your only man.
Getting things done and getting them done right. I hate redtape – the big long papertrail which somebody has to sign off on to make sure that we know who to blame when things go wrong. Working with a decent mentor in a startup will teach you the fastest way to get things done and the best way in which to do them. Interestingly, you’ll also learn what to do when you have to choose exclusively between the two.
Learning outside tech. As Rob Walling says the most important factor to a startups success is whether or not somebody is willing to pay for it. Technology doesn’t really come into the equation. Rob says: sales come first, marketing second, aesthetic third and functionality a distant fourth. Just like being exposed to the entirety of the stack, you’ll be exposed to the entirety of the business when you join a startup: sales, marketing, design – pretty much everything. When I came out of college I pretty much hated those first two (I listened to Billy Bragg a lot during my studies) but I’ve come to acknowledge that they’re of the utmost importance. Join a startup and you’ll see why.
Community participation. If your startup is lucky enough to get into accelerator programmes such as NDRC’s Launchpad or DCEB’s Hothouse then you’ll be surrounded by other young enthusiastic coders who you can share your hopes and dreams with. Having a community around you that you can relate to can really help reaffirm belief in your product when your enthusiasm wanes or you’re just having a bad day.
Exciting, fresh and invigorating. Girls don’t date guys who write accounting software.
The recession means that startups are plentiful. People forced into redundancy have had the guts to go it alone and those creating webapps are going to need web developers. Being a graduate means you have the enthusiasm but not the experience, which means you should come cheaper from someone a little more accomplished. I don’t think there’s a good place to currently link graduates to startups but keep an eye out on siliconrepublic.com (its where I found my latest startup).
There are, of course, downsides to joining a startup versus going a more traditional route. The pro’s far outweigh the cons but in the interest of fairness:
Less job security. Startups can evaporate into thin air in the matter of weeks which means that if you’ve got responsibilities like a mortgage or kids then you need to choose your startup wisely.
Less pay. Most startups won’t be able to pay you top dollar since they probably haven’t launched yet, never mind become profitable. Be sure to ask for equity (note that this is not the same as stock options!) before signing on the dotted line.
Working alone. There’s a good chance that you’ll have to be hugely autonomous in your role. This means that you can be your own boss/taskmaster for a good deal of your job. The downside is that you’ll sometimes be unsure of where you stand on a development roadmap.
It will become your life. I really didn’t want to write this point as I fully believe that you should be able to do the job in 35-40 hours per week and anything more than that is counter-intuitive. The truth is that good startups won’t ask you to work 50-60 hours a week but you will have weeks when you have to pull these herculean shifts.
So trust me on the startups…
At this stage in your career you can easily dedicate the next five years to working in startups and gaining great experience in tradeoff for a lower salary. Its a real shame that companies like Google and Facebook carry out next to zero development on our shores and, until they do, every ambitious CS graduate out there should strongly consider applying to a startup.
If you’d like to discuss this topic further, please give me a shout on twitter (@modernprogrammR).