Allow me to start with the following:
- I am a software engineer with 8 years of professional programming experience in C#.
- I am a mom to a sweet toddler, a wife to a wonderful man, and a father.
- A speaker, content creator, and a person who is constantly curious to learn and grow in all aspects of life, personal and professional.
At the beginning of 2020, I had the crazy idea of quitting the job that I had for 8 years, with the goal of learning something new, I set my mind on learning web development and I decided to enroll in a coding Bootcamp.
I am the host of the Holistic Developer youtube channel where I share my experience in software engineering as well as my journey in the tech industry and I am amazed by the number of comments and questions I get asked on a regular base:
- Why an experienced software engineer join a Bootcamp?
- Is it worth it if to do a Bootcamp if you know how to code?
- Is a Bootcamp a necessary investment of your time and money?
- Why? You know how to code and you could learn by yourself?
- You have a CS degree and 8 years of experience, why do you need a coding Bootcamp?
I thought, well if I create a video with my reasons the questions will be answered, so I did exactly that, but it still does not seem like it is being accepted. To be honest, there is a certain stigma about it and I want to address that in this blog.
First, these are my reasons to attend a coding Bootcamp:
- Time
- Structure
- Curriculum
- Accountability
- Networking
Let's start from the beginning, as I stated in the intro of the blog I am curious about and try what I can to continuously improve as a person as well as a professional while enjoying my family and life and with the massive amount of technology that we have to keep up on regular basis is not an easy task. I have tried multiple approaches(after work):
- take in-person classes twice a year
- take online classes
- watch youtube tutorials
- read tech and productivity books
- attend tech meetups and conferences
- calendar block time for continuous learning
- etc
All of these obviously resulted in new knowledge, but it was never enough, the learning curve was not as steep as I would like, I was constantly feeling that I am way behind and there is so much more that I need to know, experience, and try. That constant need for new knowledge and lack of time made me take the decision of quitting my job and take time to focus on learning new things that I have not tried yet. At that time, I did consider learning by myself, after all, I am a seasoned software engineer, I am capable of reading the documentation and learning that way, but I also knew myself, I knew that I will be overwhelmed by the number of things I can learn and get excited about a bunch of things and jump from one thing to the next.
I needed something that is well-defined and structured. Also, I needed something that will keep me accountable, being a parent and having the time I would spend it all playing with my daughter and let the learning for the next day, so I wanted to have something that will enable me to balance my family and my learning experience.
Going back to the same reason as being a parent I needed to save time, I wanted to learn something useful in a timely matter and having a good curriculum allowed me to save time.
Originally, I intended to do an in-person coding school, but with the pandemic happening, everyone's lives were affected and we all had to accommodate to our new current reality, there was a new reality and I had to quickly course correct. I already quit my job(there was no going back) with a goal of learning something new and in-person, but that was no longer an option. I had no choice but to enroll in an online coding Bootcamp.
Despite the stigma about an experienced software engineer doing a coding Bootcamp. I am happy with my decision. I learned a lot thru my journey. Was it all perfect? No, it was not actually far from it, but today I know more than I knew when I started this journey and it is all worth it to me.
There should not be any stigma, especially when it comes to learning, if you want to learn, do whatever works for you to achieve that knowledge. When it comes to programming, the fact that someone has experience programming does not mean that that person knows it all and there is nothing new to learn, in fact, you become better with continuous improvement.
You can become a great software engineer in many ways. We all are unique in our own way and that is true when it comes to learning too, we discover ways to learn that work for our circumstances, and there should not be any judgment about how someone learned to code as long as that person gains the needed knowledge and skills.
A programmer should not be judged based on the way he or she learned to code! Did those skills come from being self-taught? or from a coding Bootcamp or from a university? It should not matter how, as long as that person can do the job and solve the task programmatically.
Top comments (18)
It's kinda weird, I'd say. During your journey, didn't you have the opportunity to learn new tools/languages? Was learning new stuff difficult? Structure and curriculum both mean the same thing I'd say, and I get that it's cool to know how and what to learn but in terms of time, accountability and networking I don't think so. I don't have kids so I can't really speak about that either. After all, there are some brilliant courses out there that could very easily beat most bootcamp curriculums and I'd say it would take a lot less time too.
The most interesting part is how you mentioned networking. Have you not networked with peers so far in your journey? 8 years is a lot of time, after all, so you must have met at least a few web devs or people that can introduce you to such people?
I did have the opportunity to learn new skills and there are really valuable, they helped me to grow technically, but that does not mean that I know everything about programming.
Learning new stuff for me was and is not difficult, the issue is the fact that if I do not apply to practice it is fast forgotten, and sadly what I was interested in learning and I was learning was not directly applicable for my job. For example, I am really interested in machine learning and I did a few courses I had a decent understanding of it, but because I did not use it at work it was not growing anymore, you will say why not apply it to personal projects? valid point, when you have a family, a child, and a demanding full-time job, personal projects do not get the attention deserved, they are left for the next day and the next day priorities change, because at work is a new project that needs all hands-on, etc.
Trust me, when you become a parent your time will be one of your most valuable assets and you will try to do anything possible to save time and energy.
What I am trying to say is not that I would not have been able to learn what I was interested in, I would definitely accomplish that, my primary factor was time and energy saving. I agree that there are a lot of great courses out there that are awesome, but I also know myself that because is a self-paced course I will leave it for the next day and the new day might result in shift priorities.
In regards to networking, I have a decent connection with a lot of developers, I might add probably much better than any programmer, and I am not stopping here, I am always looking for growing my social capital.
I hope this makes sense.
When you put it that way it makes sense tbh, as I said I don't have kids so I can't relate at all. Regardless, if you know what you're doing no matter what it is you're doing you'll end up where you want to get.
It's fascinating how you're documenting your journey, pretty sure it will inspire moms like you to follow their dreams despite the hardships! Good luck :)
I only hope that more people have the support and opportunity to follow and try to fullfill their potential. Thank you!
We all learn differently but if it were me. A coding bootcamp would be a complete waste of time and money. I have a 2 year old daughter and baby on the way so not being able to work on any side projects is a poor excuse. (Not trying to be rude) You definitely do have less time but with better time management im sure you could. Myself I have to work on my side project when my daughter is napping or after she goes to bed.. I usually code early in the morning before work or between 9pm-12am. Im trying to startup a business and code its tough but you definitely can do it.
I hear you and it is probably poor time management on my side. I wake up at 4 AM spent time on reading or learning something new until 6, at that time I need to cook breakfast for the family, during the time my daughter is napping I am doing household chores( cleaning, laundry and or cooking and obviously work).
I would like to hear how do you manage everything so you have time for projects?
Do you ever sleep? (not trying to be rude)
I admire your dedication and I hope your startup will be successful.
On the weekdays I wakeup at 7:45am and get ready for work. I work from home and my wife works opposite schedule as me so when im working she’s able to watch our daughter. For lunch I take an hour break so from 12pm-1pm im spending time with my daughter and make her lunch. I get done with work at 4pm so after that I usually clean and watch my daughter or go to the store if we need food. 6pm my wife makes dinner. 6pm-9pm we usually watch our tv shows if theres any on. My daughter usually goes to bed around 9pm. So from 9pm-12am sometimes 1am im working on my project. Usually during that time I try to stay focused so no social media just coding. Weekends are a little different. Saturdays I wake up at 6am and start cleaning the house for an hour or 2 and watch my daughter through the day. My daughter usually takes a nap around 10am-12pm or 2pm-4pm so im usually able to code for a few hours. Weekends I stay up pretty late 9-2am coding. Most of my time is coding late at night haha
Hey thanks, I’m just hoping I can finish this project haha its been a dream of mine to own my own business. If it fails I’m gonna keep trying so :)
Thank you for sharing how you balance everything out, it makes sense and I can tell that you are really committed to what you want to achieve. I am curious how was it before the pandemic and working from home.
I was losing 3 hours on my daily commute to work, and that time is really precious. Now that I work from home, I spend that time on learning and on my projects.
Honestly working remote before the pandemic and even after hasn’t affected me at all luckily. I recently started a new job but my previous employer was totally against working remote but when COVID happened they let us work remote and they loved it. If I had to commute 3 hours a day to/from work I would look for a new job :O that’s way too long.
I feel you. A month ago I started my new job in a really nice company before that I spent a year learning. Last year I completed around 48 courses including records from bootcamps related to web development, I got like 12 certifications and I read 8 books of Software Engineering. For me it was like job working learning everyday 8-10 hours. Almost every developer that knew I was doing this learning marathon told me that I will be ending up, over qualified and not specializing in anything.
My personal experience is that it is worth to spent some time updating your skills and updating your tool set. From bootcamps I learned a lot about new terminals, new libraries, new ways of doing setups of things that I was doing the hard way. I realized that I was working with primitive patterns. I realized that things that didn't have names 12 years ago. Nowadays, these ideas have been conceptualized. Last week it happened 3 times that in a zoom meeting while sharing my screen people was asking why my vs code setup was so cool, what plugins I was using, why my terminal looked super cool, what keyboard shortcuts I was using to move in the editor. It feels nice when you can teach other cool efficient ways of doing stuff.
Two years ago I was using sublime text, I didn't use ESLint, I didn't use Prettier, I was solving conflict issues manually, I was committing trailing white spaces. I was programming like it was 2009. Because I was working in a project from 2009 with LAMP and JQuery. I was having trouble keeping up with new technologies. I believe my problem was that I never update my skills, yes you can use google and go to stack overflow everyday but that is different from talking to people and listen to their stories about new technologies or why they recommend this or that, or giving a try to test new technologies.
Having this learning year helped me to solidify, correct and get even deeper understanding of my work experience. With my new knowledge, I have found new insights of situations that happen many years ago. I feel super comfortable talking in meetings I realized that a lot of developers have not read the books I read.
One of the biggest problems that we as developers have generally is that programmers don't want to change their technologies and tools. Or their way of doing things I believe we have very little openness to adopt new technologies in our industry. I believe that we should ignore dogma and just pick whatever tool work better for every specific situation. Sticking blindly to any technology or framework is hurtful to our projects.
My ultimate goal is to find a job that that I will enjoy and that will provide me opportunities to grow, but first I have to have more marketable skills. That is one of the reasons I decided to take time off work and focus 100% on learning new skills and you are correct, we are humans and we easy get comfortable, if we find something that works we will keep doing it, but everything is changing and we have to update our skills, tools and practices in order go adapt to the new changes.
I really appreciate your comment, I can relate to what you have been doing.
Coding bootcamps are a great way for a novice to learn. There's more to it than programming but full-stack developer, problem-solving are few things to keep in mind.
You would want to build up your skills and have many to one. Online learning is endless and more common than university. Google is going the way of training computer science without the school from Coursera. Where I worked, we had a potential hire with a PHD in computer science but couldn't create code however, we did hire a person who came from a coding bootcamp and was exceptional at coding. When I wanted to learn a new programming language I would do a coding bootcamp.
I completely agree with you, having a more conventional way of learning is not an indication of your programming skills.
No, you don't need some bootcamp. What you need is: stop reading that you need this kind of stuff to "know all the most hyped stack", probably this will help you with this "impostor syndrome". Really, I'm trying to be honest and direct woth you. I'm pretty sure you are a good developer, come on, you have 8 years of ex. I'm pretty sure you rock. Anyway, don't let all this "marketing shit" get inside your head.
Wow, thank you for your honesty.
I would like to hear your thoughts on the matter. Let's chat about it.
I get that someone completely new to software as a whole won't just pick up a bunch of papers and specifications and go for it, but after some years in the industry it just seems faster to do it that way than something as time-consuming as a boot-camp, no?
It depends on your style of learning. Some documentation is great like React documentation and it is easy to learn and understand it and some documentation is really dry and hard to understand. If we talk about learning one thing, one documentation that is dry it is manageable, but when it comes to learning something like full stack development that has many flavors, trying to determine what to learn and learn it in a correct order might be challenging, specially when you have limited time and energy.