In addition to its core curriculum, Codesmith offers an extensive hiring support program that guides Residents through whiteboarding, advanced technical interview practice, resume and profile development, and interview and networking strategies. Support continues upon graduation with bi-weekly check-ins and, after offers, negotiation support. Overall, 25% of graduates receive offers for Senior Engineer positions and above, and about 70% receive offers for Mid-level Engineer.
Graduates of Codesmith typically earn between $95k and $120k (average salary $103k), build projects that have been featured at Google I/O earning 20,000+ Github stars and are advised by top engineers from Netflix, Facebook, and Google. Graduates are transforming healthcare at Heal and Impact Health, mental health at UCLA, and drone technology at Airmap, while others work on large systems at the top technology companies in the country including Amazon, Microsoft, and LinkedIn.
Recent Codesmith News
- Alumni Spotlight: Daniel King of Codesmith
- What is Machine Learning? A Primer with Codesmith
- Your 2017 #LearnToCode New Year’s Resolution
Recent Codesmith Reviews: Rating 4.97
Software Engineering Immersive Program
- Codesmith offers scholarships for talented people from underrepresented backgrounds. Codesmith also offers a small number of Dean's scholarships where Codesmith will contribute 25% of fees to candidates in need
- Minimum Skill Level
- Prior Computer science and programming skills necessary
- Prep Work
- 4 weeks
Machine Learning Alumni Program
The Codesmith Machine Learning Alumni Program is an intensive part-time program for Codesmith Alumni focused on in-depth learning of the theory, algorithms, and libraries used by machine learning engineers in the field, with a focus on developing real-world machine learning portfolio projects. Topics include: Data visualization, Data introspection and manipulation techniques, Python data science libraries, Classification, Regression, and clustering machine learning algorithms, Artificial Neural Networks, and more. This program is currently only for Codesmith Alumni.
- Minimum Skill Level
- Completion of Codesmith Software Engineering Immersive
- Placement Test
- Prep Work
- Precourse covering Python and Introduction to Machine Learning
- Minimum Skill Level
- Beginner - Intermediate
New York City
Software Engineering Immersive Program
- Codesmith offers scholarships for talented people from underrepresented backgrounds. Codesmith also offers a small number of Dean's scholarships where Codesmith will contribute 25% of fees to candidates in need
- Minimum Skill Level
- Prior Computer science and programming skills necessary
- Prep Work
- 4 weeks
95 reviews sorted by:
- Only Applicants, Students, and Graduates are permitted to leave reviews on Course Report.
- Post clear, valuable, and honest information that will be useful and informative to future coding bootcampers. Think about what your bootcamp excelled at and what might have been better.
- Be nice to others; don't attack others.
- Use good grammar and check your spelling.
- Don't post reviews on behalf of other students or impersonate any person, or falsely state or otherwise misrepresent your affiliation with a person or entity.
- Don't spam or post fake reviews intended to boost or lower ratings.
- Don't post or link to content that is sexually explicit.
- Don't post or link to content that is abusive or hateful or threatens or harasses others.
- Please do not submit duplicate or multiple reviews. These will be deleted. Email moderators to revise a review or click the link in the email you receive when submitting a review.
- Please note that we reserve the right to review and remove commentary that violates our policies.
There are tons of coding bootcamps, but only a small percentage of those schools have the potential to substantially accelerate your career. Codesmith is, without a doubt, in this latter category, and I'd be shocked if there's another coding school as effective as Codesmith.
Had I relied on self-study, it would have taken me at least another year to get to the position I'm in today (and I'm a relatively studious/disciplined person). The Codesmith community and resources are invaluable, and these things just can't be replicated by studying on your own. I'm extremely happy with my decision to attend Codesmith.
Me, before: Technical, non-software-engineering role at a software company. Engineering (non-CS) MS and BS from UCLA (Go Bruins). Very very little JS web dev experience.
Me, now: Software Engineer in LA. Making 67% more than I was before. Doing lots of JS web dev and kicking ass.
Thoughts: Codesmith is an amzing way to get 1000+ hours of guided, designed, supported time learning a useful, in-demand set of skills to get hired as a software engineer. It's super fun, too.
I think Codesmith's effectiveness is shown in my hiring experience. We set up profiles for platforms like AngelList near the end of the program and I got a handful of outreach messages from companies nearly immediately. Two turned into interviews, one into an onsite and an senior dev offer before I even graduated. I spent the three weeks after graduation ~50% applying to jobs and ~50% interviewing/preparing for interviews, getting 5 offers in that time. Every onsite interview I had turned into an offer. I accepted one within a month of graduating.
I think part of my success comes from my technical background and fancy degrees (I didn't put Codesmith on my resume), but I wasn't having many results from these kind of companies in my immediately-previous job search. Codesmith set me up with the skills, confidence, polish and support that made the hiring process actually kind of fun.
I will keep this short, as there are many other reviews talking about the curriculum in depth and the amazing resources that Codesmith provides. My review will be about what I gained the most during my time there.
Codesmith is a valuable investment in yourself and your future. During Codesmith, I genuinely learned how to learn and now I am confident that I will excel at any software postition that I enter. My background is in Civil Engineering and I previously coded in Java, but I had never experienced this level of intense learning until now.
Codesmith got the philosophy right and you are surrounded by people who are asking in-depth questions about the most interesting emerging technologies. A small group of students, engaged instructors, and projects that challenge you to think critically... this is what all school should be like!!
I did get a great job at a startup working on the technologies that I love (React), but what I really got was a new mindset on software that will take me far. Shout-out to the Codesmith staff, keep it up!
Codesmith will be tough to get in to and tough to complete! You will be a mid-to-senior level software engineer by the time you graduate with a production-level project on your resume. The Codesmith team will go above and beyond to provide the highest quality education and help you find an amazing job with an amazing salary. The hours will be long, but the people you will spend your days with are amazing, both personally and professionally.
Acceptance to Codesmith is an educational journey in itself. You must already have some solid foundational programming knowledge just to make it through the interview process. The acceptance rate is lower than that of most Ivy Leagues (~4%). I attended a bootcamp long before I found Codesmith, which puts me in the rare position to be able to draw from actual experience in order to compare Codesmith to other programs. Looking back, I realize that all the knowledge I gained from that bootcamp really only prepared me to be eligible to interview with Codesmith. In addition to the substantive Codesmith interview, there is also a cultural interview. This ensures that the people you spend the next 3.5 months with are people that will facilitate your success as much as the staff and curriculum will.
The curriculum that I experienced in my previous bootcamp provided me with a great coding foundation that made me a great junior developer; however, the knowledge that I acquired there was not sufficient to elevate me to the skill level necessary to join the highly competitive work force as a mid-to-senior level software engineer.
Codesmith residents are held to an extraordinarily high standard of technical excellence and communication. The curriculum is extremely challenging and vigorous. We learned the essentials of computer science (algorithms, design patterns, big O notation), as well as the latest technologies such as React and Redux. As challenging as the coursework is, however, you are not on your own. The one-on-one support from the resident fellows is incredible (think TAs, but they care a lot more). Each person on the staff at Codesmith does everything within their power to ensure success during and after the program.
During the second half of the program, we build production-level projects in small teams. These projects are the best projects coming out of immersive programs in both caliber and quality. Production projects from Codesmith have been acknowledged by the inventor of Redux, Dan Abramov (React Monocle), featured at the Google I/O developer conference (web-dsp) and, on more than one occasion, drawn enormous interest from the React community. My own team's project, Reactide, was the #1 trending app on Github and gained over 5,000 Github stars in the first week of its release. None of these projects were promoted in any significant way; they have all stood on their own merit and ingenuity.
Day to day
An average day at Codesmith consisted of a daily coding challenge, multiple lectures, a lot of pairing, more lectures, and the occasional game of nerf war! What surprised me most about Codesmith was the time commitment required to complete the program. At a minimum, we were there for about 10-14 hours per day, 6 days per week, which is far greater than the time commitment required at a traditional bootcamp. The extra time adds up to at least 2-3 weeks more than you will get anywhere else. The days passed rather quickly, however, given the high expectations and quantity of work required of each of us each day. As I said before: this program isn't for those on the fence about their engineering career!
My cohort was a really fun, hardworking, collaborative and supportive cast of characters. Completing a program consisting of over 1,000 hours together created a strong bond between us as a group. To this day, we continue to help and support one another by answering coding questions, giving one another job leads, or just solving interesting challenges together. We even go camping as a group, now and again.
Finding a job, no matter how substantively prepared you are, can be an arduous undertaking. During the last few weeks at Codesmith, there is a lot of focus on preparing for job interviews (including rigorous mock interviews and white-boarding), perfecting your resume, and developing job hunt strategies. This support does not stop when the program ends (as is the case with traditional bootcamps). After completing my previous bootcamp, I was grossly unprepared for the job hunt with absolutely no support from the staff after graduation. This is absolutely not the case at Codesmith. If anything, support in the job hunt increases post-graduation. Staff from Codesmith continued to help me research jobs, prepare for interviews, and keep my coding skills sharp long after graduation day. They even helped me negotiate my salary when I received my first offer. Codesmith students routinely receive offers right out of Codesmith that are $100,000 or more, which is anywhere from 1.5 to 2 times what you will receive as a junior developer coming out of other immersive programs. I can attest to both numbers from experience as my current salary is literally double the salary I was offered after my other bootcamp.
Not long after I graduated from Codesmith, I landed my dream job. I'm a software engineer (with a highly competitive salary) in New York City, building software to help cities and organizations provide coordinated public services for veterans, families, and low-income individuals.
If you are able to be accepted to Codesmith, go! Do not hesitate! It will be the best decision you can make for your career.
It's not easy, and you won't be spoonfed knowlege, but if you are willing to put in the work, you won't regret choosing Codesmith.
As a recent graduate of one of our nations leading liberal arts colleges, I can honestly say that codesmith, and not my undergraduate education, was the most invigorating and fulfilling learning experience of my life. Four things (listed in no particular order) make Codesmith great:
Codesmith's CEO, Will Sentance, heavily emphasizes the importance of building a warm and supportive learning community. The entire staff reflects this attitude. I moved from Chicago to enroll in Codesmith, and was initially worried about having a small support network in LA. My fears dissipated day one at family dinner, a weekly group dinner where everyone in the Codesmith community (alumni included!) are welcome to dine together and shoutout other community members for their successes and kind actions.
The engineering and teaching staff often stay beyond work hours because they enjoy helping Codesmith residents. The engineering staff have a strong and unified pedagogical approach - they subtly guide residents towards asking the right questions, but avoid directly providing residents with a specific approach to a problem. While this teaching style can be frustrating at times, it taught me to ask the right questions and is ultimately responsible for the tremendous growth I experienced in 12 weeks.
The core staff, who work on hiring support (I'll focus on this later), organize events and meetups, addmissions, and a variety of other behind-the-scenes work, are always happy to take time out of their day to talk with Codesmith residents about how they are doing both academically and emotionally. After all, such an intense program can be draining at times, and the support of the staff is instrumental in making sure every resident completes the program ready to be hired as a mid-senior level engineer.
Codesmith is highly selective. As a result, I was surrounded by smart and dedicated engineers with a diverse set of backgrounds. Codesmith doesn't only look for technical prowess, though. They are careful only to admit compassionate and thoughtful communicators - people that will be strong team members. After all, the majority of work in Codesmith is done in pairs or small groups. This exposed me to a variety of approaches to problem solving. I learned faster as a result of my peers, and gained invaluable experience as part of an engineering team. My fellow residents would often organize informal lectures or study groups outside of class time to help bring everyone up to speed in subjects they excelled in.
Curriculum / Production project
The Codesmith core staff have weekly checkins with alumni to ensure they are making good progress in their job searches. All students go through multiple drafts of their resumes, which are reviewed by Will's scrupulous eye. Residents go through rounds of practice whiteboarding sessions and interviews with both staff and other reseidents. And in the last week of the program, each resident has the opportunity to kick off their job search by interviewing with multiple hiring partners. Additionally, Codesmith has a hiring support team member, Eric, who is dedicated to providing students with interview and application strategies and giving residents advice in negotiating better packages once they have received job offers.
I was accepted to both Codesmith and Hack Reactor (LA). Hack Reactor certainly appears to be a strong program. Yet Codesmith's emphasis on creating a community of engineers and learners, the incredible quality of open source projects produced by Codesmith residents, and the teaching style of the engineering staff made Codesmith the clear option for me.
An intense program that will challenge and push you mentally and even emotionally at times. Fast-paced but balanced with a fun atmosphere, you will grow in many ways. Check out Hard Parts to get a sense of the community and to see if it could be a good fit. Talk to a range of current students and graduates.
I am very grateful for the people I met during my time there. The best coding bootcamp experience I've ever had. Other things I miss: the patio for watching sunsets and bagels for days.
I'm going to have to keep this short, as I really need to get going to work this morning - to my full-time job as a full-stack software engineer. Codesmith, like most things in life, will give back as much as you put into it. I firmly believe it's the best program you can go to, but obviously I haven't been to any other immersive programs. However, there are a few things I can say for certain (with as much objectivity as possible):
2) The quality of the production (final) projects are better than any I've seen out of other programs. This is important, because if you are career-changer like me, this will be your most prominent item on your resume. My team's production project web-dsp was demo'd on the mainstage at the Google I/O developer conference (and they found us, we didn't contact anyone). Another team's project, Reactide, was a #1 trending Github repository for weeks.
3) They care about your outcome. The job search process is no fun for anyone, especially if rejection stings. There's support along the way even after the program is done, and the final weeks of the program are really geared towards making sure you have the tools you need to succeed.
On a subjective level, I feel like I've made lifelong friends with people from the process, which is obviously invaluable. And I had a good bit of fun while really expanding my scope of knowledge and ability each day of the program. If you're able to get in to Codesmith, just do it!
You can learn coding from anywhere, from online to books to in the classroom, but what differentiates Codesmith from the others is its people. When you go to a Codesmith class, you are given individual attention, when you ask a question, no question is too stupid, no age is an issue and no experience is an issue.
Every class I have attended the instructors spent at least 15 minutes helping students understand concepts that were being reviewed, and not just asking “does everyone understand,” but rather asking confused looking people to explain what they don’t understand then clarifying. Even technologies the instructors unfamiliar with, they would say, “Let’s look this up” and then looked up the technologies for the class and their own knowledge, showing that they are always learning too. The focus on understanding more and filling in gaps of knowledge rather than just memorization and getting though the material was what stood out for me.
Interactive > Power point > Interactive > Power point > Research > Interactive > Short Power Point > Interactive
Where Interactive can be anything from a problem to a presentation to a pop quiz to a quest speaker to a Q&A. Also questions can be asked by the instructors at any time so the classes keeps you on your toes.
One of the best decisions I ever made in my life is going to Codesmith. Back in 2016, I actually got accepted into all the top 3 boot camps in CA: Hack Reactor at SF, App Academy and Codesmith. I didn't even consider others because all the other boot camps including Hack Reactor at LA (but in reality MarketSquare) are nowhere near those top boot camps.
App Academy could be as cheap as $5k if you don’t get a job. For me, not getting a job was never an option anyway.
Did I choose Codesmith because I think I would fail at Hack Reactor or App Academy? No, definitely not. Becoming a software engineer is a choice that I made and I knew that if I worked hard enough then no matter where I started from, I would become successful.
I knew at Codesmith I would have to work hard. But if you want to become a software engineer and don't want to work hard, that is impossible. Everyone at Codesmith, even the brightest (ESPECIALLY the brightest) worked super hard every night. To me and my cohort mate, 11 pm was too early to go home. (Definitely not for the parking police).
However, if you want your job search to be a much nicer experience, Codesmith has a strong support team who will go all the way just to make sure that all of your correspondences are written beautifully. Thank Haley, Hira and all the staff who have been making my job search process much easier.
Why did I choose Codesmith?
1. A graduate from Codesmith LA with an average of 100k compared to a 100k in San Francisco is very different. San Francisco has a higher cost of living.
2. Codesmith costs less than other two.
3. Codesmith projects have reached new height. Check out Reactide with 7k stars on GitHub or webDSP. Guess where those projects were made.
4. Codesmith class sizes are much smaller than the other two. Look at Hack Reactor's video and see if every student has a seat. On top of that, there isn’t enough support from the staff after graduation.
5. Codesmith really cares more about student success than other programs, and will do whatever they can to help you. I was an out-of-state student who wanted to change my life. Codesmithhelped me and continues to help me so much that I truly believe that there is no other program who would even consider doing the same thing.
Let's talk about transforming yourself. You very well may be at the initial steps I was only a few short months ago. What's in consideration is an arena of challenge, unfamiliarity, and creativity.
I wince from the urge to say the word 'given' when referring to Codesmith. It isn't a word that is necessarily bad. Yet it draws unnecessary focus and doesn't reflect what you ultimately gain from such an experience. Nonetheless I will start with what Codesmith does in fact "provide".
1) An intensive multidimensional curriculum
2) Exceptional professional advice
3) Career support and networking
The underlying brilliance of Codesmith however is missed in this simple list. Codesmith more so than any other verb cultivates marvelous things in the individuals who attend the program. This is of course because the Codesmith environment and community is ingrained with an altruistic spirit to propel others.
If you were in search of a big reveal in to why Codesmith is a superb choice - this is it. In the field of accelerated learning Codesmith reaches the greatest of heights by living the words "We are all excellent, and we will grow to be more excellent." It is a beautiful thing.
Codesmith brings its residents in as family. This is an enormous backbone of support you may never see outside of your very own family. As it must, the program unleashes the gamut of web and software development obstacles. This is never an exciting part when I am talking about Codesmith. I am of the believe that the spoken material can be learned quite isolated with only the right handful of books. Torturous yet possible. What develops as you grind unit by unit is ability of course. As you take in your surroundings you realize the community is at your finger tips. When you stumble then stumble and your ready to not take another thrust up you are brought up by your cohort mates. Finally, when you have seen so much of the process that looking back you see the pattern of challenge, resilience, and accomplishment you realize a tremendous confidence.
Codesmith is a great whirlwind. I have probably not given justice to what I truly believe it is. Though what I know it is not is a magic door to success. Be prepared to join something that deserves your all if you attend Codesmith. It is a place that you should make the most of and that will be so many levels past the industry curriculum.
Two things really stuck with after graduating from Codesmith – 1) the process is sometimes much more important than the end result, and 2) having a caring community makes any challenge seem possible.
Codesmith chooses to teach through doing rather than through lecture – which may seem frustrating at first, especially if you’re more used to the academic life, but yields amazing results as long as you stick with it. By being forced to dig through the documentation and online resources (you basically become a Google master) to find what you’re looking for, you end up having a deeper understanding of the material than if you had just listened to a lecture. You also pick up a lot of other information along the way. What might’ve been an assignment on React might somehow lead to learning how to utilize a browser’s local cache. The beauty in it is that it all is somehow connected, so every bit you pick up might be useful in the future.
But, just because Codesmith teaches by doing, doesn’t mean that you’re on your own. Throughout most of the program, you’ll be paired up with another cohort mate as the two of you work your way through each unit. There are also Fellows (former graduates) who will help guide you when you’re truly stuck. At first I was a little skeptical of being guided by those who just finished the program a few weeks ago, but I quickly grew to appreciate them, not only because of the vast knowledge they provided, but also because of the empathy they were able to provide, having gone through the program themselves. Which brings me to my second point – the community.
TL;DR – you’ll struggle, you’ll think you aren’t smart enough, you’ll get angry and frustrated. But stick it through, and remember that your cohort mates and the Codesmith staff are always there for you. In a blink of an eye, you’ll find yourself helping someone else with something that you struggled with just a few weeks ago, and you’ll see the fear lift from their eyes. And that…that is a great feeling.
The Codesmith process is not for everyone - which is why it has longer hours than other programs but offers a more extensive curriculum, a final project phase where some student projects have received 4000+ stars on Github, and a culture that fosters teamwork and a striving for excellence.
From day one you are thrown into a world of problem solving. Guided by top teachers you are introduced to new concepts and then work through a well thought out curriculum in 2 day sprints. The sprints always seemed to hit the middle ground of difficulty with most students having just enough time to refactor their code and walk through it with fellow students. At any point in time (even staying past their work hours till 11pm most nights) Codesmith staff is available to guide you to the solution through the Socratic method. Instead of just giving you an answer the staff engages you in a back and forth conversation until you feel the slight warmth of a lightbulb above your head.
You'll do these sprints by pair programming with another student in your class and this is where you learn the soft skills that will allow you to excel in the workplace. Former bartenders work with ex investment bankers, students fresh out of college with an engineering degree code alongside former salespeople - this is how you grow your empathy, technical and personal communication skills and openness to others' ways of thinking.
All bootcamps will promise you the world, Codesmith included. It's up to you as an individual to take advantage of what is being offered to you. After careful consideration I decided Codesmith had the most to offer me. As a result I went from beginning to learn how to code on my own in September, joining the November cohort and receiving a job offer three weeks after graduation.
If you had asked me if I thought I would have been programming professional a year ago the answer would be no. Yet here I am thanks to the Codesmith ethos and the people it brings together. When looking to join a bootcamp understand that who you will be going to class with every day is just as important as the class itself. If you talk to anyone at Codesmith you'll immediately understand why the application process is more rigorous than other schools. As they tell you about the long nights they spent building developer tools or learning about data structures you'll see the grin on their face as they reminisce about the experience.
I found my love for programming while studying at UCLA. I had taken a few classes in C++ but I kept telling myself that it was too late to change my major. During my senior year, I was fortunate to be given the opportunity to deploy a website that is still hosted by UCLA, but I still kept telling myself that it was too late. I tried searching for an entry-level programming job coming out of college, but without a CS degree, it seemed nearly impossible. And so, I decided to chase my other dream and become a sushi chef. Fast forward a year later and I find myself itching to code.
The 13-Week Immersive
Life after Codesmith
Finding a job is never easy. But two weeks out of the program and I am now employed at a company that I'm super excited to be at. People may tell you that it's impossible to come out of a bootcamp and get hired as a software engineer making 6 figures... well they're right. But Codesmith is NOT a bootcamp. Codesmith is an engineering residency. It's a place where aspiring engineers can grow into seasoned software developers.
If you're considering a bootcamp, do yourself a favor and don't mistake Codesmith for one. For the money, good bootcamps take in new comers, hobbyists, and amateurs and do wonders in preparing them for entry level junior roles. By contrast, Codesmith does this for free. If you want a junior role, start coming to Codesmith where they've cultivated a community created by and for engineers. Regular discussions and workshops expounding on topics from fundamentals to advanced software engineering topics are offered free of charge on a weekly basis. Free of charge. Several times a week. Every week. For free. Meet other like-minded people passionate about engineering. Learn from them and you can teach yourself how to code and probably get a job if you're keen.
If you want to take the next step in your career as a software engineer, as I did, prepare rigorously for the Codesmith admission process and submit an application. Prepare to fail the interview, study, and apply again. Even through failure, you've improved yourself ten-fold. But if you've truly dedicated yourself and committed to becoming the type of engineer who can solve any problem, you might get a chance of a life time.
To offer my own experience, which is shared by many, I was a self-taught programmer with a non-technical background (accounting and non-profit administration). In terms of academic performance, I was about average, something I take pride in given the level of ability among my peers, which included experienced engineers, recent cs graduates, and some 'non-technical' folks like me. In terms of projects, my team developed an application commissioned by a real company for its userbase. Afterward, I was lucky enough to earn a fellowship, where I had the opportunity to contribute as an engineer and mentor others. When my fellowship ended, I prepared myself to begin a full-fledged job search which I thought would last up to an additional three months. But instead, I received my first offer from a Codesmith hiring partner exactly one day after and I'm now happily employed as a full stack engineer earning a competitive salary.
Simply put, the program works and I changed my life by deciding to come here. Just do yourself a favor and check it out for yourself. See you there.
Codesmith is about people. People and code.
Before Joining Codesmith
In mid-2016, I found myself in the middle of coding hell. I was a junior-level dev working or projects that went live before they should have, in an environment that lacked engineering best practices, without the skills I needed to keep up or even understand fully what was going on. In short, I needed a change.
That change came about serendipitously, when I learned about Codesmith, a coding immersive program, from a an acquaintance at a mutual friend’s party. He was starting Codesmith just that next week and everything he said about it sounded exactly like what I was thirsting for. Full stack, Mongo, Postgres, Angular, ReactJs, Node, Fundamentals, Fundamentals, Fundamentals. Not only that, but the school was in Playa Vista, literally 15 minutes from where I worked in Culver City.
The double doors of the elevator opened up and I had an immediate “yes” feeling when I stepped onto the top floor. I signed in after a warm welcome and joined my fellow meetupers in the main lecture room.
The rest of the night was a series of “yeses.” Will Sentence, the CEO — “yes.” The community of developers — “yes.” The electricity of those in the program, and the knowledge they had — “yes.” But most importantly, I left that night with fundamentals — insights into programming — that I never had before. “Callbacks”, “Higher-order functions,” the “Closure (the closed over variable environment),” variable environment, the call-stack, hoisting, execution context, thread of execution, …, it goes on.
As I left, exhausted, I reflected on my wobbly coding ability and thought, “How can I con my way into Codesmith?” It felt like a matter of survival. I NEEDED this.
I didn’t make it into Codesmith after my first interview. I made it after the second one, after postponing it an additional week for some additional intense studying on the feedback I received from the first.
After waiting nervously by the phone one Thursday afternoon, my phone rang. It was Will Sentence. I was in.
The Codesmith Experience
If you want to truly learn a foreign language what do you do? You immerse yourself in it. You go to a country that speaks the language and you stay there until you know it — until it becomes so much apart of you that you think in it.
Codesmith is a software immersive program that turns junior devs into mid-level devs and mid-level devs into senior. It demands a level of intensity that only those passionate about problem solving in code are able to sustain. The average week was Monday through Friday, 9 am sharp to 10pm, and Saturday, 9am to 5pm.
Codesmith is the most selective coding program in the country. This means that your peers are not only scary smart, but also some of the best community-focused, supportive people you’ll meet in your life. This is a necessary part of the program. Just as if you are to learn a foreign language, you have to be able to “talk” code, internalize it. I only understood some of the nuances of coding because of the in-depth conversations I had with my peers. Everyone had an insight and a different way of explaining every concept. To learn to code you have to “boil the ocean,” but if a partner already boiled a concept, you’ll just need to boil a pond. These conversations are invaluable.
Codesmith hires seasoned battle-tested engineers as instructors. Our instructor was Dan Carr, a brilliant seasoned engineer with years of experience and relationships with some of the most prestigious companies on the planet. Not only did he have a vast coding instinct, but a “gut” ability to communicate his understanding in every lecture. On top of his innate teaching ability, he is truly one of the coolest, approachable dudes you will ever meet. He puts his students first and is always open to dialogue, even (maybe even especially) post-graduation.
In our feedback to Codesmith, our was response about Dan was always, “give him a raise.” He is truly one of the highlights of my experience at Codesmith.
Each lecture, as can be expected, is followed by a project to apply the concepts learned in a concrete way. This is where the “sweat and blood” goes. These projects are NOT easy.
It’s been said about Codesmith that not only does it teaches you to code, it teaches you to learn. It is here that concepts move beyond ideas and become emotions. If you and your partner spend 45 minutes of frustration on a problem and finally succeed, you will both remember the story of that problem. It will no longer be a transient concept, like one of those you memorized to pass a test, but an ingrained part of yourself that you “feel” in your gut. Each lecture is followed by a challenge that will make you an independent problem solver. This “sweat equity” turns knowledge into understanding.
The Final Project
The course ends with a final project. You are broken off into groups and together you come up with ideas to present to the staff and your peers. The criteria for an acceptable final project can be summed up as, “Is it impossible?” If the answer is yes, then you’ll be allowed to proceed. There is no such thing as a CRUD (a simple web app) app being allowed as a final project. To be an engineer is to approach problems that do not currently have a solution. These projects are of senior engineer level, and are tools that provide solutions to problems that engineers face out in the field.
My team’s project, for example, was deploying a library for developers to easily create a database on the distributed blockchain technology, Ethereum.
It was here that our knowledge was solidified and we became surgeons with code as our scalpel.
I entered Codesmith as a junior-level dev, having minor on-the-job experience in coding, and after three months (~1,000 hours later) was able to secure a mid-level (100K+) position shortly (about 3 weeks) after graduation.
Part of the job search was networking via meetups and speaking to graduates from other coding programs. I was politely silent as I listened to them vent about their “horrible, competitive, non-supportive peers” and how “we’re junior devs, there’s nothing we can do.”
Codesmith was genuinely a life changer for me. It helped me make one of the toughest transitions in my life. I went into Codesmith as a junior dev and came out a mid-level dev, as promised. I know for a fact, instinctually, that Codesmith was the best choice I could have made in a school. The other schools’ curriculums are either too soft or the culture is too cold.
Codesmith is about pain. To succeed, you have to be sincere about your intention to make a certain but drastic change in your life.
A few months after graduation, I find myself reflecting, “How do I measure up to my co-workers who may have a more traditional path to engineering? Am I on par with these other mid-level engineers that I work with.” The answer is a resounding “yes.” I am able to contribute to the team at the same or, often, better level than they can. Codesmith instilled an intuition in me that other developers may not have.
There are a lot of factors in success. If I could boil them down, I would name attitude, focus, and education. Codesmith provides the education element. The rest is up to you.
TL;DR Codesmith is dificult from start to finish. It is not easy, but for every hour you spend it will reward you 10 fold. It will take serious time, determination, and motivation, but it is worth it in the long run.
Codesmith was without a doubt the best decision I have made in a very long time. It was not an easy process or stress free. This program is not for the feint of heart. It is a fight to get admitted. Then it is an even bigger fight to make it through. But this is what makes Codesmith the amazing place that it is.
First getting in requires lots of time and dedication. I was previously a juniorish or lower front end developer. Just to get in, I was working 30 hours a week studying and teaching myself. Trying to make sure I hit the bar. When it happened I was ecstatic. I was through the roof happy. I got through the precourse work and then it was time to start.
I got there and day 1 the work started. Every person in the room was there because they were highly motivated, wanted to better themselves and equally cared about every other person in the room. I don't think any one person in my cohort could have gotten through if it wasn't for the community that Codesmith fights to cultivate. Every single person is not there just for themselves, we were there for eachother. We were a team. We didn't compete with eachother. We helped eachother. Any time that one of us struggled, before we could ask for help someone that was excelling in the current days sprint would be over to help out. The program runs from 9 am to 8 pm Monday through Friday and on Saturday from 9 am to 4:30 pm. But I think I showed up around 8:15 every day and there were always at least a few other people that were already there. And leaving at 8, it never happened. We weren't required to stay, but we became a family. After 8, we would still code, but it was social. We would play ping pong, relax, code more, hang out, just talk about life. It was a common occurence that no one would leave before 10. And it was just because we all wanted to spend time together. Six months later, I still talk to just about everyone in my cohort weekly. We grew a bond in three months that I didn't know was possible.
After Codesmith, I became an engineer in residence for three months and then did some independent contract development work for them for 6 weeks after that. I'm not going to talk much about the fellowship other than to say it was an amazing experience. And if you do end up choosing Codesmith, I highly recommend applying for the position.
Final thoughts, Codesmith is not easy. It is a lot of long and stressful days. But the education, team, and community are bar none of the highest possible quality.
TL;DR - There's no TL;DR version of my review. Those who have what it takes to get into Codesmith are hungry for information, and are not put off by reading to gain insight.
Before you begin with my review, you deserve to know that my review will be of a different perspective than most reviews you'll read, as upon graduation I did not follow through with my original plan of searching for a software engineering position at various companies that I originally had my eye on. I instead found that my fondness and infatuation with Codesmith's community had grown to a fully-blossomed love-affair that prompted me to apply to the fellowship. Being fortunate enough to be chosen not only as fellow but later on as Technical Lead, I am now still at Codesmith holding the latter position. I impart upon you the perspective of a former student and current staff member.
In every metric by which it can be judged, the engineering hub known as Codesmith performs with outstanding results. I hold this as a fact, after receiving feedback from various alumni--including my cohort-mates, who have embarked on career-paths that most of them did not think were possible only a few months ago. But metrics can be easily obtained from other sources, so I'll assume that the circumstances that led to your eyes absorbing my review involve a desire to gain a sense of the immeasurable. Thus, I will omit the statistics and contents of the curriculum, in favor of conveying the intangible aspects of my journey that began more than six months ago.
Throughout more Meetup events at the residency, I would eventually meet even more faces that would become part of my cohort, and thus part of a group of friends that I cannot see as anything less than life-long. After a second Hard Parts attendance and applying to the program (with encouragement from a then-junior during drinks after the Meetup), I gained acceptance to the September 2016 cohort. There was still more than a month before our start date, and I planned on taking advantage of the time to prepare myself for the upcoming immersive experience.
During this month prior to the first day, I invited four others who were part of my cohort to sleep over at my place to watch an 8-hour Kyle Simpson live broadcast that began at 7am the next day. I did not anticipate the readiness with which they accepted the offer. They were as dedicated to learn as anyone I had met my entire life, and I had already been through college with people who fell asleep with their heads on keyboards and books.
As atypical as this dedication to growth is among most people, it was strikingly commonplace among the characters I would meet once school began at Codesmith. In fact, not a single person lacked this trait. Throughout the many unit modules and projects of the curriculum, it had become clear that the interview process was marked with such selectiveness that no one was accepted unless they exhibited the grit and commitment that would often persist well beyond the daily schedule, and into the late hours of the night.
Past mid-December, when the applications for the fellowship were released, the staff announced that there were two positions open. There were twenty-five members of my cohort, and many of us applied to take on the position of the individuals who had chosen to dedicate themselves to helping students instead of immediately searching for six-figure salaries. Knowing how many well-qualified applicants there were, I was humbled to be one of the two chosen fellows.
In the ensuing three months, I came to grow much more than I had anticipated, like the previous three months. Being charged with many duties relating to the growth of the engineering hub and of the pupils, I came to gain a higher understanding of my thinking process through introspection. This enabled me to describe my problem-solving strategy to the student body much more effectively. I had not experienced such a literal and real incarnation of the phrase "Learn through teaching."
After becoming part of the staff, I now see how real the dedication to every student really is. I had caught of a glimpse of it when I applied to the program and subsequently heard (during the acceptance call) my own quotes that helped the staff know how I would fit into the community. I first thought it must have taken a lot of effort to keep up with the mental, emotional, and academic well-being of every student. But now as a mentor, I believe it would take a lot of effort not to watch over every student carefully, as they are all part of a community that I help shape and foster.
Throughout all of my years on this Earth, I have never seen such a marriage of dedication and community like that which has been exemplified in all of my previous six months, having been a student and a fellow at Codesmith. Having been graced with the opportunity to become Technical Lead, ending this review seems oddly inappropriate, as my time at Codesmith has not ended. But delaying the submission of this review would be just as inappropriate, as one of the many things that my experience with the Codesmith community has taught me is that there is no reason for delay.
So many life choices in the course of my forty-five years... some brilliant, others... not so brilliant.
Circumstances led to one not-so-brilliant move as I dropped out of school after the tenth grade. I then spent a couple of years living on and off the street (and the 'off' wasn't so very removed). From a little town in Alabama to Atlanta to New Orleans, I made my way on the kindness of strangers and by plying my questionable needle-and-thread tattooing expertise.
I remember listening to Pink Floyd a lot back then. There's a lovely song on 'Dark Side of the Moon' called Time. I'm sure you've heard it. There's a few lines from that song that haunted me as a young street urchin:
You are young and life is long / And there is time to kill today
And then one day you find / Ten years have got behind you
No one told you when to run / You missed the starting gun
I certainly didn't want to miss the starting gun, but it felt like I'd just been dealt a bad hand in life. And then, a wise friend that I met during that time gave me some valuable advice. "Schno", he said, "there's two types of people in the world: those that are controlled by their environment and those that control their environment. It's your choice which of those you will be. All you have to do is make that choice and take action on it."
Such a simple thing to say. It worked. I decided to change my environment. This led to many adventures over many years that spanned the globe. I joined the Navy, then worked in movies, which brought me to LA. Then in 1996 I pivoted sharp to begin my career as a developer, first at NASDAQ, and then in the phone sex industry (of all things). An unfortunate lay-off in 2014 had me turning to acting, (and then quickly on to) VoIP, and finally... I came to CodeSmith.
I know that's what you've come here to read about. Before I leave my review, I just want to reiterate that profound and simple message to you, dear reader. If it feels like you've been dealt a bad hand and you're not sure what path to take to move forward: All you have to do is make that choice and take action on it.
I had always thought of coding as wizardry… you could take a thought, a concept, and then by applying an arcane language, you could manifest all manner of wondrous things that made people's lives better. Over the years I'd lost a bit of that perspective. Codesmith has re-ignited my intellectual curiosity and the passion to explore it.
The course is very challenging. They foster a very real standard for excellence and that resonates through each student. This isn't the kind of place to 'get by'. It's the kind of place that changes your life.
For a detailed accounting of my time there, please check out the weekly blog I kept while I was a student.
And if you find yourself in Los Angeles with a free Thursday night, do yourself a favor. It may just be the first step on a grand, new adventure.
- Incredibly high standards for quality of achievement, work ethic, technical and non-technical communication as practiced by both their graduates and staff
- 3-4% acceptance rate
- Not scaled or franchised = total dedication to each student
- Recent grads are having the highest student outcomes for salary offers in the nation
- Cool workspace centered in "Silicon Beach" (just call it Playa Vista)
Compared to other programs
I was looking for the best program in terms of academic quality and hiring support. I open to move, but being a father, I also had a limited amount of time so a two-year masters program was not an option.
I narrowed down my search to App Academy, Hack Reactor, and Codesmith. Codesmith stood out for having the most modern stack of technologies covered, the enthusiasm their graduates had for the program, and the student production projects were far more advanced than any program including the universities including projects that have revieved media coverage and recognized by leaders in technology.
The application and interviewing process
The interview process is less about judging what you know and more about demonstrating your ability to communicate through tough challenges and your passion to push through. I was able to learn which areas I needed to work on in case I needed to try again. They always welcome retrying.
Work, life, culture
There were real sacrifices including a pause on work and social life and very limited time with my family. On the other hand, I could see no other way to have a career transformation than this. Also, it was all temporary and the internal support from Codesmith was always there for me.
Going through this journey with a community of like-minded individuals was beyond fun. You get the opportunity to work with talented, driven people who are on your same path and equally dedicated to reaching success. Everyday was filled with team wins and high-fives that kept us pushing forward to bigger challenges.
The regular ping-pong breaks and walks to nearby restaurants and bars in the tech-savvy Playa Vista area was also pretty vital in keeping us sane, too.
In addition to a highly selective hiring day, Codesmith has an entire team of entrepreneurs and hiring support staff that are a phone call away that help alumni with networking, negotiations, and interviews. Alumni also have access to office space and interview prep after graduating.
Recent graduates are finding themselves in senior level engineering positions at Microsoft, Amazon, LinkedIn, Nike, WalmartLabs, TBWA Chiat Day, NFL, etc. with salary offers well over six figures. When adjusting to costs-of-living, Codesmith’s recent grads boast the most successful salary offers in the nation.
This program is not for everyone. With a 3-4% acceptance rate, Codesmith diligently picks only the most passionate, driven, and valuable team-focused individuals who are willing to work towards aspirations beyond any other program. There was a lot of lost sleep, and even sometimes tears, but ultimately I feel truly honored to be a part of a industry leading community who I always plan on always contributing to. Though only two-years old, I’m looking forward to see them progress as they produce the future leaders of software engineering.
In retrospective, choosing to come to Codesmith was the best decision I could have made. The curriculum and hiring preparation are as rigorous as anything I've seen, which can probably be expected. The focus that they put on community and supporting each other makes for an incredibly positive experience. Everybody at Codesmith (students and staff) supports each other far more than what I have experienced at other jobs or educational institutions.
But make no mistake, this is a very productive work environment and they expect a lot from you during the 12 weeks. The quality and scope of the production projects are substantial, and in addition to the fantastic experience, I have something to show that I am very excited to talk to future employers and other people about.
TL;DR: Codesmith is an amazing program that will help you to make the transition into being a leading software engineer. The curriculum is excellent, the staff is top-notch, and the community and culture are second to none.
With that out of the way, let's talk specifics about the curriculum, instruction, community, and hiring support.
Before I made this transition into Software Engineering, I spent 6 years as a high school teacher teaching math, physics, principles of engineering, and computer science principles, and I have been consistently amazed by how much Codesmith gets right, pedagogically speaking.
One of the most important things that I learned during my time as a high school teacher is: The one who is thinking is the one who is learning. In a typical lecture, the teacher is the one who is thinking, but when students learn by doing, it is the students who are thinking. Codesmith students spend the bulk of the time during the first four weeks pair-programming on code challenges, which range from algorithm and data-structure challenges, to browser-based games, to REST-ful API development. Although a help-desk is available, they do not hold your hand at all, and a significant emphasis is placed on students being self-sufficient by seeking out advice from their peers, Google, Stack Overflow, and other resources. This can be frustrating at times, but it is important to understand that time spent struggling through confusion is not wasted. In fact, that is when you are learning the most, and you will get through it with the help of the supportive, caring community that they build. Which brings me to...
One of the things that really stood out to me about Codesmith when I was first looking in to coding bootcamps is how hard they work to build an inclusive, inviting, and supportive community between current students, professional engineers, and amateur programming enthusiasts. When selecting who will be admitted into the program, they focus not just on the person's technical skill, but on their communication skills, empathy, and culture fit as well. The 12 week program is very demanding, and the level of support that I felt from the staff and my fellow students was what allowed me to grow as much as I did in the program.
A lot of time is spent on hiring preparation and support during the last 6 weeks of the program. However, what really stood out to me about the hiring support was what happened after the program was over. I reached out to Will, Eric, and Hira frequently to ask them for advice specific to my situation, and they were always very responsive and willing to put the time into helping me personally. I also found that Codesmith alumni were always very excited to talk to people just coming out of the program and to share what their experience was like getting their first software engineering positions. If you take the time to reach out to the staff and alumni, they will be more than happy to give you candid, helpful advice about your particular situation.
The 12 week program was extremely challenging. However, it has helped me to make a major change in my life in just a few short months, and the amount of support that I felt from the community was incredible. It was a huge risk, and I'm extremely glad that I did it!
Our latest on Codesmith
Tell us about your career and education background. How did your path lead you to Codesmith?
My college degree is actually in math and physics because at the time I thought I wanted to go into research or a PhD program in either math or physics. I wasn't totally convinced, so I decided to take time off from being in school to evaluate that pathway.
While I was taking that time off, I started substitute teaching just to pay the bills and ended up really liking teaching. I ended up teaching high school physics for about six years. Teach for America brought me to Los Angeles, where I taught for four years at a public school.
How did you become interested in programming?
The last school I taught at wanted to pilot a computer science course and I was the only person at the school who had any inkling of experience with programming, so they asked me to teach it. I had never taken a computer science class, but in my physics degree, we learned a little bit of programming for number crunching, large physics calculations, and simulations. I remembered liking that work, so the idea of teaching that computer science course was exciting. In the process of lesson-planning, I found myself wanting to spend my free time diving more deeply into it.
That experience is what really got me interested in programming and making the career switch into being a software developer.
What made you take the next step from teaching computer science at a school to actually changing careers and becoming a software developer?
My background is in technical fields – math and physics – and I found myself missing doing technical work myself. Spending time learning about computer science in order to be able to teach that course gave me the itch to do more technical work myself. That's what initially got me thinking about making a full-time career in software development.
Why was a coding bootcamp the best way to achieve that goal?
When I first started thinking about transitioning into software development as a career, I wasn't necessarily going to go down the coding bootcamp route. I started to consider coding bootcamps because even though I was a classroom teacher myself, I actually found it really difficult to be a student in the traditional classroom. I knew that if I wanted to go into software development, it would be really helpful to have some coaching or mentorship as I learned.
I wanted a place to learn with other people who were interested in programming as well, but I also wanted the transition to be faster than going through a traditional, multi-year master's degree. I knew that even if a coding bootcamp was difficult in the moment, I would be able to get a lot out of it very quickly and be able to start my career as a software engineer in a really good place. To be perfectly frank, I guess I was a little bit impatient!
How did you find Codesmith?
Having been a teacher in the classroom myself, I was really impressed with how hard Codesmith worked to build community, both with the students who are currently studying there and with the beginners who were coming to that free workshop every week.
Did you research other coding bootcamps? What stood out about Codesmith?
I did look at a few other coding bootcamps, but to me, community building is really Codesmith’s secret sauce. They work hard to create the kind of environment where everyone wants to learn at a really high level, wants to push themselves to the limit, and is 100% there to support every other person who's going through the process. It really allows you to push yourself and learn as much as you can without fear that you might fall behind – you've got 20 other people who are there with you to support you along that journey.
Was it a competitive application and interview process to get into Codesmith?
As a former teacher, what did you think of the Codesmith teaching style? Did it work with your learning style?
There are so many things that Codesmith does right, pedagogically speaking. Most impressively, their entire focus is where it needs to be: on the students’ learning. Students work on projects that are intended to help them learn a certain topic, and these projects are large in scope and open-ended; they're typically too large to be completed within the allotted time. The ultimate example of this is the Production project, where students spend the last six weeks of the program working on large, cutting-edge software project of their choice. My team and I decided to create a library for testing WebRTC applications, and as far as we know, we were the first people in the world to do so.
Since the projects are so large and open-ended, the point is that students dig into it and work as hard as they can. It’s not about finishing the project because, in the real world, you're never finished. Instead, it’s about taking away an enduring lesson. At Codesmith, learning is the most important part of the process. Instead of telling you how to solve a tough problem, the instructors gently nudge you in the right direction. In the moment, that can be frustrating, but you're really learning the most when you struggle. It's by fighting through confusion and overcoming barriers that we become stronger as software engineers. That's really what engineers do in their day-to-day work.
This style of learning was definitely cultivated at Codesmith and it's something that they emphasize and articulate as much as possible. Going through the program helped me to articulate those principles to myself more clearly. Working in education for the past several years, I had some frustrations with aspects of the traditional educational system because I felt it was too task-oriented and focused on the solution instead of the learning itself.
How did Codesmith prepare you for the job hunt?
The job search mostly happens within the last few weeks of Codesmith, and then during the next couple of months after you graduate. Codesmith does mock interviews, whiteboarding sessions, resume writing workshops, coached us on negotiating salaries, and exercises to build our confidence as we go off into the job market and start applying for jobs. There’s also a Hiring Day where they invite companies from the Los Angeles area to do interview speed dating with the graduating class. It's not uncommon for many students to get called back for onsite interviews due to Hiring Day. After graduation day, once we’re in the actual job search, Codesmith did regular check-ins to see how we’re doing on the search.
Codesmith was always very open and receptive. If I wanted to talk one-on-one to the Codesmith staff, they were very open to that as well.
How did your first technical interviews go for you?
I thought doing technical interviews was fun. It was a little nerve-racking at the time, but I always find that once I'm actually in the middle of the interview, talking about a programming problem or some technology or something about the company, that the fear goes away and I just start enjoying the conversation.
One of the things that was interesting about interviewing with several companies in a short timeframe was getting to talk to various people working in different environments. It was good to hear about the company cultures, and really get a sense for the type of environment I wanted to work in since I was so new to the tech world.
What have you been up to since graduating? Tell us about getting your first job!
I found the Codesmith alumni community to be really helpful and supportive in the job search. Now that Codesmith has been around for about 2 years, there’s a pretty significant alumni network. We have a very active alumni Slack channel and people are pretty frequently posting jobs on that saying, "Hey, my company is looking to hire a full stack engineer. Private message me if you're interested." That’s how I ended up getting my first job at MedCircle. I went for the interview and I really enjoyed the company and the team.
MedCircle is an online health education company in LA. It's a very small startup company – less than 10 people on the whole staff.
I worked at MedCircle for about 10 months and got to build the team workflows from the ground up, which was pretty cool. About two weeks ago, I started a new job at Google in San Francisco.
Congrats! What are you now working on at Google?
My official title at Google is Web Solutions Engineer. I'm primarily working on internal software tools that the sales and marketing organization use to do their jobs better. It's pretty exciting because, at MedCircle I worked on a small, agile, flexible team. My team at Google is similarly small and flexible, but it's within the context of the Google organization, so I have access to all of these resources and incredible world-class software engineering.
How did you make the move from MedCircle to Google? What was that process like growing into your next job?
I actually interviewed with Google back in December 2016, during my first job search after I graduated from Codesmith and before I was hired by MedCircle. Evidently, if you interview and they don't hire you but still like you, then Google keeps your name on their short list. In August, I got a message from a recruiter at Google saying that they had a Web Solutions Engineer position open up and asked me if I'd be interested in applying for it.
How do you feel you've grown as a developer? Where do you feel you are in your learning experience?
No matter where I am in my career, I always want to push to learn and grow more. One of the things that Codesmith does really well, more than just emphasizing learning one particular technology stack, is that they emphasize learning how to be confident technical problem solvers and engineers. Even straight out of Codesmith, I was pretty confident in my ability to solve difficult software problems, even if I wasn't necessarily familiar with all of the technologies being used.
Now, having been in the industry for a year, it's given me a lot more depth of knowledge in the kinds of tools, best practices, and higher level problem-solving techniques that it takes to really write high-quality software that is robust, that lasts, and that does its job well.
I’m also growing in different contexts. Google is such a large company; in order to accomplish anything, I have to learn a lot about the infrastructure of the company as a whole. It’s been pretty exciting to see how software engineering can really work at a massive scale.
What's been the biggest challenge in your journey to becoming a software developer?
What’s most challenging about software engineering is also what’s most exciting: there’s basically an infinitely deep pool of things to learn. In order to really be able to perform at the highest levels, you need to be willing to put in the time and effort to keep learning, whether you're on the job or not.
I've put a lot of hours and energy into trying to improve my skills even outside of work hours. But as I said, there's always interesting problems to work on, always new technologies to learn, and always new products to imagine. Because with software, anything that you can imagine you can create as long as you're willing to stretch your imagination and embrace the possibilities.
Would you advise other bootcampers to go into a small startup first like you did?
I think it was the right decision for me, but it depends a lot on the person and on the company. What’s more important than the size of the company is really understanding the company's culture during that interview process. For me, I like having a lot of flexibility in what I work on and being able to work on different projects, so I knew that working at a small company like MedCircle would give me that. Being forced out of necessity to wear different hats really made me into a more well-rounded engineer. I’m more confident when I have to tackle problems in a variety of different domains.
For your first job after a bootcamp, choose a company that will bring out the best in you and a place where you can continue to learn at the same rate that you were learning while at bootcamp. That can really vary a lot from company to company whether it's small or big, so feel out their company culture and choose based on that.
You have a background in Math and Physics – is it true that you need to be “good at math” in order to be a great software engineer?
I took Codesmith’s Machine Learning class after I graduated, and that topic was exciting for me because machine learning does involve a lot of math. My background in math gave me a good foundation to learn more in that area.
However, you definitely don't need to have a background in math in order to be good at software engineering. In order to be a strong software engineer, you need to be a strong problem solver. Being good at math is just one possible way to acquire those problem-solving skills. My background in math has definitely helped me, but I don't think it's the only way to get the skills needed for software engineering.
When you look back at the last two years, do you think you would have been able to get to this point by self-teaching or going back to a traditional school? What kind of role did Codesmith play in your journey?
I honestly doubt that I would’ve been able to make it to where I am today this quickly if I had gone down a different path. If I had done a master’s degree, I probably would’ve gone back to school in the evenings and continued teaching full-time, which would’ve drawn out the process and not allowed me to focus all of my attention on learning as much as I could. That would have made the career transition a lot more arduous.
When you teach yourself, it's easy to end up stuck in your own bad habits because you don't know best practices and how to get to the next level. Learning within a community of other people who are passionate about software engineering means that you can all help each other. You can push your thinking to the next level and get unstuck when you hit a roadblock in your learning. You always feel like the work that you're putting in is reaping benefits, because you can see the growth day by day and week by week. That rapid growth is really what allowed me to reach my goals so soon after deciding to make the transition into software engineering.
What advice do you have for our readers who are considering a coding bootcamp like Codesmith?
Your time at a coding bootcamp is very short, so it's important to really squeeze the most out of the experience that you possibly can. It's not enough to just go to class during the day and then go home. It's really important to get to know your classmates and help each other grow. It's rare that you're surrounded by so many other people who are this passionate about the same goals.
Codesmith works so hard to build community, not only between current students but also between professionals by hosting meetups for local software developers. If you can really take advantage of that community, then that's where you'll see the most incredible growth in yourself.
Everyone seems to be talking about Machine Learning. But what is Machine Learning, and do you really need a PhD in Math to master it? LA coding bootcamp Codesmith has recently added a machine learning unit to their core program, and will soon launch an entire Machine Learning Bootcamp. We asked Codesmith’s Director of Machine Learning, Weylin Wagnon, where to spot machine learning in everyday products, why knowledge of machine learning is useful for software developers, and what the job market is like for developers with machine learning skills.
- Machine learning is a subset of AI, where a computer uses data and previous experiences to predict outcomes
- Machine learning tasks include those which used to be done by humans such as fraud prediction and ad placement
- Any task that is currently tedious for humans but still requires some creative decision-making is a target for machine learning software.
- Codesmith is teaching machine learning with a code-first attitude, by introducing the concept to students as a new tool and a new library
- Software engineers who know how to interact with machine learning systems are future-proofing their skills
What’s your experience in machine learning?
I run a cryptocurrency mining farm, where we manage mining for our clients who want to invest in cryptocurrency. It’s very complicated to set up and do at scale, so we streamline the machine learning process.
What is machine learning?
In general, Machine Learning is equal parts math, statistics, computer science, and voodoo. Machine learning is very different from the traditional software engineering or programming paradigm. In computer science, you provide a set of rules and input data to make some kind of output. In machine learning, you switch that around. You input data and input the answer you want to see, and the machine figures out the rules required to get that answer. It is a little bit magical, it’s pretty challenging, but with a clear approach to understanding machine learning, it is possible to do extraordinary things with these tools.
How is machine learning different from artificial intelligence?
The standard general purpose computer is not intelligent. Artificial intelligence gives the machine some automated behavior that we consider “smart.” Machine learning is a subset of Artificial Intelligence and requires learning from previous data. As humans, we use our previous memories to influence our future behavior; machines can learn from previous data to do the same thing. Overall, AI doesn’t imply data alone, whereas machine learning is all about data.
Where do we see Machine Learning in the real world? Can you give us some examples?
Anything that is currently tedious to do for people but requires some kind of creative decision making is a target for machine learning software. Most of the cutting edge machine learning projects are coming from large companies that have huge data sets. For example:
- Google Photos and Apple Photos dynamically identifying faces in pictures and auto-tagging people.
- Shazam, which identifies songs, has been greatly enhanced through machine learning.
- Speech systems like Siri, Google Home, and Alexa, are all good examples of machine learning ability.
- Fraud reporting, which used to be done by humans perusing financial records, but is now accomplished with algorithms.
- Some core business uses have been around for a while – 10 years ago, machine learning was used to predict which advertisement a user would click on, and we still use advanced neural networks for the same task today.
How can machine learning be useful for a software developer?
Machine learning exists in an application ecosystem (like an API). So even if a developer doesn’t want to touch the whole backend of an application, they are still going to have to interact with some of these systems. Having at least an understanding of the concepts behind machine learning can be valuable in the long run when designing systems.
Any exposure to machine learning is a really good mark on your resume. Having interacted with such machine intelligence systems shows that you have a strong competency with current and future technologies.
Why has Codesmith decided to add Machine Learning to the curriculum?
Google I/O’s last conference (and every main stage) was fully focused on AI and machine learning at all times – it’s a significant trend.
You need to be able to work with large amounts of data, be a smart programmer, understand neural networks, and have machine learning skills if you want to build the next generation of tech products. And if you don’t, you’ll be left behind over the next 10 to 15 years. It’s hard to observe the future of jobs and not be scared of how machine learning is taking over; I think the best way to stem that tide is to get into the field yourself.
Tell us about the new machine learning unit at Codesmith and how you came up with the course.
We are now offering an entire unit within Codesmith’s core software engineering residency, plus a six-week stand-alone course for alumni and experienced coders. I just finished teaching the unit. It’s not a complete course, but it does give students all the tools they need to go forward in machine learning. We ran a beta-version of our six-week course for alumni, got a lot of feedback, and are iterating right now for our public course. It’s exciting to push software engineers on the right path. Machine learning is something that will be hard to avoid in the future so it’s really valuable to get into the space right now.
I spent a long time researching before writing the curriculum. I paired up with Kush Kumar, part of the USC Machine Learning Department, who is a stellar expert in the field. Combining his expertise with my teaching background, we forged the content together.
Can you really teach machine learning at a coding bootcamp? How do you fit such a vast topic into a short course?
We teach machine learning in the last quarter at Codesmith, so that students have the most experience and can gain the most from it. As we go through Codesmith, the pace of students’ comprehension accelerates, so they get used to picking up new information fast.
The core Codesmith unit is focused on teaching students about general machine learning ideas, providing a framework to think about machine learning, and defining terms that we’ll see a lot. We are focused on coding best practices first. Then, we’re fitting machine learning into the curriculum as a new tool and a new library, and not as a fundamentally alien concept.
We do a deep dive into re-engineering some machine learning algorithms so we can see it’s not just magic. But on this level, you don’t have to engineer everything yourself. We teach libraries like Pandas to enact a lot of complex behavior very quickly. The program is mainly project focused as we go through, and we also practice pair programming.
Students also learn some DevOps, neural networks, and Tensorflow. By the end of the unit, they’ll have covered the vast majority of the machine learning field and will be able to autonomously create projects.
What is the job demand like for machine learning skills?
In LA, job listings mentioning machine learning often offer salaries 10% to 30% higher than regular software engineering roles. The goal of our program is not to produce data scientists, data analysts, or data engineers – we’re aiming to graduate engineers who can build advanced programming products and meet the needs of a “machine learning software engineer” job listing. Companies are getting very competitive as the demand for machine learning engineers grows faster than the supply. The main source of machine learning talent comes from master’s degree or PhD programs, so it’s a challenge for companies to find enough engineers to rapidly prototype machine learning products. In addition to being in great demand, machine learning skills are a great accent to any software engineering role.
Is there anything you’ve had to leave out of the Codesmith machine learning curriculum?
We don’t cover neural network libraries in our Codesmith unit, but we can provide resources for students who are interested in learning more, and we highly encourage alumni to take the full machine learning course.
We always hear that you don’t have to be a math whiz to be a good programmer, but do you need math skills to do machine learning?
In the machine learning unit, we don’t focus a lot on math. People get the idea that machine learning is only about math because of Andrew Ng’s popular Machine Learning course from Stanford, which is all focused on the calculus derivation of different algorithms, and how to implement them. But that knowledge is not required to build machine learning projects – most of it is already wrapped up in libraries. So your math ability doesn’t impact your ability to implement machine learning systems.
However, at some point in your career, you may want to develop new machine learning processes, and then that math and algorithms research will help you. But in general, it’s not as big of a requirement as people think.
What’s an example of the sort of machine learning projects that students would work on at Codesmith?
At Codesmith, we mainly focus on portfolio projects. Having a significant portfolio of work is so important to getting hired in machine learning. Students work on projects which involve making graphs that convey information, getting insights from data, and then presenting the insights in a way that’s understandable for less technical people.
Who is teaching this new unit? How will you train your instructors to teach this new machine learning unit? Or will you hire new instructors?
So far I’ve been the sole instructor along with our advisory member Kushaan. I am hoping to continue contributing as long as I am able, plus we have some super talented engineers who have been studying machine learning on their own and have attended all of our machine learning courses. We like to take a multifaceted approach – we have really talented teachers, engineers, and people with math backgrounds, and it’s through all of us working together that we can make it work. It’s a community approach.
How often does the Codesmith team update or add new units to the curriculum like this?
We reevaluate the curriculum after every graduating class and talk about whether topics are still relevant, and whether we can improve. We add content often, like new lectures, or individual focuses, but rarely whole units. So this is exciting!
Can students in both LA and NYC campuses learn machine learning?
So far, we’ve only taught machine learning at the LA campus. Our first NYC cohort starts in two weeks, and we hope to also offer machine learning there eventually. Stay tuned for our separate machine learning course, which we are hoping to launch in the near future.
Are there resources or meetups you recommend for machine learning beginners?
The best machine learning resource for beginners is a YouTube channel called Welch Labs. He’s a fantastic teacher and makes the subject really dynamic. You can learn about the field and the core concepts behind it, without requiring advanced math.
There are also plenty of online courses and interactive online portals. I don’t particularly like those, but some people benefit from them as an introduction to concepts. Those online courses can make you feel like you’ve accomplished and learned a lot, but you have no autonomy, and having to define a task for yourself afterward can be really challenging. I think an interactive course where you build projects is the best option.
It’s that time again! A time to reflect on the year that is coming to an end, and a time to plan for what the New Year has in store. While it may be easy to beat yourself up about certain unmet goals, one thing is for sure: you made it through another year! And we bet you accomplished more than you think. Maybe you finished your first Codecademy class, made a 30-day Github commit streak, or maybe you even took a bootcamp prep course – so let’s cheers to that! But if learning to code is still at the top of your Resolutions List, then taking the plunge into a coding bootcamp may be the best way to officially cross it off. We’ve compiled a list of stellar schools offering full-time, part-time, and online courses with start dates at the top of the year. Five of these bootcamps even have scholarship money ready to dish out to aspiring coders like you.Continue Reading →
Welcome to the October 2016 Course Report monthly coding bootcamp news roundup! Each month, we look at all the happenings from the coding bootcamp world from new bootcamps to fundraising announcements, to interesting trends. This month we are also covering our Women In Tech Snapchat takeover! Other trends include new developments in the industry, new outcomes reports and why those are important, new investments in bootcamps, and of course, new coding schools and campuses.Continue Reading →
Will Sentance is co-founder and CEO at Codesmith, a full stack coding bootcamp in Los Angeles that launched in fall 2015. Before that, he worked as a software engineer, and started his own e-commerce platform. Will says learning to code changed his life, and he wanted to pass that experience and knowledge on to others. Will explains the Codesmith curriculum, what Codesmith looks for in students, and how to prepare for the interview. Also find out what sort of jobs Codesmith graduates are getting!
What were you doing before you decided to found Codesmith bootcamp?
I worked as a Software Engineer at Gem, which is now a Hiring Partner at Codesmith. Before that, I was CEO and cofounder of Ownly, a social e-commerce platform I started while studying at Harvard. Gem is doing some really transformative work in the Bitcoin and Blockchain space for developers– we were finalists at Techcrunch Disrupt. It's a model for Codesmith graduates– exceptional technical talent yet great communicators. I loved the team there.
Why did you want to start a Los Angeles coding bootcamp?
Coding changed my life and the lives of significant people around me. It gave us the ability to build the ideas we dreamt up. People learn to code for many reasons from aspiring doctors who want to change medical document processes to people who love solving puzzles. I love getting to see all of these backgrounds come together to support each other in the program.
Many coding bootcamps these days have been founded by graduates of other bootcamps. After attending Hack Reactor, what did you think was important to keep about the bootcamp model and what did you iterate on?
There are distinct differences. At the end of the Codesmith program, we have our hiring event where companies from across the US come on site to interview graduates. This is very distinctive and is part of why the graduate outcomes are so strong.
The community of Codesmith Los Angeles is also extraordinarily tight-knit, with cohorts of 15 (two running at the same time) selected from over 300 applications. It plays out in the average leaving time each night– most people leave the campus close to midnight, six days a week!
What is the admission process like?
We look for people who have great potential in problem-solving and communication (both technical and non-technical). Before the admissions interview, there's a basic coding challenge online and special harder challenges given out at many of the free classes each week. If you complete these harder challenges, you're guaranteed to get an interview.
Your first interview looks at your interests and commitment to supporting others. This is followed by a technical interview. There you will work through various coding challenges, and we work with you as you navigate through. It's like a mini session of Codesmith.
How are graduates performing in the real world?
The graduates are doing remarkably well. They are doing everything from developing an organic grocery marketplace at Thrive Market, to a life-changing charitable platform at Omaze, to supporting 20m+ football fans at the NFL. By the end of the year, over 200 Codesmith grads will be out building great things with code. Graduates receive offers averaging $103.5k, with 92% hired within in 4 months– mostly in LA and SF. Companies like Whisper, Hautelook and others have hired multiple grads– that's a wonderful sign of the impact the grads are having at each company.
What types of final projects have Codesmith students built?
Students build a portfolio of four projects while at Codesmith– the final being the 'Production Project'. Students have built applications for clients including the Los Angeles School District and the University of Michigan Hospital.
Some of the most impactful projects have been tools and libraries for developers like React Monocle and React-D3 library. These developer projects have trended on Github and Hacker News and are now being used by thousands of developers including Hiring Partners of Codesmith.
Why is it so important for students to actually launch their apps in the real world?
Launching a project gives students production experience– handling user issues, bugs and requiring students to work as professional developers as opposed to working on artificial 'bootcamp' projects. It really makes the graduates stand out– it's a big part of why 95% of graduates join companies as mid-level developers or above.
What is the current class makeup in terms of gender, race, background? Is it diverse?
Students come from a wide range of backgrounds. While many have STEM experience or even Computer Science degrees, there are also students who were creative writing majors or didn't attend college at all!
We have scholarships for students from backgrounds that are underrepresented in technology, and we work closely with Girl Develop it and Women Who Code on free classes and curriculum to help show people that they can aspire to Codesmith whatever their background. But we have to do more.
How do you attract a diverse applicant pool to Codesmith– is that important to you as a founder?
It is crucial. In the coming years, more and more leaders of firms will come from a software engineering background. We have an opportunity to give people from all backgrounds that path to leadership. In November, we are starting a new Women in Technology Speaker Series and new scholarships in partnership with leading technology firms– to further attract a diversity of applications.
How should new students approach Codesmith?
We have high expectations for applicants in their interviews, but we also have an extraordinarily supportive community which is ready to help you reach your potential and prepare for your application. Join us for any of the classes in person or online– whether or not you end up at Codesmith, you'll find your partners in crime to code with.
How does the CodeSmith experience prepare students for job interviews?
Companies expect a lot from Codesmith graduates. They're going to be offering six-figure salaries so they expect people who are capable of solving problems without too much supervision.
The program is designed to prepare graduates for exactly these demands. To do this, the curriculum pushes you to perform at a level that impresses seasoned engineers, both through professional engineering best practices, and a structure that is heavily project-based. This makes you ready for deep technical discussions and challenges at interviews
The second half of the program moves into dedicated job-search preparation– through mock interviews, resume and online profile development– all culminating in Hiring Day.
Tell us about your employer partnerships.
We have a network of over 250 Hiring Partners who are required to have a strong engineering culture and who hire mid-level and above developers. A select group joins onsite for Hiring Day for multiple streamlined interviews. Nearly half of our graduates get offers from companies they met at Hiring Day.
Have you been through the regulatory process with the BPPE in California? Is it important that you become accredited?
The regulatory system is outdated for sure but efforts are being made to develop a new approach. In the meantime, we have begun the process of getting officially accredited by BPPE
What’s next for Codesmith? Are there plans to expand geographically, or to expand the curriculum?
I believe we've barely scratched the surface of the number of people we can bring the ability to code to, as well as the number of organizations and industries that can be transformed by engineers who can lead. I want our alumni to continue to develop as leaders in tech after they graduate. So we're working on new ways to give our alumni all the support they need to make that happen.
Many competitive coding bootcamps require a certain level of coding knowledge or background in order to be accepted into their programs- whether they’re looking for past experience on your resume or require that you pass a coding challenge. For a beginner, it can be tough to get the experience that a selective bootcamp looks for in the application process. There are many ways to learn basic coding (including teaching yourself) but if you want to make sure you’re covering the right material and quickly, then a bootcamp prep program may be for you.Continue Reading →
Move over tinsel town and make some space in the greater Los Angeles area for some of the finest coding programs in the country. While LA once paled in comparison to San Francisco when it came to the sheer quantity of bootcamps, we've seen a surge in LA coding bootcamps this year. There is a wide choice of code schools with campuses in LA's "Silicon Beach" that all bring a unique take on web development training.Continue Reading →
Welcome to the June News Roundup, your monthly news digest full of the most interesting articles and announcements in the bootcamp space. Do you want something considered for the next News Roundup? Submit announcements of new courses, scholarships, or open jobs at your school!Continue Reading →