Before I knew what a crazy ride 2020 would turn out to be, I had already decided to jump off my own deep end by quitting my job, learning to code, and changing careers to programming. I submitted my notice in January and started attending a three month coding bootcamp, Code Chrysalis, from April. It was a great experience and just a month after graduating, I was able to land my first job as a software engineer!
That being said, looking back, I didn't quite know what I was getting myself into. I thought I'd done my due diligence: I'd gone to the school's open day, spoke to former students, and searched for articles online about the course. Even so, there were some things that I wish someone had just been there to tell me, 'Hey, this is what it'll be like. Just a head's up.'
So this is my article to you, prospective bootcamp student, so that you can be mentally prepared before you start. :)
1. Prepare to spend 90% of your time coding.
This isn't a joke. Bootcamps are there to push their students hard and get them to where they need to be to be employable in a seriously short amount of time.
At my bootcamp, they would give us small projects that would go over a concept we'd learnt just that very morning, and we would be expected to submit that by 9am the following day. Most nights, we would work until at least 10 or 11pm. Some people definitely worked longer. Don't get me wrong -- I could sometimes squeeze an hour or two here and there to relax, but there was always studying to be done. In my 'downtime', I'd be reading articles about JavaScript or watching Udemy courses. That's just how life was for those three months.
In addition to daily projects, sometimes there would also be bigger projects that spanned 2 to 3 days. There were a mix of solo and group projects, and they always felt very stressful because you are basically told, 'This is what your end-result needs to be, now go and make it.' Of course, tutors would be around to ask questions if you were seriously stuck, but there was a very firm emphasis on 'the struggle is part of the process', and you wouldn't always get the answers you wanted. Which leads me onto the next point...
2. The teachers won't have all the answers you need.
I guess my experiences at school and university gave me the idea that people who 'teach' you usually know all the answers to your questions, but for my bootcamp, that wasn't really the case. The thing is, software engineering is so broad and changes so quickly that it's unlikely any one will ever know everything about everything. And once you get to group projects where you have freedom to choose your tech stack, they're even less likely to be knowledgable. So you spend a lot of time stuck, unsure what to do, clicking around in the docs, making slivers of progress until you finally find yourself on the right path and the fog starts to get a little clearer. (And then you repeat, again and again.)
What's more, bootcamps try to cultivate an atmosphere of self-research ('read the docs!') and autonomy. These are definitely important skills as software engineers, but no one gets anywhere in life solely by themselves, and this mismatch (feeling like if the teachers could just fill in that one blank, you'd be able to make sense of everything) can be pretty frustrating at times.
This sounds like common-sense, but I feel like it bears saying because I definitely felt at times like I would have liked a bit more help...which leads us to no. 3.
3. You will be frustrated. A lot.
Yeah, no way around this one. You will get annoyed, many, many times.
One of the hardest things for me during the course was doing a lot of the daily homework tasks in pairs. Don't get me wrong--I loved my fellow students. But trying to read docs, reason about code, think and try out different coding approaches, debug specific areas... all while someone else is simultaneously trying to do the same thing, but with a different approach that doesn't quite make sense to your way of thinking? It's really tough. I often felt like I just wanted a bit of time to really look at and understand what the code I was seeing was by myself, before trying to talk to someone else about what we should do to solve the problem.
Even if the above doesn't sound like a big deal to you (and it might not--I'm pretty sure my personality played a bit role in how challenging I found that aspect), you will be frustrated by other things.
- Can't figure out why all your API data is coming back as unresolved promises?
- CSS on your site looks like crap but you have no idea how to make it nice? And to top it off that one person in the class made theirs look amazing?
- Got told you have 48 hours to make something from scratch using technology you've never used before to present to class, and nothing is going well?
- Spent the whole day trying to set up your RESTful CRUD API with Express/Knex but NOTHING IS WORKING?!
Not being able to do something is frustrating. And you'll go through that feeling a lot. ;)
4. Rely on your fellow students.
You're all going through it together, and you are definitely not the only one who 'can't do it', even if it seems like that. The students on my course with me became amazing friends by the end, and I would have been a lot more stressed if I couldn't have shared my complaints, as well as my wins, with them.
5. It's okay if you don't understand everything.
Bootcamps are a lot of material covered in way too short of a period. Try to remember it's okay if something doesn't click straight away. Sometimes our brains need to revisit a topic a few times to 'get' it, and hey, maybe some things will always be hard, and you'll always need to check the docs for the right way to do it. That's okay -- even if other people in the course seem to have no problem, don't worry (easier said than done, I know). It's like they say: sometimes they'll be ahead, sometimes you'll be ahead, c'est la vie. You'll have time after the course to come back to the tricker parts anyway, so if you've tried but it's just not clicking right now, let it wash over you for now and try not to stress too much.
In Summary...
Going to a bootcamp was the best choice I've ever made, and I love my job now. Despite what I wrote above, I loved my course and made lifelong friends. But it's also important to know what you're getting yourself into and to have realistic expectations.
Feel free to reach out to me at @pollyj_
on Twitter if you have any questions!
Top comments (7)
i went in expecting to put in a lot of work and i was still somehow surprised at how much work it was, haha. especially between blocks, your weekends will be spent playing catch up for the coming weeks.
Yes, exactly how I felt! I'd actually even asked the question to a former graduate of the course about how long he worked every day, and I was still surprised to actually find myself working that long as well. I think everyone gets told it but even so.. going through the process I still felt like it beared saying again!
Wow, that's so honest I feel I really learned something feel, and actually feel better about when I'm struggling (self teaching). Thank you for this ❤️
No problem, Agata! I admire you for doing it alone, not everyone can! I know I for sure wouldn't have had the dedication to make it if it was just me. There are a lot of self-taught devs in the Twitter sphere though, so I'd encourage you to reach out on there if you feel overwhelmed! It's so easy to feel like 'I'm not clever enough for this', but that's absolutely not the case and one day... after a while... it will click. :)
Are you reading my mind? 🙈 I am really struggling, because I need more structure and I learn best in either 1-1 or classroom environment, and it's hard to achieve that when you're an adult working full time and only chipping away at the problem here and there after work. I'm really really burnt out at work as well (even admitting this makes me feel uncomfortable) so managing time and energy is even more important and even harder. And every mistake or hurdle in my self learning journey feels a lot worse when I feel tired and frustrated at work/in life than it does when I'm refreshed and hopeful. I hope the click comes and I hope it makes a bloody loud click to announce its arrival! 😁 Would you be able to give us here a list of 'absolutely must learn' or some projects or problems that really taught you something useful? I think having to decide what to learn and how to use it is a biggie esp. when you add to imposter syndrome and decision fatigue :)
// because I need more structure and I learn best in either 1-1 or classroom environment
This is me too; I'm very fortunate that I was able to quit and take a course. I can only imagine how much harder it must be to juggle everything alone! Remember that what you're doing IS hard, and you will make mistakes, and that's okay. Probably you'll have a lot of days where you feel like you made no progress at all.. but even trying to solve a problem is experience that'll help later, even if it feels useless right now. I was lucky to have my classmates, but my partner actually went through a couple of years solo learning, and he went through the exact same as what you've described above. I don't know if it's any consolation but you're definitely not alone in your journey. Try not to be too hard on yourself (:
// I think having to decide what to learn and how to use it is a biggie
Totally agree.. then you get stuck in tutorial hell and you've watched/read a bunch of info, but still stare at the blank page and have no idea what to do (or is that just me? :P) What kind of development are you interested in? I'll make a list!
ps I saw you're from north England, that's where I'm from too!
Well, at the moment I am aiming for web development, although my ambitions go a little beyond that :) Long story, I just feel like there's a lot to do in the industry and I also feel like I have some things I could bring and would enjoy doing, because of who I am and how I work.
Im claving away in Sheffield, but kinda itching to move, just don't know where my next stop would be and obviously I'd need to find work 😂
Where are you based?