Dear Junior Developer…

A letter to a young, inexperienced developer about to make their way up the freelance ladder

Sam Piggott
Combo
7 min readFeb 18, 2017

--

Disclaimer: these are not my hands.

Sam, Sam, Sam.

It’s 2017.

Right now, you’re currently working as a proficient iOS engineer with a knack for back and front-end development, working in Objective-C, Swift, Javascript — and you’re juuuust trying to get your head around Unity.

But let’s take a step back for just a sec.

Now it’s 2012. Big year for the UK.

London’s preparing itself to host the Olympic Games.

The Shard, known to be the tallest building in Europe, opens its doors.

And, greeted with the sighs of relief from millions of British taxpayers, Directgov shut down, replaced by the glorious GOV.UK.

And you? Well, you’ve just started hacking together websites for family and friends in your spare time.

You’ve also not long accidentally figured out that coding is literally your favourite thing in the world.

You’re cramming in Treehouse and Codecademy lessons in every spare minute you have.

…you’re even thinking about making it your full-time career.

But here’s the rub.

You’re about to make a really scary leap into the world of freelancing in an industry you have absolutely no knowledge of. It sounds scary, but it’s really not that bad. Just — please, please please take at least some of this stuff I have to say on board.

Trust me; it’s gonna save you a ton of headaches.

Whatever work you’re doing isn’t too important to take a break from.

Good news! You’ll find yourself doing web work for clients waaay sooner than you thought you would. Better news? You’re going to really enjoy doing it!

Bad news?

You’re going to accidentally work yourself to the bone. It’s your new favourite thing in the world to do, and right now, it might make sense to spend every waking minute becoming better at it.

But seriously, Take it easy. You shouldn’t be working twenty-four hours a day. Take time away from the desk. Stressed? Take a day off with Netflix. Go for a walk. Go for a bike ride.

Above all, don’t feel guilty about it. At the end of the day, if you come back to the desk a happier person, you’re going to be so much more productive than if you keep burning through line after line of code without a break.

Don’t brag about how busy you are.

No, really — for a little while, you’re going to find yourself talking proudly about how many hours you’re spending development. Dude — do you have any idea how much of a dick you sound when you say stuff like that?

Newsflash: Busy is the new stupid, and telling your friends and family you’re too busy to hang with them essentially says that you care more about your work than you do about spending time with them.

Whilst you might not intend it, it’s going to make them feel terrible, and you’re going to watch them distance themselves from you over the coming years.

It’s great that you’re loving your new-found job and all, but seriously, start spending your spare time away from that desk so you have other things to talk about aside from work.

Travel.

You don’t realise it right now, but all that Medium-reading is going to really take its toll on you. All those “best practices” posts, preaching the hours a freelancer should work, and how you should be shackled to your desk?

They’re great, but they’re not gospel. Take ‘em with a pinch of salt.

Being a freelancer means you can do your own thing, and I know it feels oddly dishonest to spend any time away from the desk whilst you’re on a client project; but do it.

I know you’re itching to work from New York for a while, so get out of the flat and board that flight.

You won’t look back.

Don’t do it for the paycheque.

Right; you’re going to go through a phase where you think you want to earn shitloads of cash.

Quick spoiler: you don’t want to earn shitloads of cash. Just enough.

The phase passes pretty quickly, but please just don’t learn stuff for the sake of money.

You’ll try and pick up Ruby on Rails in the vain hope you can start working on some big-boy backend projects. To start with, it’ll seem like it’s going great, and heck — you’ll even net a sweet client with a chunky paycheque from it!

Then you’ll realise that you’re not really interested in getting better at Ruby on Rails. Front-end was always more of your bag — and before you know it, you’ll have a poorly maintained, buggy codebase on your hands with absolutely no drive or passion to fix it.

It makes for a really miserable few months. Skip it if you can.

Do it for the love of the craft, not the love of the cash.

Joining a company isn’t a sign of failure.

Being a freelancer, a lot of people refer to your work as “living the dream” and a load of other rubbish, and you might feel a little bit elite — almost above those poor ol’ nine-to-fivers.

Mate; it’s actually going to get really bloody lonely.

Long hours at the desk with no buffer between you and your clients is going to really wear you down, and you’re going to ask yourself questions like, “Is what I’m working on making a difference?”.

You’re gonna ignore those questions for a good six months. Try to skip that. Face them head on, and be honest with yourself. It’ll help you realise you want to be part of a team and a greater mission.

(It’s actually the way you’ll go on to meet your future partner-in-crime, so it can’t be all that bad, can it?)

It’s not about what you’ve done — it’s what you do next that matters.

You’re going to end up joining a hella cool London startup called Dojo as their iOS developer — with barely any experience in iOS development.

You’re also going to cause a shitload of crashes in many of your app launches. Things get very buggy. You get very stressy.

When these happen, don’t waste time focusing on how bad the bugs are, or speculate on the damage that could have been caused.

Focus on how you can make it right, then do something about it.

You’re in the business of problem-solving; you’ll find you’ll end up enjoying crushing bugs anyway.

Get involved with the community.

Community events! Loads of like-minded individuals in a room talking about stuff they love.

Sounds great, right?

It is!

…but you’re going to be very bad at attending them to begin with.

Don’t put off going to these programming socials just because you feel like someone’s going to call you out as a bad developer.

I’ve got a secret for you. Sometimes, actually speaking to people for 30 minutes is more beneficial than spending six hours uprooting a bug on Stack Overflow. Other people have experienced similar problems to you, have new takes on what you might be working on, and might even be able to bring new stuff to the table.

And even better, you might even make a friend or two out of it.

Drop the ego, pal.

After a while, you’re going to find yourself working in a little team. This is going to mean that people are going to point out that stuff is broken on a regular basis. This is going to feel like they’re telling you you’re bad at your job.

They’re not.

Listen to them. Wait for them to finish. Take what they have to say on board. Got an opinion of your own? Don’t fly off the lid at them. Explain it rationally, and together, you’ll figure out a way that it’ll work for everyone.

It really is that easy. And honestly, it just makes development so much less stressful when you’re not at odds with your designer.

Finally — shave your head.

You’re not fooling anybody; anyone with eyes can all tell you’re balding. Mach-3’s your best bet for the job.

You’re welcome.

--

--

Sam Piggott
Combo

More than likely found in front of a screen. Making code courses over at CodeSnap.io.