For those Attending a Coding Bootcamp
First, bit of background. I’m someone who taught himself how to build websites in the mid-90s. I did a Computer Science degree at one of the top universities in the UK, and I’ve been working professionally as a web developer for over 10 years. I’m not a big name developer, but I have a reasonably good reputation in the eyes of some people you may come across on social media.
I’ve worked with a few people who’ve entered the industry after attending one of the 3 month coding bootcamps, and I was around when my former partner attended one herself. I attended an end-of-course presentation day for Makers Academy, and was seriously impressed by what I saw. In the last 2 weeks, small teams had built things that outshone things I spend an entire year on at university.
People at these bootcamps come from a wide range of backgrounds, some are looking for additional training after university, whilst others are looking to change careers (and often it’s not a small change).
I’ve seen first-hand how stressful these courses are. You’ve invested a fortune on the promise of a new livelihood in just three months, you’re optimistic but are scared you won’t cut it. There’ll be days you want to go home in tears because there are things you don’t understand. Perhaps it seems like your peers are charging ahead, and you start to doubt whether you’re smart enough to do this (spoiler, you are).
The finish line isn’t the end of the course
If you fully understand everything you’re being taught, and can apply all the professional principles in just 3 months, as far as I can tell you’re a statistical anomaly. If you don’t understand something, it’s fine. There’s no way everyone’s understanding is going to develop in parallel, there’ll be things you get straight away and things you struggle with for years. If there are things you don’t understand at the end of your 3 months, don’t stress. You’ll get there.
This industry favours the newcomer
Technology moves fast, really fast. This means that people who’ve been around a while, are having to learn all the same things you are. We may have a slight advantage due to experience, but that’s offset by ingrained thinking and a natural resistance to learning yet another piece of tech. Once you’re up to speed, we’re all playing on the same level. You’re learning things from day one (basically everything to do with modern JavaScript) that have only been considered vital knowledge for a few short years (or less!). You’re probably learning a small selection of languages and being taught how to move between them, many developers only know one. You already know things that took me years to master.
Not understanding something isn’t a reflection of your competence
Every day I come across software that I feel is unreachably beyond my ability to understand and build. But it’s just been made by people who’ve focused on solving different problems. They started with the same basic knowledge as me, but pursued different goals. Code I’ve written myself, following logical steps and building up complexity, that ultimately seems unremarkable; if written by someone else, would intimidate me with how clever it is. I have to constantly remind myself of this in order to avoid feeling inferior. Don’t stress about maximising knowledge and understanding, just solve the problem in front of you. When you look back, you’ll be amazed at what how much you’ve picked up along the way.
I’ve gotten this far with only a partial understanding of the tools and technologies I work with, this is fine. Reading the documentation or looking up tutorials is a daily occurrence for me, and I don’t expect this to ever change.
You’re getting better education than has ever been available
A Computer Science degree is largely irrelevant for the vast majority of programming jobs. It was an interesting degree and i’ve benefited from some of the deep knowledge it gave me, but the number of times it has directly informed my work is essentially zero. You’ll learn more during your bootcamp and in the first few months of employment, than I did during 4 years of university.
But just because you’re benefiting from the expertise of those who came before you, don’t let this make you think that this makes you inferior in some way. The profession of software development is more mature, and more challenging than ever. Without the resources now available, even the most intelligent of us would find it impossible to get up to speed.
Ignore people who insist you need a passion for programming
I believed this, and i’ve been hired by people who live by this belief. But programming is no longer dominated by people who live and breath it. It’s a job, it’s okay to just want to earn a good salary. Some people want to do more programming in their spare time, many don’t. The puzzle-solving nature of programming means it’s going to be hard enough to leave work at work, don’t feel pressured into taking on even more mental burden.
You’re already more professional than most of us
Alongside actual development skills, you’re likely being taught professional and interpersonal skills. This gives you a massive advantage over Computer Science graduates who are rarely learning the professional side of things. I guarantee that your discipline for writing tests is far ahead of mine.
You have a great chance of being better at this than us
A lot of us fell into this industry by following the path of least resistance, based on our interests. You’ve chosen it, that means you’re motivated.
But an important heads-up
Development work never lets up. It’s mentally exhausting, and there can be real physical effects if you’re not careful. Make sure you get rest when you need it, try to leave work at work. If you have good posture, don’t lose it.
Good luck!
The Passionless Developer
For the longest time, a vocal opinion I would hear frequently was that good developers need to be passionate about programming. I’d be exposed to this opinion from my peers, from those senior to me, f…
Optimising Your GraphQL Request Waterfalls
As a technology, GraphQL is starting to gain traction. There are server implementations in a good selection of languages, and client support isn’t far behind. If you want to build your own GraphQL ser…