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 Reviews: Rating 4.84
Recent Codesmith News
- How to Get Into 7 Coding Bootcamps
- How I Got Accepted to Codesmith
- Alumni Spotlight: Brittany Miltenberger of Codesmith
- Start Date
- November 26, 2018
- Class size
- Minimum Skill Level
- Suitable for beginners who are ready to level up to intermediate and advanced material.
- Placement Test
More Start DatesNovember 26, 2018 - OnlineJanuary 7, 2019 - OnlineApply by January 4, 2019
In PersonPart Time
CSX is Codesmith's free online learning platform, providing 100+ hours of curriculum and challenges, workshops and pair programming, video solutions for exercises, office hours and an active Slack community.
- Start Date
- Rolling Start Date
- Class size
- Minimum Skill Level
- Placement Test
- Start Date
- Rolling Start Date
- Class size
- Los Angeles
- Minimum Skill Level
- Beginner - Intermediate
- Placement Test
In PersonFull Time60 Hours/week12 Weeks
- Start Date
- December 17, 2018
- Class size
- New York City, Los Angeles
- Skills Fund
- Codesmith offers 3 types of scholarships -those to students underrepresented in the technology community, Dean's scholarships, as well as scholarships to prior bootcamp grads.
- Minimum Skill Level
- Prior computer science and programming skills necessary - many applicants are self taught through our free weekly JS workshops/online course.
- Prep Work
- 4 weeks
- Placement Test
More Start DatesDecember 17, 2018 - Los AngelesApply by November 19, 2018January 7, 2019 - New York CityApply by December 14, 2018February 4, 2019 - Los AngelesApply by December 24, 2018
191 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.
Click here to log in or sign up and continue.
Cs prep helped strengthen the weaker areas and gaps in my software engineering knowledge and helped me feel more confident in applying for the full-time Codesmith program. The instructor did a fantastic job of covering each topic in a way that was engaging and inspiring. He also was open to answering questions and made sure that some of the more challenging concepts were understood at a foundational level. This was helpful because the people within my cohort all varied in their level of experience. Cs prep also put a strong emphasis on pair programming as a learning tool and I couldn't agree more with how beneficial it has been to my overall growth. The program ends with the building and presentation of a group project. During this time, you get the opportunity to apply what you learned to something more tangible and although it is challenging, it is really nice to see it all come together in the end into something you and you group can feel proud of. I would definitely recommend Cs prep to those who are serious about applying to Codesmith but are still on the fence about their technical communication and foundational software engineering skills. I am happy to say that after I attended cs prep I got accepted into the December 17 cohort and I am really looking forward to all that is to come.
I appreciated that there were students of all different experience levels, and the instructor (Ryan) was incredibly encouraging while still pushing everyone to extend their individual knowledge. The class was structured around empathetic learning which helped everyone feel at ease, and encouraged all of us to really care for the learning of others, not just ourselves.
This review is only for the CS Prep Course but I look forward to reviewing the full immersive. As a person who has completed 3 bootcamp prep courses - including CSPrep - I can honestly say CS Prep had the most advanced curriculum, was the best taught course, and had the best people. I took Fullstack and HackReactor's prep courses before and I'll outline the differences below
- Too easy, instructor didn't care and just recited from powerpoint slides, students weren't serious and dropped after a few classes
- Literally 100 people in a videochat with instructors that can't explain concepts well even though I don't doubt their coding ability. No structure - you're left on your own. The only thing I really got out of it was doing the 150 toy problems which really helped my ability to use array methods but I could have done that myself.
Every program has its cons however and I would say the price is one of them. It is way steeper than every other program but it's really for those serious about the full program and so in that case, it is pretty much a free class.
The second thing is the duration. The concepts taught are way too advanced for beginners so either they need to increase the standards to get in or make the classes longer (which I believe they are considering). I got a lot out from it and was able to keep up but I also took 2 other prep courses before. I believe some of my other classmates were struggling toward the end unfortunately.
After 2 years of self-teaching, I stumbled upon Codesmith while going to meetups to fight the isolation of my solo pursuit. As soon as I walked in, I immediately knew it was exactly what needed. I had been to a lot of meetups and often found myself in an awkward in-between space of not being a super beginners or long time engineer. Codesmith was the first place that I felt challenged without being lost. And the community was hands down the most warm and welcoming I experienced in any meetup.
By the end of the program I'd learned way more than I had in the previous 2 years of self-teaching and felt ready to jump into a career as a software engineer. More importantly, I had tons laughs and made lifelong friends. Codesmith truly changed my life and I'm incredibly grateful for my experience there.
The curriculum to cover there is massive for the amount of time alloted to learn it. While that may result in feelings of being overwhelmed, the supportive environment that they create easily overcomes that. The engineering fellows there are exceptional in what they do, as they were generally amongst the top in skill of their respective cohort, and will stay late into the night to ensure that you understand a certain topic, and the pair programming structure that they emphasize encourages cohortmates to help each other and as a result excels their technical communication as well. That technical communication that you get to practice on through numerous presentations, tech talks, and amongst each other sets you apart from many engineers in the field. And because they cover so much in a limited amount of time, you adjust to become a really fast learner - an invaluable skill to have.
The support that they provide beyond the curriculum is another thing that stands out. The staff goes above and beyond to get you ready for the job market through their hiring program, from the various lectures to mock interviews to extensive resume iterations and more. Codesmith is special not just because of their curriculum and support throughout the program, but the community they foster is what makes it feel like a family and I'll be keeping in touch with the staff and cohortmates for years to come.
It's hard to put the Codesmith experience into words. This whole process is hard, really hard. Getting accepted, the course, and getting a job will all test you but there is no other place I would recommend someone to. As I write this I'm looking at my bags, packed and set for the Caribbean where I'll spend the winter earning a sweet salary, working for a great company and surfing fantastic waves. Here's the thing about other programs and about Codesmith, the proof is in the pudding. These guys know what they're talking about, they've produced the goods over and over again. Make sure to look at the other programs outcome reports and go to Hardparts. Do your research and your decision will be easy. See the staff talk and feel the vibe there, you'll see what everyone is talking about. It's a supportive welcoming community of hard working people. I've been at hiring events with people who've attended other programs and the difference is stark. Trust me, you want the cards in your favor. It's hard, it is and they make it that way on purpose but you'll learn the most valuable lesson there is in engineering, how to learn. And when it's hard you'll find the support you need. The learning curve is steep and the job market for your first tech gig can feel impenetrable. Knowing that your buddy got Google (true story), knowing that your mentors from the program are superstars in their own right and knowing that the answers and support that you need through the process is always there is invaluable. This program changed my life. I'm a better person for what I endured through this process. Buy the ticket, take the ride.
One of the best aspects of Codesmith, is it's ability to create engineering environments where students are able to experience real life engineering situations to build out projects, collaborate with engineers, practice engineering empathy, and learn how to solve problems. As a developer, running into blocks and being able to withstand and overcome them, is one of the essential keys to succeeding in this field, and Codesmith makes sure to drive this lesson throughout your time in the program.
Everyone I talk to, I tell them Codesmith is a wrap around service, because they not only teach you how to build projects like an engineer, but they teach you how to think like one/learn like one/ and have a work ethic like one.
Everything is earned at Codesmith, It takes a lot of hard work and dedication, so get ready to work.
Codesmith make's sure you're equipped with mindset of an engineer, and then take it a step further by equipping you with interview skills and application strategies. The network you walk away with alone is worth the price of admission. I am fully confident, anyone who fully invests their time and commitment into Codesmith, will leave with a stronger network, engineering experience, and the correct mindset to start their career as a Developer in the tech industry as they graduate. By the end of the program you will leave knowing Codesmith is family. Codesmith positively changed my life for the better, it's only been 10 mos since I started studying full-time, I'm already working post graduation and very excited to see what's in store for my future in Tech.
Just to qualify myself, I graduated from Codesmith and do not work for them. Also, I rarely write reviews unless my experience was exceptional. I have 2 words to describe this experience, Life Changing!
While attending Codesmith, I learned more than I ever thought; let’s say it exceeded my expectations and then some! It’s a lot of work, but their curriculum is designed to help you succeed and have the confidence to be a great engineer. It also taught me how to be more of an autonomous developer and have the ability to push through challenges. They won’t spoon feed you, rather give you the tools to be able to solve problems yourself. You’ll have the ability to dive under the hood and have a deep understanding of the latest, cutting edge technologies. This is part of what separates a junior engineer from a senior.
Not only did I gain the knowledge to be an amazing software engineer, but I gained a community that will be with me for a life-time. Being part of the Codesmith network is the most supportive, encouraging, and powerful group in the developer community.
Once I graduated, the support I got from Codesmith during my job search was unbelievable. They touched base with me every week to see how my job search was going and offered to help in any way. There were times I needed one on one help and I had to go on-site; the staff went above and beyond. Even though you have graduated, the staff is there to help you as if you’re still a student; they care about everyone who walks through those doors. Additionally, I needed some help on my job search approach, and Will called me to create a strategy. Shortly after I got my dream job as a Senior Software Engineer.
I am forever grateful to Codesmith as it has changed my life.
Choosing to attend CodeSmith is a choice that I am extremely grateful to myself for making. Let me start of by saying that it is NOT an easy path. Many days are long and arduous, but IS extremely worth it. Going into CodeSmith I was told that it would be difficult but rewarding. You spend upwards of 10+ hours a day there during weekdays and and additional 8+ hours on Saturdays. Throughout your time there you get lectures on the topic that you are going to cover for the next 2 days. Then you work on your own for half a day on beginning to understand the concept that you were just taught and the remainder day and a half with a Pair Programming Partner to help each other cement in said concept. For the second half of the time spent at CodeSmith, you get broken out into teams to work on a project that allows you to dive deep into a topic of your group’s choosing allowing you to more fully develop your ’T’ shaped skills.
Throughout this whole process you have a wonderful support system there to help you out. Not only do you have your peers that are learning right alongside with you to help you out, but you also have the staff (both technical and non-technical) and community of alumni by your side. These amazing people are not going to hold your hand and give you the exact answer that you are looking for but they will give you an answer that will help guide you to the exact answer that you are looking for. Some people may find this as unhelpful and uncaring, but I believe it to be the exact opposite. In life we cannot expect everything to be hand fed to us without really knowing what it is, but instead to expect people to be there to help us understand what we are being fed (I know, probably a weird analogy). But if people just give you the answer to your problem, chances are that you wouldn’t have learned as much as if someone helped you to find the answer out yourself. Plus the feeling of satisfaction one gets from finally figuring out a challenging problem and having that ‘aha’ moment is such a great feeling.
Another important piece of CodeSmith is Pair Programming. Every two days we would be paired with a fellow cohort mate to help each other go through challenges and cement the information that we were just taught. Some really important pieces to this is that everyone learns differently and takes in different pieces of the same information at different rates. By pairing with new people constantly a person could see the same thing that they were looking at but from a different perspective allowing for the broadening of one’s own way of viewing things. Also importantly, is being able to speak out loud what you are thinking/viewing in your own head (technical communication). This is extremely important because it is such a difficult skill to master, yet something that is used everyday in an average workplace. Something that should be practiced all the time even if you don’t have another person to speak your thoughts to, there is the Rubber Ducky approach. It may seem silly but speak out loud to a rubber duck (or any other inanimate object - or a pet if you have one) to work on getting the thoughts out of your head and spoken in an understandable way.
Once completing CodeSmith they don’t just kick you out the door and have you be on your way. Their doors are always open! They really encourage their alumni to drop in and say hi or come by and do any work they may have. There are two checkins that they conduct to see how post-CodeSmith life is going. And additionally, they have started post-CodeSmith interviews. So if your going through your job search and seem to be running into any issues, you can schedule an appointment with CodeSmith to help you do a mock interview, resume review, or some sort of general Q&A to help you move forward. They really love having their alumni be active in helping their current cohorts to succeed.
All of this so far has been about being a part of CodeSmith and in a Cohort. But even before that, CodeSmith offers many avenues of learning to code and preparing people to be a part of CodeSmith if they choose. They have many free workshops that anyone can attend, both in person and online. They also offer shorter courses that aren’t as stringent but still extremely helpful and effective. CodeSmith gives the tools for people to pick up and use.
I personally do not consider myself to be of a Computer Science/Software Engineer background. I got my BA Degree in Criminal Justice. Afterwards I started self studying computer programming and did online courses through a Junior College to get my AA in computer programming. From there I attended many months of CodeSmith’s HardParts every week. This gave me the basis of getting into CodeSmith and they have brought me to where I am today.
Thank you so much to all of the wonderful and amazing people that work at CodeSmith to help people realize and make a reality their dreams to be Software Engineers. You all have helped me so much, way more than I could ever put into words or express to you all. It is such a treat to be able to walk back into CodeSmith and always be welcomed so warmly. Also a huge shoutout to my Cohort!!! You all made everyday a fun and amazing learning environment. I miss you all and proud of everyone that have already gotten amazing jobs and can’t wait to see where everyone else ends up.
A final note to anyone considering CodeSmith and it may seem like a cliche but it is true. You get out of CodeSmith what you put into CodeSmith. It is a journey that you can take from it what you will. For me it is a journey that I would gladly take again.
Everyone coming to CodeSmith is looking for a change, and this makes for an environment that is unrivaled by any other that I have experienced in my life. By design, CodeSmith is a cooperative experience and cultivates a culture in which everyone is helping each other to succeed, be it the senior cohort providing voluntary lectures to help the juniors or one of your own cohort mates taking time to walk you through when you are stuck. The community that develops is truly inspiring and entirely made up of people I wish to stay in contact with. Unlike other boot camps in which the fear of getting a job at the end creates competition, CodeSmith’s outcomes mean that it is an environment of cooperation. At boot camps where 50% of graduates get a job, there is a need to be in the top half in order to have a chance for a job in the end. However, when the outcomes are high enough the environment changes from being one of competition to one where everyone is trying to lift up those around them as much as possible, creating a group of friends rather than a collection of competing classmates.
Every single person in my cohort provided value, not only to my time at CodeSmith but to my life. I have fond memories of every person I interacted with, and I intend to keep in touch with all of the people that were a part of my CodeSmith experience. The staff also played an important role in shaping my CodeSmith experience, through the warm emails when I was just starting the application process to all of the people that taught. Everyone on the staff is happy to be there and outwardly projects their love to help others succeed. It is not the cold cookie cutter environment that many boot camps have become, but one driven by people who want to see a wonderful change in the life of everyone who comes through. The personal touch here really does a lot in creating an environment where you feel great about putting your time.
I am not a fellow, but the idea thrown around in reviews that reviews by fellows somehow don’t count is misleading. Becoming a fellow is a way for CodeSmith graduates to give back to a community that has already given them so much. Reviews left by fellows show those that are truly dedicated to the CodeSmith community, willing to give so much back to the community that they truly love. However not being a fellow doesn’t mean I love that community any less, I can honestly say that coming to CodeSmith was one of the best decisions of my life.
Another major focus of CodeSmith is technical communication. Being good technically with the material isn’t enough at CodeSmith, which has a focus on enabling its students to be able to succinctly explain complicated subject matters. It is this focus that makes CodeSmith graduates stand out; while engineering prowess is important, being able to easily carry a conversation about technically challenging concepts means CodeSmith graduates are able to pass technical understanding to others an invaluable skill. CodeSmith accomplishes this growth in technical communication through the way its units are designed.
CodeSmith structures its units to grow, community, technical communication, and technical understanding. CodeSmith’s use of pair programming enables each lecture to be a practice in technical communication and technical understanding. In every unit, you are faced with a challenge in understanding new material, and effectively communicating that new material to another person. It also grows the community aspect of CodeSmith, as approaching new technical challenges with another person is an immense bonding experience forming a new connection and further engrossing you into your cohort.
Everyone’s journey with programming will be unique but if you are serious about learning it, I wouldn’t recommend any other place than CodeSmith.
CodeSmith provides a community of people looking for a change, those interested in progressing forward. Additionally, it provides a team of people who want to help you on your journey for change, and it provides an environment for learning deeply about the intricacy of the tools you use, rather than just an overview of how to use them.
I thought attending Codesmith would just be another educational experience, but it really is so much more. Everybody at Codesmith is dedicated to not only helping you learn but making sure you succeed. The people that they let in are amazing and everybody brings everyone else up. It will probably be the hardest you have ever worked, but what you will gain is a deep understanding of not only coding but how to learn how to code. Oh, and you will have a community/family for the rest of your life. If you are on the fence do yourself a favor and come talk to the people at Codesmith and I guarantee that you will be blown away by the culture just as much as the technical knowledge that everybody learns and has.
To give you some background of me and what I came to Codesmith with: I graduated with a dual major in Computer Science and Business in college and had worked for startups in business roles after graduating. I got tired of being on the business side of things and wanted to get my hands dirty and use some of the CS skills I gained in college. But having had no technical internships or professional coding experience, I knew I needed something to give me credibility to get a technical job as a post-graduate applicant.
Codesmith gave me that baseline credibility and a lot more. Being able to speak in depth about full stack frameworks and develop projects that are based around bleeding edge technologies was really important in my job search. The critical difference between Codesmith and college CS courses is that Codesmith gives you practical skills and understanding while my college courses always stayed at a more theoretical level. You need to be able to talk about ways to build a system and their benefits/tradeoffs if you want to break past the junior programmer level, and I don't believe that's possible with a pure undergraduate degree.
For people considering Codesmith who have a background like mine (technical degree, no technical experience) I think the numbers make a lot of sense. You may be thinking that devoting 3 months and the cost of tuition is a big investment (and it is), but if I would have tried to get a job without Codesmith it would most likely have been a junior level job and paying much less than the offer I got now. Given that programming jobs don't always promote very fast, going it on your own and starting with a junior level job means you could be stuck at a lower salary and wouldn't get to work on meaningful technical challenges for years. Before Codesmith I did try to self teach some web development, and I have to say there's just no feasible way you could teach yourself as much and as fast as you would learn from Codesmith.
So to me, it's a logically good investment. And as you can see from other reviews, the support network you get from being in this community is something really priceless. I plan to keep in touch with my cohort mates and the Codesmith staff for years to come. It really is a life-changing program. So for those of you who aren't happy with your career and dream of getting a cushy, spoiled developer job, Codesmith is the path for you.
The underlying principle that Codesmith embodies, providing a welcoming and supportive network to grow engineers to their greatest potential, is so simple yet at the same time elegant and substantial. It’s beautiful -- the process of exponentially growing engineers during this short period of time is impressive, but fostering an environment that creates a community of individuals who care for one another and support each other after the program is far more powerful.
The depth of knowledge Codesmith challenges individuals in their capabilities in programming is wild (from personal experience). But the foundation of moral support Codesmith community exemplifies is even wilder. The amount of responsibility the staff takes on to make sure every individual succeeds does not go unnoticed. They have open office hours to check on your progress, dedicated fellows assisting with help-desk questions, a stellar mentorship program, and a supportive community of engineers that will help you through the process. This isn’t to say they will hold your hand every step of the program -- you gotta work for it on your own. But when you hit a roadblock, either technical or non-technical, Codesmith is there to help. My cohort and I would not have grown because of the challenging curriculum taught, but because of the positive environment that Codesmith demonstrates. The mentorship Codesmith has given has been a core feature of our success.
Each day of the curriculum was a technical challenge on its own, but working through the blocks with pair programming and support of each other made this experience so enjoyable. Every engineer exemplifies the five core skills Codesmith vets for during their admission process (technical communication, problem-solving skills, engineering empathy, handling technical and non-technical blocks, technical knowledge) and is always there to help with your growth as an engineer. Codesmith is special not just because of the rigorous curriculum it offers, but the close-knit community of engineers it fosters with every cohort and beyond. For myself, after three months of trusting the process, I was fortunate to receive a job offer as a Software Engineer (Front-end) less than a week after graduating Codesmith. This career change has made me euphorically happy to know putting in a dedicated amount of hard work and perseverance with this program gave me so much more than what I was looking for. 11/10 would do it all again ya’ll
Reasons I'm glad I chose Codesmith:
3) I'm a self taught developer, had no professional technical experience, and there is no way I could have learned at this level by myself. They teach you to learn and push through challenging blocks - you will not be spoon fed anything and you will be forced to learn things the hard way. That being said...
4)You are never 'on your own' in terms of learning. There are frequent check ins to make sure you understand the material and they will sit down with you and go through your challenges to help you
5) Their focus on technical communication also stands out from other bootcamps and makes you more likely to be considered for mid to senior roles after graduation - you are able to communicate your skills and mentor others much more effectively
and last but not least...
6)The people here are some of the best people I've ever met. Residents all share a deep curiosity and drive to become the best developer they can be but also an astounding empathy and willingness to learn by teaching others. I was someone with the least amount of technical experience and I never felt judged or belittled by others - only encouraged and supported. The staff is also incredibly dedicated to resident's learning.
I couldn't recommend Codesmith more highly to someone from my background (no professional tech experience) though I did have to hustle a great deal.
Fast forward to today, I have one more day left in the program and I am so thankful for taking the decision to join Codesmith. At Codesmith, they nurture curiosity and pay a strong emphasis on understanding why a technology works the way it does. They focus on imbibing a growth mindset that helps you become a great problem solver who can learn any technology on the go. Everyone on the staff is AMAZING, super supportive and they go above and beyond to ensure that every person in the program succeeds.
Before I began Codesmith, I was practiced and continuing to push my limits with JS algorithms and working my way through building my own apps. Codesmith definitely took my skills up to the next level and maybe even helped me go up multiples and multitudes of levels! Wherever you're at, it's definitely a place to level up with your technical skills and knowledge. It is true what people say, it is a place to "learn how to learn." I now feel confident that with a little time and reading up on documentation, I can figure out nearly anything in code. That is not a feeling I had before I started the immersive. I also feel that Codesmith pushed and continues to push me to think about code in a sophisticated and nuanced way. It's not just about building fullstack applications, it's about developing a deep understanding of how code works, how the data structures and algorithms are built, and which context favors which technology/stack. There's also an aspect of continuing to move the goal-post further and further as you're getting more skilled, so it keeps you humble. If you have the time and opportunity to familiarize yourself with various JS frameworks and libraries before starting, that can make a big difference in your experience, or just go in with a feirce can-do attitude because you will need it! Very rigorous and challening curriculum. Overall I'm very happy with my experience! Particularly the fellows and instructors are very helpful even at late times in the evening and over Slack at random times. The cohort was such a talented and phenomal bunch, the type of people you would want to spend 12+ hours a day with. It is also worth mentioning that Codesmith was very accommodating to myself and others who had extenuating circumstances throughout the 3 months. Life can be unpredictable even for these isolated 3 months and it's good to see that they have their students' backs. Overall very grateful to Codesmith for an amazing experience!
I had an incredible time at Codesmith! They truly go above and beyond for their students by not only meeting with everyone until late in the evening and during meal breaks to help them with any material that's challenging, but they also are amazing at helping when any unforseen circumstances come up for the students. Additionally, they truly prepare you for having a great career where, for example, just this morning I spoke to a recruiter about a job at a large sports company (ideal for someone like myself who is a HUGE sports fan) that uses the exact technologies we've spent a ton of time on here and I was disapointed by the fact I won't take the job unless they move up from the $90-100k a year range they offer candidates for the position. I could not be happier with the experience I've had here at Codesmith!
If you want to be a better software engineer that knows how to tackle any problem and at the same time be surrounded by brilliant, empathetic individuals, Codesmith is the place to be.
Attending Codesmith really taught me how to learn any tech stack and apply it with confidence. There were several times I doubted myself and my ability, but I trusted the process here and it really worked because they teach you to question why and how every line of code works so that you come out of it with a solid foundation to solve any problem. Not only did I gain foundational knowledge, but technical communication skills as well—I love that they really emphasized technical communication here because it’s truly invaluable when it comes to interviewing and working in teams.
The moment I first checked out Codesmith during one of the hard parts workshops, I was truly blown away by the outstanding community, which was another reason why Codesmith in particular really stood out to me. It was almost unbelievable how much everyone here genuinely wanted me to succeed and was willing to answer any questions I had, as well as offer their time to pair program and learn alongside me. Even during + after my time as a resident, I received continual support from the staff, which also helped to foster a supportive culture and collaborative learning environment amongst my peers—something I really welcomed after having been a student/working in highly competitive settings. Because the interview process is so rigorous, you really do have the fortune of growing alongside people who are talented, intelligent, hardworking, kind, and empathetic individuals that will magnify your own abilities as an engineer.
Response From: Phillip Troutman of Codesmith
The second half of the 3 months were dedicated to projects. The projects helped cement the concepts learned in the first half of the course. The final project was to build a developer tool. In other coding academies, teams are given free reign on what they build. I’ve seen some horrible ideas being implemented. At Codesmith they vet your ideas, making sure that they’ll be good enough, challenging enough to impress hiring managers and Senior Developers. My team had most of our project ideas rejected. At the end, our project ended up being a huge success. We were trending on Github for a whole month. When it came time to look for jobs, the engineers at some of the companies that I applied for knew about my project and have used it. That really helped in having something to talk about during these interviews.
Today I work at a Fortune 100 company, making a salary that is in line with the typical Codesmith graduate. I’ve been here since January 2018. I was hired on as a Mid-level Front End Engineer. When I first got there my coworkers gave kudos on how fast I was able to learn the codebase and create value.
Recently I’ve joined a new team within the company and I learned that there are several coding academy grads in my area. I found out that they’re making about half the salary that I am making. Two of my teammates have masters degrees in Computer Science and I’m keeping pace with them. I’m being trained in the J2EE stack and even though I had no experience in Java my teammates are surprised at how fast I was able to pick it up. This is all because I’ve developed solid programming fundamentals and the skills to learn new languages and concepts fast at Codesmith.
Codesmith was the best decision that I’ve made in my life. It literally transformed my life and career. The last time I checked, my cohort mates are all happily employed. Big Thanks to Will Sentence the CEO and the staff for creating a coding school that is so effective. I’m sure they can expand to every city rake in huge profits from their current reputation but they’re not because Will and his staff obsess over the quality of the program, making sure every student hit their potential.
Response From: Will Sentance of Codesmith
Webpack monitor was an outstanding project - I highly encourage people to use it http://webpackmonitor.com/
Keep up the good work at USAA
Before learning about Codesmith I was actively researching web development programs in NYC to see which seemed like the perfect fit for me. I applied and was admitted into some of the more familiar ones, but something about each didn’t quite fit what I was looking for.
While doing some research, I came across a comment on Quora that mentioned Codesmith. I wasn’t familiar so I did a quick Google search and read over their site. After going through the curriculum description, I was pulled in - it had everything the other programs seemed to be lacking. More so, the projects students were producing were tools made to solve real problems egineers face. Projects I could never fathom students producing in a 12-week bootcamp. I was hooked and decided to apply.
After going through two rounds of technical interviews, I was admitted to Codesmith’s April ’18 residency. It was challenging, but it was the best experience I could’ve asked for. I left with skills I never imagined myself having, and close friends I can’t imagine myself without. The curriculum is set up in a way to give you the training needed to hit the ground running day one on the job as a software engineer, and the community is built in a way so that you constantly feel surrounded by a group of peers who support you and, believe me when I say it, after a week together you'll consider some of your closest friends.
If you’re looking to accelerate your career from being a junior to mid/senior level engineer, or are coming from a different background entirely (like me), Codesmith is the place for you. In just 12 weeks you’ll leave with the experience qualifications of a seasoned engineer.
Feel free to contact me if you have any questions regarding the program, its curriculum or my personal experience at Codesmith.
Response From: Phillip Troutman of Codesmith
As someone trying to break into an engineering role, attending the JS Hardparts workshops has been invaluable to my growth as a programmer. Spending up to 2 hrs breaking down snippets of code line by line helped me understand why JS works the way it does. I could have read multiple articles on specific JS concepts but none of that would have been helpful if I didn't firmly grasp the fundamentals and truly understood how JS works underneath the hood. Spending the time digesting and truly breaking it down allowed me to see connections between specific JS features more clearly. What really makes Codesmith special it seems is the emphasis making engineers understand the why behind programming instead of just saying that's how JS works. Will is also an extremely engaging and passionate instructor, which makes the learning experience that much better. His teaching style and informal nature of the workshops is a big part of why I've repeatedly attended these events. Even though I am not a part of the CodeSmith program, I always feel welcomed and am extremely grateful and appreciative of the support Will and his team has given me!
Starting the journey
I first found Codesmith while looking for a great tech community in NYC. While there are many groups around and many people to meet, I found myself often dissapointed and frustrated for a variety of reasons. That is until I found Codesmith. The extended community around Codesmith is stellar and filled with people at all skill levels who are supportive of each other.
It was surprising, but I could see myself growing in Codesmith's residency, whereas the majority of schools on coursereport could offer me very little in terms of growth.
I found the application process very balanced, transparent, and fair. A person with little experience, but lots of aptitude can pass, while a person with lots of experience, but little aptitude would be challenged.
What drew me to Codesmith is their focus on excellence and quality. My first interaction with Codesmith staff was a message I received on meetup welcoming me to their meetup group. I replied with “This is probably a bot, but thank you for the welcome …”. The reply I received promptly summarizes my experience with Codesmith, “Alex, believe it or not, I’m not a bot. Here at Codesmtih, we do things right.”
The cohort sizes are smaller and the support from staff is tremendous. There is roughly 1 mentor for every 2 residents and the residents themselves are often quite astonishing in terms of technical ability, but also communication and working with team dynamics. The diversity of residents is a big plus and gives everyone a chance to struggle and learn. The teaching philosophy can be uncomfortable if you are not used to a strong focus on active learning, but, in my experience, is a phenomenal way to learn.
The experience is often uncomfortable and requires hard work and careful judgement in how you approach your growth and the growth of those around you. At the same time, the support is tremendous and the residents are carefully selected to thrive in such an environment. The general culture is one of “work hard, play hard” and does not get stifled by perfectionism.
Codesmith taught me new ways to communication, learn, present myself, problem solve, and put me in touch with an excellent growing community. I firmly believe that the trajectory of my growth has vastly improved for at least the next 5 years.
The hard parts
Every program has trade-offs. I think the major trade-off in Codesmith is that they put learning first and happiness as a close second. The people are wonderful and supportive, but the curriculum is not designed to make you happy. If anything, it’s designed to make you feel the stress and uncertainty of working in a production environment forcing you to develop consistent problem solving approaches with unfamiliar technologies. Watching your teammates struggle and figuring out how to constructively help can be difficult, but ultimately everyone seems to get through it.
On the other hand, it seems clear that this focus on real work is a key to Codesmith’s amazing outcomes.
I was a student from cohort 1 for the 3-week Deep Learning course. I dropped out after two days because it wasn't worth the time investment. I had already spent my money by that point (no refund). Since leaving around a month ago, no one from the program has reached out to me for why I left. I was hoping the stellar reviews here would carry over for the new Deep Learning program, but that was not the case. My main concerns are in the structure of the curriculum (as of July 2018).
It’s a 3-week course, but taught at the pace of a 12 week course. Tensorflow is not covered in the first week, let alone the first day. We spent the first two days on a very basic NN with no backpropagation. No backpropagation means weights were decided manually as an exercise. That’s like becoming an animator by adjusting individual pixels. Like learning astronomy by counting the stars. Attacking someone by hurling a gun at them. Rubbing two matchsticks together to create a fire.
I will say there is nothing fundamentally wrong, it was just executed poorly. The idea of an online Deep Learning course is a great one and I hope Codesmith does not give up on this. Here are my suggestions.
- There are many excellent free resources like Andrew Ng's Machine Learning course, Stanford Computer Vision course, and Fast AI. The curriculum of Codesmith was similar, but at a lower quality and they charge money. This is my biggest concern. I wish Code Smith followed my next point.
- Leverage how young the field is. Advances happen so quickly that many resources aren't available on the cutting edge. What is posterior collapse or KL Divergence? Are Sigmoid's still useful or should I only use RELUs? Goodfellow just released his code for his latest paper, but I can’t understand a line of code.
- Use abstraction. There are many libraries in Python that can make an image classifier with over 90% accuracy in a few lines of code. I agree that a basic understanding of Neural Networks would help increase performance. However, a significant amount of our time was spent on coding functions that are included in Numpy.
- Math isn’t needed. It doesn't take advanced math to understand the basics of a GAN. Yet many resources teach it poorly with a lot of mathematics. Adam gradient descent can be explained with a momentum metaphor. Feature space can be visualized with Google Deep Dream. To explain matrix multiplication is a waste of time for both math background and no math background students (1 lesson is not so effective). I would suggest to either choose to not need advanced math or limit the audience somehow.
- The instructor did not seem extremely experienced. I don’t mind this, but if that’s the case I would prefer the fate of the course in more than one person's hands. It seemed to be hinted that the instructor was the sole creator of the course material. What?! Give him some help! Unless he got a degree in this field or has direct work experience, he can’t take on AI by himself.
- Create a big picture, work towards a project. The majority of people would be very satisfied if they create something cool. An AI that beats me at chess, a model that can classify music into genres, an RNN that can write Shakespeare-like prose. We coded a Neural Network from scratch in the course, but this is covered by so many resources and has been done by thousands of people.
- Furthermore, I would suggest the precourse include setting up cloud computing (like Paperspace) on a local device. A laptop is pretty limited in what it can do. Also, Cloud computing setup is not so straightforward and people may need help. Any course that does not teach this is seems behind the times and limited in scope.
Response From: Will Sentance of Codesmith
The curriculum was designed by both the instructor Ryan Smith and Alex Zai, a machine learning engineer at Amazon responsible for building out Amazon’s MXNet machine learning framework.
The approach of Codesmith is to go under-the-hood of frameworks like Tensorflow so that you can think as an engineer. This was the goal of the deep learning program too - focusing on a first principles understanding rather than a lightweight use of tools where there are helpful youtube getting started guides available for free.
Understanding from first principles the intuitions of deep learning and specifically neural networks is what distinguishes machine learning engineers who really understand and can optimize the tools they use.
The team reached out to you a number of times after you stopped attending class. I know Ryan enjoyed the brief time you had working together in that first day and I hope you can keep in touch and keep cultivating your interest in deep learning techniques.
If there is one thing that I can really say that I got from my 12-weeks at Codesmith, it is the fact that I had developed an engineering mindset. Having the ability to decompose a problem and break it down to chewable / understandable parts and then formulate a solution while knowing the pros and cons of that approach and on top of that being self-aware of when to ask for help is something that will always be relevant in software engineering.
Life Before Codesmith
Due to my wonderful experience at Codesmith's Hard Parts Session and the high level of technical communication that I observed plus my further research that indicated that Codesmith residents will be making a developer tool to contribute to Open Source, it didn't take me too long to decide that I really wanted to go to Codesmith. Long story short, I got in as part of the first cohort of Codesmith NY.
The immersive (12 weeks) was grueling and yet had a "chill" environment. It's like "a work hard, chill hard" feel. Lol
The first six weeks was all about learning Codesmith material. I had a difficult time grasping them as we were going by fast and had to context switch every two days. In addition, I kind of felt the Imposter Syndrome as I often compare myself to other cohort mates who were breezing the two day modules, but thanks to Codesmith's warm, supportive, and reaffirming culture I was able to bounce back and eventually diverted all my energy to the task at hand (Developer Tool creation).
The second and final six weeks were all about our production projects (creating a developer tool as per each team's vision and MVP requirements). In this period, Codesmith gave us one week to brainstorm before each team submits their list of ideas. Once that process was complete, we spent the remainder of the last 6 weeks coding the tool out and beat bugs and solved technical challenges on our own.
Life After Codesmith (Job Search)
After graduation, I wasn't confident about the things I learned in Codesmith as I felt like they went over my head. In spite of that, I just followed the Job Search tasks that Codesmith gave us to do and it helped me immensely. I soon realized that I knew more than what I thought I did. It was just a matter of choosing the right terms and phrases to accurately articulate the knowledge that is already in my head.
Having said that, the Job Search process was filled with its ups and downs. From my experience, it took me a while (~4 months) before I gained traction ( getting an offer) in my job search but Codesmith staff was there to check up on me and offer feedback. Also, I know for a fact that Codesmith will never leave you alone after you graduated. I had a first hand encounter with that because two months after graduation I was seriously contemplating to go back to my prior field and it was at this time when Will Sentance, the CEO, called me personally and asked me how I was doing and then gave me pointers regarding my job search moving forward. So I tweaked my approach a bit, and kept on keeping on and eventually got an offer about 2 and a half months after the call.
To sum it all up, even after graduation, you’ll never stop being a part of Codesmith. One way or another, they will try to assist you and you will always be welcome to hang out/ set a base camp for your job search. Lastly, you may hear that on average, grads typically get a job in about 3 months. It's a fair estimate BUT should you ever find yourself exceeding the 3 months, PLEASE DO NOT CONSIDER YOURSELF AS A FAILURE. Just keep applying and learn from each interview that you have. Turn the grey squares to green. You'll get there.
Response From: Will Sentance of Codesmith
Thanks also for coming back for the alumni panel - your insights were excellent - of course
I have always had a love for technology and, after 17 years at the same company, decided to make a huge career change and jump into software development. After vetting several Southern California programs, I decided to move forward with Codesmith. After having competing offers, and accepting a senior level position, I don't know that I could have made a better decision.
In addition to the recommendation from a few hiring partners I knew prior to applying to the program, one of the more impressive factors in this decision was the overwhelmingly positive experiences and outcomes of alumni. I don't know that I have spoken to anyone since beginning the program that would not recommend it to a serious, hard working person looking to make a change, myself included.
I doubt I could say much more than most of the other reviewers have but will hit on a couple items I believe aided in my journey.
This is something they try to make everyone become competent in. It is such a valuable skill and they really ensure you are as clear and technical as you can be in order to fully communicate your ideas and thought process. Personally, as someone who initially struggled with this, all six of my interviewers (for the position I ended up in) commented on how proficient and clear my communication is.
Analytical problem solving:
By design, mentors will rarely give a straight answer. By guiding students to proper documentation or asking pointed questions, mentors are able to put students in a problem-solving mindset in which they are able to more adequately approach challenges and become independent, self-sufficient engineers, much like they would be in the wild. There are exceptions to this rule, however, the aim is to have students struggle and learn rather than go through a three-month tutorial.
Support and community:
Codesmith strives to create an inclusive and supportive environment which allows for an incredibly competitive culture in which everyone also wants to see each other succeed and grow as much as possible. This was very refreshing coming from an industry which maintained a dog-eat-dog, toxic mentality. Beyond this, you really do make your way in to a pretty powerful network of engineers, and a community of alumni which continue to maintain a presence after the programs conclusion.
If you have the opportunity, Codesmith is certainly one of the best programs you can go through. Be prepared for a lot of work, but the payoff is absolutely worth it.
Our latest on Codesmith
So you’re thinking about applying to a coding bootcamp. What should you expect in the application and interview process? And how do you ensure you get accepted to your dream coding bootcamp? We invited representatives from 7 coding bootcamps to ask all the tough questions about getting into coding school. In this live panel discussion, hear tips and advice about coding challenges, prep programs and more from Flatiron School, New York Code + Design Academy, Fullstack Academy, the Grace Hopper Program, Hack Reactor, Galvanize, and Codesmith! Watch the video, listen to the podcast, read the summary or transcript.Continue Reading →
Am I ready to apply to Codesmith? Do I need to have programming experience? What happens if I fail the technical interview? How do I improve my “technical communication?” Will Adamowicz just graduated from Codesmith’s 12-week Academy and spills the details about the application process (he’s now a Codesmith Fellow, so he knows the ins and outs). From basic steps to interview questions to preparation tips, Will answers all of your questions!
What are the steps of the Codesmith Application?
- Fill out an online application or attend a workshop at Codesmith to get a challenge code. That code sends you to a special application that guarantees you an interview.
- Attend a non-technical interview (can be done in person or over video call)
- Attend a technical interview (can be done in person of over video call)
How long does the Codesmith application process typically take? How long did it take you?
From the moment you apply to the moment you complete your non-technical and technical interviews can be as short as a one week. This is rare, though. Most students will plan several weeks – if not months – ahead to apply. In my case, I had a particular start date in mind and planned about two months ahead of that start date.
Codesmith accepts students on a rolling basis, though the process tends to depend on how much demand there is for a particular cohort. You’re definitely welcome to apply to a cohort several months in advance and you can also defer an acceptance up to three months.
What goes into the written application? Does Codesmith require a video submission?
The written application is fairly straightforward, just logistical info, a few essays about your background and passion for technology, and an optional coding challenge. There is no video submission required.
Can you give us a sample question from the non-technical interview?
One of the questions in my non-technical interview was: “What are your long term goals in software engineering? What do you want to do with it down the line?”
Is Codesmith looking for a specific technical background? What types of backgrounds have successful Codesmith students had?
About 50% of students at Codesmith come from engineering backgrounds and 50% come from non-technical backgrounds. Codesmith doesn’t look for any particular kind of background. I’ve seen everything from actors, school teachers, grad students, hotel managers, EMTs, and the list goes on. Having a technical background can help, of course, but there are so many factors that go into being a good engineer that it is not really a significant indicator of how successful you’ll be.
I had no coding background but studied logic and mathematics which definitely helped me in the admission process. Since I didn’t know anything about programming, I prepared for about three months before applying to Codesmith, doing three to four hours of study every single day. I had just come out of grad school writing long papers about analytic philosophy so I got accustomed to working alone and staying disciplined, but if this were a few years earlier I would have definitely signed myself up for a prep course to have some kind of accountability while studying.
Does every applicant get a Technical Interview?
Some candidates may not be a good fit for the program – in that case, they won’t get a technical interview. As a Codesmith Fellow, I interview candidates, and we generally look for excellent communicators who are also driven and passionate about wanting to become software engineers. We also want to accept team players. You’ll end up working very closely with a small team, so being able to work well with others is one of the biggest indicators of whether you’ll be a good candidate for Codesmith.
What can an applicant expect from the technical interview? Is there a coding challenge?
The technical interview involves answering a series of increasingly harder coding challenges. There is an endless list of challenges, so the goal is not to simply race through and try to get to the (imaginary) end. Much more important are things like technical communication and how you approach a problem that you don’t know how to do.
The engineer conducting the interview will stop after one hour and then send their notes off to the admissions team.
Can you give us a sample question from that technical interview?
Can I apply more than once if I fail the technical interview?
I think the current Codesmith acceptance is about 5% – I rarely see someone pass the technical interview on the first try. You can do the technical interview up to three times (if you fail the first and second). If you don’t pass, then the admissions team will give you feedback and resources to help get you up to speed. They’ll recommend a number of weeks for you to prepare until your next interview but you’re welcome to reinterview whenever you’re ready.
Most people fail the first interview, so don’t be discouraged if you don’t pass. Many people who fail their technical interview have even gone on to become Codesmith Fellows. More commonly than not, you’ll need to work on technical communication, so pair programming is one of the best ways to learn to talk through your ideas as you code them.
How do I get better at “technical communication?”
One thing that worked really well for me was recording myself doing algorithms and rewatching my problem solving. It was definitely painful at first but it helped me learn how to discuss a higher level strategy and talk about my implementation while going through a problem, which is an entirely separate skillset from the analytical thinking involved in solving a problem.
What resources do you suggest applicants use to really ace the technical interview?
The CSX platform (Codesmith’s online learning platform with instructional videos and coding challenges) is very good for preparing you to get in. Go to the Hard Parts weekly workshops or attend online – that’s one of the best ways to start working on technical communication. There is also a paid two week part-time online course called CS Prep that focuses on everything tested on the Codesmith technical interview and other qualities the admissions team looks for.
I would also recommend using websites like FreeCodeCamp or Codecademy to get the basics down, and to practice algorithms on coding challenge websites (Codewars, Leetcode, HackerRank). I’m also a big fan of this website, ReactiveX, for getting more accustomed to using higher order functions. It’s just a single tutorial but I found it very helpful in preparing me for the interview.
When do you think a Bootcamp Prep program is worth it?
Getting experience with pair programming is super helpful, so I would definitely recommend going to a prep program like Hard Parts or CS Prep if you think you’d have trouble sticking to a daily routine and want a little more guidance on the kinds of materials to study.
I was working in a kitchen in Kyoto in Japan when I started studying to get into Codesmith and soon realized I couldn’t get any productive work done after my shift, so I was getting up at 4:30am every day and practicing algorithms for a few hours every morning. I actually got my first opportunity to pair program by attending Hard Parts online and ended up being roommates during the program with my first pair programming partner. He was in China at the time while I was in Japan and next thing you know we were both in Venice, Los Angeles in the same cohort.
As a Codesmith Fellow, do you take part in the interviews? How do you evaluate an applicant’s future potential? What qualities are you looking for?
Does Codesmith accept international students? Do international students get student visas/tourist visas to do the program?
Yes, there have been several international students who have gone through the program with tourist/student visas.
Even after Brittany Miltenberger earned a bachelor’s degree in computer science and worked professionally in software (QA, Release Engineering, and Front End Web Development), she felt she needed to go to coding bootcamp to learn more advanced, full-stack web development skills and technologies. She chose Codesmith in Los Angeles, because she thought it would be a challenge and enrolled in the two-week Live Online CS Prep course to prepare for the technical interview. Find out how Brittany enjoyed learning remotely with others before she moved to LA, how difficult the Codesmith technical interview was, and her plans for the future!
Walk us through your career and education background. What did you do before Codesmith?
I have a bachelor's degree in Computer Science from Simmons College in Boston, Massachusetts. My interest in coding actually stemmed from my original major – music and audio production. Recording music with computers piqued my interest in software and UI/UX design. I found that I enjoyed deconstructing and building the software more than recording the music, so I switched my major to computer science.
After college, I became a Quality Assurance Engineer for a music production software company in Boston. It was a perfect fit and I was so fortunate. I was so thrilled to blend my interests in music and software. As a QA Engineer I was primarily conducting test scripts, then I got promoted to a Builds Release Engineer, a more technical role maintaining automated software builds, scripts, and creating installers.
Recently, I've been working professionally in front end and interactive web development. Over the past four years, I've built software for many aspects of learning – creating, developing, designing eLearning courses.
You had those technical skills and a computer science degree –why go to a coding bootcamp?
What made you choose Codesmith over other coding bootcamps?
I began by searching on Google, and comparing and contrasting different programs. I came across Course Report and read different reviews. Codesmith had stellar reviews; in particular, I liked that Codesmith prepared students for mid-to-senior level programming careers, which was exactly what I was looking for. I wanted to enroll in a program that would be challenging for me, where I would learn a lot.
In my last job as a Front End Web Developer, I worked remotely, so I wanted to do something in-person with other classmates. The two-week CS Prep program was remote and was excellent, but for the actual bootcamp, I wanted to do something in-person (Codesmith is 12-weeks, in-person). I live in Washington, DC now, but the Codesmith classroom is in New York and Los Angeles, but I was really eager to pursue Codesmith and relocate. I chose Los Angeles because I lived there a few years back, and it’s a great tech hub, especially in the Venice area and Silicon Beach.
Why did you decide to do Codesmith’s CS Prep program before applying for the 12-week coding bootcamp?
I enrolled in CS Prep to prepare for the Codesmith technical interview and to boost my confidence. I was so set on going to Codesmith, but since I wasn't in LA, I figured that enrolling in a prep course like CS Prep would be a great introduction – I could meet some of the fellows at Codesmith and other applicants. I was 99.9% sure I was going to enroll in the full program and CS Prep helped me confirm that.
I attended CS Prep from April 16th to 29th from DC, then interviewed for the full-time program in May. I flew to Los Angeles to do my interview and I got accepted. I start the full-time academy in LA on July 23rd. Right now, I’m starting a lot of pre-work and I'm so excited!
How was the application and interview process for the Codesmith CS Prep?
CS Prep does have a selective admissions process. At first, I thought, "am I even going to get in?" But actually, I found it to be a wonderful interview process. It was pretty stress-free. There were two parts to the application process. First I participated in a non-technical interview, to discuss my coding background and software engineering goals.
After that, I had the option of submitting short essays about my coding ambitions or completing a coding challenge. I chose the coding challenge. I’d been working through a lot of Codesmith's free online resources and I figured the challenge would be a good indicator of my readiness.
How did you feel about the prep course remote learning experience?
I did the live online CS Prep course alongside a group of other students. It was really cool because we used the video conferencing software Zoom, so for each class I could sign on and say hello to everyone – it was like I was in an actual classroom, but virtual. It wasn't a passive lecture learning experience – everyone could see each other and talk to each other so it was interactive. I always had to make sure I was listening and staying on track because, like in a classroom, I could get called on to answer questions. I found the whole experience to be so immersive. It was really like we were all there in person – it was awesome.
How many instructors helped you during the Codesmith CS Prep program?
We had four different instructors over two weeks, which was really cool. Some of them were Codesmith Fellows and had been through the program, so they could give us great guidance. It was nice to have a variety of instructors because everyone has different teaching styles. It kept the learning fresh and made it a rich learning experience.
Did the prep course teaching style match your learning style? What did a typical day look like?
It definitely did. Each of the instructors taught differently, but each was really excellent. I got so much out of each class. The overall class structure was very consistent, so that helped. We would start each class with a 30-minute coding challenge. It was a great way to warm up and get our gears rolling. Then we would go into a lecture on a new topic where the instructor would share a PDF and go through slides.
Another really cool aspect, and excellent virtual learning tool, was that we used iPads as whiteboards. In a lot of coding classes in real life, you'll have a whiteboard where the teacher writes some code on the board, and you walk through it together. But during our class, they would switch to the iPad view, and they draw with the stylus and walk through the code that way.
How difficult was the CS Prep Program?
It was honestly right in the middle of my expectations. It definitely wasn't easy. I put in several hours each day before class to review material. Although that wasn't required, I did it to keep on track. But at the same time, it wasn't crazy difficult, I wasn't beyond stressed and staying up all night studying. I felt like it was a really good middle ground.
I consciously resigned from my job, so I had the luxury of having time to study. But several students in the class were working nine to five jobs. If you are working nine to five, they have evening and weekend classes as well – so there's definitely a balance. You could go to a job all day and then go to CS prep, and I don't think it would be too overwhelming.
Can you tell me about the project that you built during the prep program?
The game’s source code is currently stored on our REPL account, but my team members and I are creating a shared GitHub account so we can actually publish it and share it.
Did you feel ready to apply to the full-time program at the end of CS Prep?
After the CS Prep program, my confidence level was boosted. Learning remotely can be intimidating because you may miss that sense of community. But one of the reasons I felt so prepared for the technical interview was because of the other students in CS Prep. We did so much pair programming, and that experience helped me with my technical communication. It's one thing to be able to code something yourself, but to be able to explain it and talk someone through it is of equal or greater importance. That was a big takeaway.
After you finished CS Prep, what was the admissions process like for Codesmith’s 12-week coding bootcamp?
It was a two-part process. The first part was a non-technical interview to assess my background and goals and to see if I was a good culture fit. It was definitely a longer interview and more in-depth than the CS Prep interview. We talked more about coding, my experience, and pair programming.
Part one wasn't stressful, but the second part was a technical interview, and I was definitely nervous. I did not need to fly to Los Angeles for that interview, but I wanted to check out the Codesmith headquarters in LA, and I felt that I may perform better in-person.
I coded each day for several weeks before the technical interview to make sure I was ready. That interview was challenging, and at some point, I hit a wall where I didn't know the answer. I had to take a deep breath, use technical communication (which I learned in CS Prep) and break down that problem, piece by piece. I had to show my knowledge, even if I didn't perfectly answer the question. Even though interviews can be stressful, Codesmith is really welcoming so I still found it to be a positive experience.
Could you have gotten into Codesmith without doing the CS Prep course?
I think I could have been accepted, but I would not have been as prepared for the technical interview. I would’ve been way more nervous. My experience with technical communication and pair programming at CS Prep built a really good foundation for a technical interview because I hadn't done a technical interview for a job in several years. CS Prep got me motivated and improved my confidence.
What are your plans after you graduate from Codesmith?
My familiarity and interests still lie within front end web development and design. But that could change as I work through the Codesmith curriculum. I'm really eager to learn more about full stack development, which is something I’ve never done professionally. For now, I just want a challenging job in a mid-to-senior level position.
I've worked for startups as well as huge corporations. I really dig the startup vibe and I’d like a job where my work has a direct impact. I'm trying to keep my options open when it comes to the industry I’d like to work in. I still have interests in music so it would be cool to combine art and code together again. I'm also aiming to work LA.
Do you keep in touch with anybody from the prep program? Is anyone going to the full-time program with you?
I've definitely kept in touch with several students from CS Prep. Some are interviewing and some have been accepted, which is awesome. Once CS Prep completed, we still did study groups a few times a week, and that was so valuable. Fortunately, we kept in touch.
When I went to LA a few weeks back, I met up with some of my prep cohort in person, so that was really nice. A huge part of the value I found in CS Prep was networking with other students who were applying, so I didn't feel so alone in the process.
What advice do you have for people thinking about attending a coding bootcamp? Do you recommend attending a coding bootcamp prep course?
I had a technical background before Codesmith, but for those who don't and are curious, I highly recommend a coding bootcamp. I was amazed with the other students – when I was pair programming and chatting with them about their lives and backgrounds, students who I thought had been coding for years, had just picked it up a few months ago. They learned fast! Computer science and programming can sound intimidating, but I've seen students excel so quickly. So if you are motivated, organized, and ambitious, it's totally doable.
Also, for those new to coding, it might be difficult to know what area of coding you want to go into because there are so many different sectors – back end, front end, full stack, etc. But there's a wealth of online resources for tutorials, so see what areas pique your interest. If you're still not sure, enroll in a bootcamp that can teach you various technical skills so you can figure it out.
In terms of Codesmith’s CS Prep, I highly recommend it. It was such a fantastic way to be welcomed into the Codesmith community. And there’s a great incentive where students who complete CS Prep get the tuition cost credited towards the full-time Codesmith tuition.
The Codesmith team understands that the best way for people to learn is alongside a community. So when they launched Codesmith CSX, a free online learning platform to prepare people for coding bootcamps, user interaction was front and center. Codesmith Senior Product Manager Haley Godtfredsen tells us all about the CSX curriculum, how to navigate the online platform, how users can take part in weekly pair programming sessions, and she gives us a demo of a CSX coding challenge!
What's your background and your role at Codesmith?
I'm a Senior Product Manager at Codesmith and I’m taking the lead on our new product – the CSX online learning platform. I've also been a Codesmith coach for about two years.
Can you tell us exactly what CSX is and why you are working on it?
Is CSX just for students thinking about applying to Codesmith or can anyone do it?
How long does it take to graduate from the CSX program?
It's different depending on what background you're coming in with, and how much time per week you're going to be putting toward learning. It's a completely free online program, and people can take it at their own pace. For someone who is less experienced, it could take them up to 60 hours. For someone who is more experienced, it would take less time than that.
Can you give me an overview of the CSX curriculum?
For those students taking the free version of CSX, do they work with instructors or is it mainly solo learning?
We really wanted to bring a community to the online space with CSX. Our weekly in-person workshops are focused on community. We make sure everyone feels comfortable and able to really put their best foot forward with learning because they're not worried about being competitive or asking a silly question.
All of our CSX videos are taught by our CEO Will Sentance, who is one of the top Front End Masters instructors. If you have questions while you're going through the free program, we have weekly half-hour office hours to ask a mentor or the CSX staff questions about the program itself or about a specific challenge.
If you have any questions, you can just shoot that into the general Slack channel and one of the mentors usually answers within a couple of hours. Other students also answer questions and help each other out on Slack, which is really exciting to see.
In addition to prepping for the Codesmith application process, what is the overall goal of CSX? What will students be able to build or do when they finish?
CSX is structured around a core Codesmith value: teaching students how to teach themselves. In this world of technology, things are always changing. The next thing is always right around the corner, and it doesn't help to get yourself in a very small hole by just being an expert in one technology. You need to know how to learn new technologies and new concepts. And that's what we want to bring to CSX as well.
There’s a lot more to being a software engineer than just understanding the technology. We also focus on technical communication and problem-solving, student pair program on a weekly basis to interact with other programmers and work on those skills. One way to understand a concept is by explaining that concept to someone else. We expect students to come out of CSX with a refined ability to tackle any type of problem, whether they've seen that problem before on CSX or not.
It’s cool that CSX students actually build a real project.
Yeah. We also award scholarship opportunities based on submissions of that Chrome Extension project. Recently, students had two weeks to build a Chrome Extension and our team awarded a 25% scholarship to Codesmith to the winner.
Okay, Haley – share your screen and show us what CSX looks like!
The CSX layout:
- Every unit is represented as a card on the main page.
- You’ll get an overview of which units are available, then pick and choose where to dive in.
- It's not necessarily a chronological course. If you have an understanding of one concept and you want to dive into another one, that's totally fine.
- You can watch our newly-released, professionally-shot video content and view the slides.
- Students are able to test their work from console logs. In the future, Codesmith will implement unit testing, so that students know immediately if their entries are correct.
Where should users start?
- The Overview of CSX is a great place to start out.
- The Codesmith technical interview tests certain core fundamentals – you can learn about those in sections 1 through 4 (up to the Recursion unit).
- If you’re prepping for other coding bootcamps, focus on Units 1 through 3.
- Depending on what you're using CSX for, you can pick and choose which units to attack or which concepts you really want to understand better. Once you're familiar with a concept, you can move on.
- Codesmith has plans for more content and will be releasing more features.
Watch the video to see Haley walk through the CSX unit about Variables.
It's awesome for people to be able to connect and work through problems with people around the world. Online learning can often be very solitary and it's hard to keep motivated when it's just you in your room alone. We do a lot of pair programming in our full program and in our in-person events, so we wanted to bring that to the online space.
How can students pair program on CSX?
- First you need to sign up and verify your email address. Then you can RSVP to a weekly pair programming workshop.
- You’ll rate your comfortability with the concept that will be covered in the workshop
- You’ll get a link to the challenge for that week's pair programming session. The email includes some instructions and best practices for pair programming. You’ll both go into the session knowing who the “driver” is and who the “navigator” is.
- During the pair programming session, you can use video + audio to talk to your partner.
What are “navigators” and “drivers” in pair programming?
- The navigator does the problem solving, working through how to get to the solution, and using their technical communication to relay that information to the Driver. In a navigator position, technical communication is very important. You need to know where you want to go with the problem so you can explain the steps to get there.
- It’s up to the pair to decide who wants to be the driver and who is the navigator.
- We encourage students to switch roles every 20 minutes, or every challenge so they can both get experience using the different skills that come from each position.
How is CSX different from other free online resources like Codecademy?
I'm a huge fan of Codecademy, but what we wanted to bring to our CSX is really hard learning. Hard learning isn't done best by yourself. It's easy to stop, hit a block, and not want to continue. We wanted to supplement that with live workshops that complement each unit that we have filmed live, as well as videos on CSX, weekly pair programming, and weekly office hours to give people that actual push.
If you have questions and you're struggling, you have other people to work with and you have mentors to ask questions. We think that you learn from hitting a block and working through it, as opposed to being walked through a programming tutorial like Codecademy.
How often do students actually get accepted into Codesmith (or other coding bootcamps) after going through CSX.
Since CSX is relatively new, we don't have any hard data on this. We have a lot of students in our most recent cohort who have been using it. And talking to them, it sounds like it was really helpful. I do think that it's helping our students start off on the right foot.
How else can students prepare for Codesmith?
We're releasing two new programs in March that are more structured, paid versions of CSX. The Live Online program is two weeks long, and is a version of the free program condensed into a two-week program, with three weeknights and one weekend day per week, with live instructors and office hours, and a focus on problem solving and technical communication.
Then we have a self-directed four-week program, which you can take as long as you want to finish. There's no focus on how far you get through it, but there are weekly personalized office hours, assessments, and pair programming with a mentor who can help you through if you're struggling. That course ends with a mock interview for Codesmith, to prepare you for the real thing.
There will be scholarships available for these programs. And if you are accepted into Codesmith, that tuition comes out of the full bootcamp tuition.
What's your advice for students who are considering this CSX program?
Set yourself up with goals and the achievable tasks to get to those goals. Make a plan and commit a certain number of hours per week, making sure that your schedule allows for that. Pair programming is important, and using to those office hours is super important too.
It's easy to stop when you’re learning online, so remember that there is a real community to take part in. Ask questions on Slack, meet other students on Slack, come to in-person events, or attend a live stream. Set yourself up with the expectation that it's not going to be easy. The CSX program is a really great path with a lot of support.
My best advice: be ready to hit blocks and then be ready to solve them.
What will your salary be after coding bootcamp? Coding bootcamps are judged almost entirely by their ability to find students high-paying jobs as software developers. Some schools release data about alumni jobs, others offer money-back job guarantees or deferred tuition, but how much are students earning when they graduate and how does their earning potential change as they gain experience? Every year, Course Report surveys real coding bootcamp graduates to better understand who is graduating from coding bootcamps and how successful they are in the workforce. In our second post of this series, we explore the lucrative data about salaries after a coding bootcamp.Continue Reading →
Is learning to code on your 2018 New Year’s Resolutions List? It should be! There will be 1 million more computing jobs than applicants who can fill them by 2020. And a coding bootcamp could be just what you need to make a fresh start in 2018 as a developer. We’ve compiled a list of 16 full-time, part-time, in-person and online coding bootcamps which have upcoming cohorts starting in January and February 2018. Most of these have approaching application deadlines, so submit yours quickly if you want to get a head start in 2018!Continue Reading →
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 want you to have some programming knowledge 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 →
How much do coding bootcamps cost? From students looking for free coding bootcamps to those wondering if an $18,000 bootcamp is worth it, we understand that cost is important to future bootcampers! While the average full-time programming bootcamp in the US costs $11,906, bootcamp tuition can range from $9,000 to $21,000, and some coding bootcamps have deferred tuition. So how do you decide what to budget for? Here, we break down the costs of coding bootcamps from around the USA.
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 →