For Those Who May Follow the Same Path
DevBootcamp End + 1 Month
For those reading for the first time, start here.
The search is complete. I have found a position at an amazing company and will continue to learn now as a professional software engineer. I am delighted beyond words.
If you, Dear Reader, are thinking about taking a similar road — joining DevBootcamp or a similar program — then there are a few things you should know.
Do not make the decision casually. Even as the bootcamp-style programs are becoming better known, the decision to go remains a huge risk. Go because you are consumed with software development and want nothing else than to make programming a huge part of your life. The transition can be brutal at times. Only a complete love for programming will sustain you through the hard times. As much as the marketing for the bootcamps makes everything sound like a breeze, in reality, the experience is extremely trying. And the job search afterwards? It is an emotional roller coaster that can last for a number of months if not longer.
Do not show up as an absolute beginner. Let me reiterate. Do not show up as an absolute beginner. Many programs claim to be for the absolute beginner. In reality, the most successful individuals have spent months (if not years) preparing on their own to make the transition from amateur to professional. If you have not already gone to great lengths to learn on your own, you will suffer. I will leave it up to you to decide whether you are making a bad decision by signing up.
Beware the growing pool of junior developers, newly minted by the various bootcamps that are sprouting up across the country. Finding a position as a junior developer was hard when the bootcamp-style programs first started, much more so now that the market is quickly becoming saturated. Keep this in mind.
If you are not fazed by the risks, then with the right preparation, the right motivation, and the right amount of discipline and drive, DevBootcamp will help you dramatically accelerate your learning curve, introduce you to a community of like-minded individuals, and help you make the leap.
The End of Nine Weeks
Week nine. Day five.
The biggest surprise after nine weeks is how strongly I feel about my peers at DevBootcamp. In less than three months, I have grown quite fond of my fellow classmates and will miss their company as we all continue our journey into the software world looking for engaging work on our own. I have made more meaningful connections in the last nine weeks than I have over the last few years. That has everything to do with the intensity and the high quality of the learning environment at DevBootcamp.
Tonight at our small graduation party, I was engrossed in a conversation about Lisp, compilers, and C data structures when it suddenly struck me: I am with exactly the people with whom I wish to be. I have found a community whose members deeply love the same things I do — software, language, craftsmanship, and engineering. I feel for the first time my life is nearly perfectly aligned with who I am as a person. And in this community, I can be my full self. That is a wonderful feeling.
At hiring day today, we had three hours of eight-minute interviews and were able to quickly determine with whom we wanted to continue a conversation. It was merely the warm-up for a search for the perfect fit. Over the coming weeks, I will be searching for the right company to start my professional software development career and already have a good start on what that might be.
For now, this will be the penultimate post as I focus my efforts on finding the right position. Once I have a tangible direction, I will post once more when the time is right and thereby conclude this blog.
Thank you to my readers, my many new friends, and the fine people at DevBootcamp who have created a remarkable community.
Week nine. Day four.
The internet has given me so many great things. Today, our team gave something back: a new toy for the internet. In short, it’s a simple tool to browse the world’s top Youtube videos with an interactive map. We made something that we wanted.
In the end, though, we shipped a product. After a week of 12+ hour days looking at the same thing, it’s hard to see it for anything but its flaws and be unforgiving in the appraisal. Nonetheless, we made something and learned many important things in the process. Now to refactor.
Hiring day is tomorrow. Fourteen companies are sending their engineers for nine of us looking for software development work.
Two More Days
Week nine. Day three.
Today we made it past the hard part. Group tensions were high yesterday and we all felt a little frayed today — each of us pushing hard to finish a functioning application.
In any case, we made it. The final product looks good, and we’ve all learned still more about how to deal with the challenges of building software in a group.
Just in the past week, I think we’ve experienced a microcosm of difficulties common to supporting legacy code, effectively dividing the work, patching bugs in less than ideal ways given shipping deadlines, and keeping the team moving forward, even if tensions are high. It’s a good final project. Not just for the chance to build something at length, but to experience all these things firsthand and learn how to deal with them.
At this point, we’re ready for the real deal.
In the Trenches
Week nine. Day two.
Another grueling day working on projects. We’re almost there and I’m exhausted. Looking forward to take the wraps off and show what we’ve made.
Week nine. Day one.
For lunch today, we took a break from the intense concentration of projects to talk with Sherif, Jeffrey, and Anne about the bigger picture of the next few years. In my mind, the takeaway was this: regardless of how long it takes, we will all become professional software developers. All of us have cast aside the stability and comfort of our everyday lives so as to take this decisive step towards what we all love: imagining, creating, and building software.
Looking back over the past eight weeks, I see how we all have dramatically improved as developers. Naturally with all good things, we are just beginning on the path of becoming true craftsmen. But what would have likely taken six months of focused effort on our own, we have accomplished in just nine weeks. We will leave having pushed ourselves to the maximum while forging lasting bonds with our fellows.
The critics may say it can be done on your own. And, in a sense they are right. But how long it will take? The critics never say. And that’s the key detail.
So I say, Do not come to DBC if you cannot learn on your own. Come because you want to learn faster with people as driven and as passionate as you are.
Week eight. Day seven.
That’s it for now. A long week awaits.
The Importance of Free Time
Week eight. Day six.
Highlights today: driving across the Golden Gate bridge with my wife and stopping to enjoy the view of the entire bay, finding a cool new Vietnamese sandwich shop in New Chinatown for lunch, taking a long nap in the sun without anything to do, forgetting about my dissertation (submitted two weeks ago!).
P.S. Check out my updated internet name card. I added a picture and some super cool icons from Font Awesome.
Week eight. Day five.
Today was a complete change from the usual one-day sprint common to project day. Instead of having to produce some fairly complex application in a day, we now have a full week ahead of us to continue with the final project. I love the attention to detail, the chance to get every last little thing just right.
At this point, my group has become accustomed to a solid git workflow. We’re pushing version releases to master, working off of development, and using feature branches throughout the day. Now it’s just a matter of ticking features off a list, one at a time, until we reach v.1. Naturally, there are lots of ideas for new features, but we’re staying true to a minimal and solid application for a Wednesday release.
Tomorrow will be off day. And I need the rest.
The Joy of Building
Week Eight. Day four.
This morning the group of us collectively pitched about ten ideas. The initial number was reduced to five through voting. And then finally we all picked our top three and were divided into three groups of four.
At this point, everyone is mostly tight-lipped about the details of each project in the interest of surprising everybody next week during demo day. I’ll maintain that interest for now and only say that it feels absolutely great to finally have a week-long project ahead.
I’m quite pleased with my team. The idea has potential. And, we’ve managed to implement an MVP on day one — a result of having done it the wrong way so many times before. Instead of going big right off, we went barebones today, threw out the tempting but otherwise risky new technologies, and stuck to the minimum to get the idea up and running.
It’s clear now that the past seven weeks of group projects and pairing have been a perfect primer for this project. We’ve experienced first-hand all the challenges of working in a team building software. We know how to work well together, to give proper feedback, and to maintain an agile building process.
As an added bonus, Randall, Tammer, and Gustin from Thunderbolt Labs stopped by and gave a surprisingly frank talk on all the ins-and-outs of life as a software developer running a business. Protip: It never hurts to bring whiskey to loosen up the crowd. That’s what the Thunderbolt guys did. ;P