Sure, you can pay $10k for a 10-week intensive course taking you from zero to hero. You can also take college classes to get a 2 yr degree and walk away $40k in debt. But with all the free training and learning sites and programs to choose from, why not just build your own bootcamp?
Developer bootcamps are placement agencies looking to gather prospects for their customers – companies looking to hire new, fresh, (probably) cheaper, ambitious developers, DBAs, and QA. Not only do these companies feel better about hiring a bootcamp prospect because they went through the technical training provided by the bootcamp, these companies have a somewhat steady stream of new recruits to choose from lowering their costs for recruitment and marketing. Nothing is more appealing to a bootcamp graduate than somewhat guaranteed job placement (at the very least an interview), so upon “graduation” the first companies they turn to are the ones sitting at the job fair tables. It’s win-win-win.
Colleges and universities provide learning environments tailored to people devoted to studying, lectures, labs, and then eventually finding a job. Get a 4 yr degree from the UofM in computer science and you’re looking at a much broader range of career choices. However, you’ve likely not spent the last 8-10 weeks doing nothing but coding and building every day, so you’re an entirely different sort of prospect to a future employer.
So a bootcamp works out better for a short term schedule than college, but what if you have technical proficiency, with very little to no job experience to back it up? Do you really need the same bootcamp regimen that an air traffic controller desiring to become a .Net developer would need? Probably not.
Bootcamps are beneficial for students looking to make a big change in a shorter timeframe, and beneficial to companies who hire them because they know how their new employee has been spending their time for the last 3 months. But they are expensive, and likely require travel and lodging outside your city of residence, or have a scheduled cadence that doesn’t line up with your plans. (many have their 10-week course once every few months) Colleges and universities are a huge investment in time and money, and while you can take the classes online to speed up the timeline, you’re likely not going to be coding and building on the latest and greatest in Java or .Net but instead learning about theoretical constructs of machine based learning, or C++. Also, you can’t get a job 10-weeks after starting a CS program at the U. Maybe you can, but it wont be the same job as a bootcamp graduate would get.
What if you create your own bootcamp? Some of the benefits would be:
1 – Design your own courses specifically tailored to what you need to know and skip the intro’s
2 – Create your own timeline for graduation
3 – Build a portfolio with applications and projects you know to be the most attractive to potential clients and employers, not just the ones resulting from the class project(s)
4 – Show initiative and the ability to be a self-starter
5 – Not pay $10k for it all
The interview question
But what are the drawbacks? First of all, a potential employers first question in your interview will be, “so, what have you been doing for the past x months?” You don’t get to say, “I attended and graduated from Prime Digital Academy”, or “I have recently completed a CS degree at the U”.
Your answer is simple – say what you’ve been doing. “I have spent the last 6 months learning and building this portfolio of apps and websites” or “I have been focusing solely on coding and building several AngularJS sites with Rails API backends, and here it is on my phone. The source code is available on Github and Codepen, the API is running on Heroku..etc.”
First, you obviously need to have a source of income or savings. How to manage this is difficult, but the more time each day you have for coding the sooner you’ll be to getting a job. Its that simple. There may be temptation to take a part time job or a full time job that is “easy” and then spend the rest of your time learning, but realize you’re being distracted and presented with the option of not completing your goals because hey, you’ve already got a job… Also when you update your resume and show you’ve had this job that has nothing to do with programming for a couple years, but now you want to be a programmer how is that going to look?
Second. You have to find motivation to learn and code for as long as you can every single day. Not just when you feel like it, or when you’re sharp, but every waking moment not taken up doing something else important (like writing this blog post…?)
Third, find a mentor to help fix bugs and do code reviews. I had a mentor from Thinkful.com and in addition to the motivation our weekly meeting would give me, Claudio from Argentina introduced me to dozens of resources and helped me understand basic concepts of OOP. We did a weekly skype call for two months and it was invaluable.
How do you learn to play guitar? Practice everyday and play it in front of people who also play guitar.
Fourth. Do it for real. Don’t just go through the motions for the sake of crossing something off a list, you have to remember this stuff. Choose to learn from meaningful content, and make something special out of your projects. Make it count.
Be less concerned about getting a job and more concerned about being able to do the job once you get it.
Its not the same as going to a bootcamp and its certainly not a replacement for getting a degree. But what employers and hiring managers want to know, more than anything, is what you are going to do for them. They will pay you money, how will you make them (more) money in return? If you can show them the code you have written, correctly answer technical interview questions, and show them several applications that are interesting, highly functional, and showcase you as a developer – you have just as much of a chance at getting that job as a bootcamp or college graduate. “You won’t get 100% of the jobs you don’t apply for”
Generally speaking, some developers with 5, 8, 10 yrs experience haven’t spent much time coding in the recent past (important: many not all). Unless you’re working at a startup or a small to medium sized company, you just don’t write a lot of code. You spend a lot of time in meetings, working through bugs, doing small releases, sitting on conference calls, etc. The larger the company the fewer number of iterative releases in a year, because there’s more managers managing the risk of a release to customers. Its nowhere near as intensive as a bootcamp where you literally read and write code for 8-10 hours a day. The more workplace developer experience you get, the more likely you’ll be asked to manage, the more you manage the less time you spend coding. Again, generally speaking…
More experience means higher salary expectations. If you’re newer to the world, you won’t be (shouldn’t be) expecting a high salary. While an employer is aware they will “get what they pay for”, if you can show you can deliver, it may not matter as much that you have 1-2 yrs or less of experience. Also, you’ve just shown them you can take initiative and are incredibly self-reliant (you just spent the last 6 months kicking your own butt) and that goes a long way.
Ok great so…
What does the “Bryce Blilie developer bootcamp” use for curriculum and course materials?
FreeCodeCamp, Udacity, Thinkful, Lynda.com (free premium with your public library card), Sitepoint.com, CodeAcademy.com, Codeschool.com, hundreds of tutorials on Youtube,. Then there are the vendor’s help documentation and guides, countless blog entries and finally – the almighty stackoverflow.com
Also attend meetup’s and find a mentor. Keep your eye on the job boards and find out what customers are paying for. What are the hot projects and what are the technology keywords consistently appearing? Learn those, or be familiar at a minimum. Note that not every language is going to return a financial investment on your part.
Focus on the end goal everyday. Realize there’s more to know than you will ever know (so don’t worry about not knowing everything!), and remember it’s your confidence, not just your experience that will land you that dream job.
Do everything you can to build up that confidence. Have fun!