Before becoming Director of Education and Lead Instructor at Coder Foundry, Andrew was a university professor, so he’s been on both sides of the fence. In addition, Andrew had a 12-year background as a software developer, technical writer and corporate trainer. Course Report recently caught up with Andrew to discuss his thoughts about recent developments with the College Scorecard and how computer science degrees and coding bootcamps compare.
Can you tell us a little more about your background?
For the last 10+ years I’ve been teaching computer science classes at both UNC Charlotte and UNC Greensboro. Prior to that I spent a lot of time as a corporate trainer and technical writer working for software companies. I traveled all over the world teaching computer classes on proprietary software systems.
The US Department of Education released the College Scorecard (collegescorecard.ed.gov) in September that tracks university student outcomes. Given that you’ve had experience in the industry, in higher education and now at a boot camp, can you tell us a little about your first impression?
Honestly, I wasn’t terribly surprised with what I saw.
The one thing that did surprise me was graduation rates. They were lower than I expected. But in terms of the other data - the cost to attend universities, job salaries coming out - those really weren’t surprising. While university costs are relatively high across the board I think, the salaries coming out are relatively low.
The one thing that I want to find out that I’m going to have to spend quite a bit of time digging into myself is the number of students that are actually graduating and obtaining jobs because you’re not going to include zero income individuals in those salary figures. I believe it’s going to be pretty low.
I think we get the gist of that college scorecard when we look at specific schools and universities in general. A lot of students aren’t achieving the career outcomes that they were hoping for. With your experience in traditional higher education, why do you think that some schools are failing to meet those CS graduates’ expectations?
There are a number of reasons. I think the biggest reason, however, is the fact that a student comes out of a university with absolutely nothing in their portfolio. They don’t have applications they can actually demonstrate to anyone. And the reason they don’t have applications is because they don’t spend enough time actually writing code.
The amount of time they have to write code is very limited. About 90% of the time is spent studying theory, not actually the practical application of that theory.
We do a great job at universities of teaching people how to do things that have already been done. It’s great to teach someone how to write a link list, but we can use those things that have already been written; we don’t have to keep doing it over and over again.
There are a lot of things that we could be doing for our students to prepare them for the business world which we’re not doing. We’re failing in that department.
In a computer science program, what does that 10% of coding experience usually consist of?
We had small homework assignments and it’s not geared towards the type of application that you would actually be building at a job. You’re writing really simple programs to demonstrate concepts, but you’re not doing anything that a business would require.
We hear this argument all the time that there’s this trade-off between bootcamps and CS degrees; CS degrees aren’t giving people the practice and that portfolio that they need. If we know that then why aren’t traditional colleges doing it? Why haven’t they changed their curriculum to incorporate new technologies?
Quite frankly because change is really difficult to accomplish at that level.
The universities are really handcuffed by the accreditation system, in my opinion. I think that works great for certain subjects. But computer science doesn’t fit that model. It’s a field that changes too quickly and evolves so rapidly that it’s impossible for an accreditation system to keep up with the rapid state of change.
And as a result we wind up teaching archaic things; we teach our students things that are completely irrelevant in the business world today.
We don’t need to be teaching them technologies that they’re never going to use. But that’s precisely what we do because that’s what it takes to receive accreditation in the CS department.
Did you ever get to teach a class in which students could build an actual project?
I taught an intelligent tutoring systems class which I was able to create exclusively as a project-based class, so students were finally able to build something that they could get their hands in.
Students had a lot of fun building those projects. But most of the classes you take in a CS program just don’t lend themselves to that - you don’t have the opportunity. And it’s really unfortunate.
How does it work for CS students who do get a job after graduation? Are they learning on their own in addition to their CS degree? Are companies assuming that because they have a CS degree, they’re ready to start a job as a software engineer?
I think in a lot of cases the assumption is made that they’re ready to start. However, I think that most companies are aware of the fact that these students may have a great foundation in terms of Computer Science theory. They may have the ability to learn but they don’t have the practical experience to be able to build what’s expected of them coming out of the gate.
What winds up happening is you have a lot of on the job learning. In fact, we get emails from employers that are interested in our students and one of the consistent complaints they have is the amount of time they have to invest in training new employees because people coming out of school just don’t have the skills they need.
Why and how did you switch to Coder Foundry and the boot camp model? Were you wary of it?
I knew nothing about coding bootcamps. I’d never been exposed to it at all. I was fortunate to have our CTO Bobby Davis walk into one of my classes at UNC Greensboro. He came in to give an entrepreneurial presentation to my students and he won me over.
He talked about this idea that he had for Coder Foundry thing and I thought, “You know, that’s exactly what I wish I could be doing.” I want to be teaching people things that matter. I want to be able to bridge this gap between what a Computer Science program is teaching and what a business is looking for.
So I asked him to stick around, we talked and he said, “You want a job?”
Obviously you’re qualified to teach Computer Science but how did you learn to be a boot camp instructor?
I really had to learn some new things. Prior to coming here I didn’t have a lot of exposure to C# and the .NET platform. As a professor at a university,most of the student projects were in Java. And most of the work that I had done before in the industry was C++.
Fortunately C# is really similar to Java so if you can write and teach in Java, you can probably handle C#. Learning the .NET platform was exciting.
What these folks asked me to do was come in and build a curriculum for this school that was built upon these principles. There was a bit of ramp-up time, a lot of hours spent in personal study and figuring out exactly how I wanted to design this program.
We built this system on tried and true educational science rather than our current university model. In the university setting, we bestow the greatest amount of credit on hours spent sitting in a classroom listening to a lecture. But it takes three times more hours in a lab environment actually building something and actively learning to receive the same amount of credit.
That really surprises me! I don’t know why we do that when the educational science tells us that the greatest learning comes through doing and through teaching. Applying what you have learned and teaching it to others provides the greatest amount of retention.
The least effective is sitting and listening to somebody lecture and reading a textbook.
Have you kept any of the techniques or lectures or even concept in the curriculum that you were teaching computer science students? Do you still do some lecture at Coder Foundry?
Absolutely, we do. But we don’t believe in long lectures. I’ve sat through many 3 hour long night class sessions at the university. I’ve taught many of those. And it’s really tough to keep the students’ attention in that environment.
We don't do things like that at Coder Foundry. We really try to keep our lectures short. If we’re going beyond 30 – 45 minutes in a particular lecture period, that’s way too long.
We want to give our students concepts, things that they can work with immediately, and then put them to work. “Here’s a little bit of information. Now get busy with it.”
Then we come back and say, “Here’s a little bit more, now get busy with that.” We teach them something, get them to work with it. Teach them something that builds on what they’ve done, get them to work with that.
How long is the Coder Foundry program?
Our program is 12 weeks long. After all is said and done, on top of the hours that they spend listening to us, they spend more than 600 hours writing code.
Wow. How does that compare to a CS degree?
I estimated that they get about 100 hours of coding during a computer science program in a 4-year school. We’re asking for more than 600 hours in 12 weeks.
On top of that, we’ve just recently finished some work for the state in terms of calculating credit hours. Our program covers the equivalent of 30 total credit hours based upon university calculations. That’s two full semesters at a full load of 15 credits. That’s 5 classes a semester.
We’re covering 10 classes worth of information based upon university calculations. That’s a lot of work in 12 weeks.
What outcomes are you seeing when you compare the outcomes of Coder Foundry as a boot camp – or just bootcamps in general – to the college graduates that you were working with?
The outcome is that these students are prepared to receive employment. Quite honestly, that’s it.
I’ve had hundreds of students in the university setting and a handful of those that I know of received jobs upon graduation. Most of those jobs were a result of extending an internship that they worked on.
Our primary focus is to put students in jobs. We’re not interested in “educating” them, we’re interested in putting them in a job. The means to do so is to educate them and give them the skills that they need.
But our primary goal is to actually make a difference. We want to make a difference in these people’s lives. We want to put them to work.
That’s why I left the university setting to come here. I got into academia for me. I really liked the idea of summers off, that was really cool. I don’t get that anymore. But I left that environment and came here because I was tired of not being able to give my students what they really needed. And here I get to do exactly that.
Have you adapted the curriculum at Coder Foundry in response to employer feedback?
We consider what employers are looking for in our network very heavily. And yes, as a result I have modified the curriculum. In fact, I’ve changed a little bit each class.
But we have not done any staggering modifications. We’ve added focus on certain elements. For example, we may have spent a little more time on SQL.
Mostly what we do is evaluate each student and see how those students are progressing through the course and say, “How can we best make this work for the student?” If a student is struggling how can we improve the curriculum so that student doesn’t struggle so much? How can we make it so that the greatest number of our students are employable at the end of this course? Those are the types of things we focus on when it comes to curriculum changes.
There are still jobs that require a computer science degree or a 4-year degree. What types of jobs can a bootcamper with no prior experience expect in comparison to a person with a CS degree?
Any way you look at it, the degree has very little bearing on the quality of job you can get because in this industry what matters is what you can do.
If you can write code, build an application front to back for an employer then you can get a job. It doesn’t matter if you started doing that three months ago or 13 years ago.
What matters is can you do the job today. I think that’s a lot more important and a lot more relevant these days than a degree is, and I think the businesses in this industry are starting to figure that out.
In fact, a really interesting article came out the other day. Ernst & Young, a UK accounting firm conducted their own independent research and discovered that there was absolutely no correlation between university success and professional success in their company. And as a result, they’re removing their degree requirement from job descriptions.
“If you can do the job, then you can get the job”, is basically what they’re saying.
Why can’t we do that on the programming side?
Do you think we’re getting to a place where a high school graduate can graduate high school and go straight into a boot camp instead of going to college?
I have one right now. I have a recent high school graduate in our class right here. He is one of the best developers that we’ve seen come through.
He’s fantastic. He’s doing a great job and he’s going to have a great career. If you can do the work, apply yourself and work hard then yes, I think so.
What type of student have you seen really thrive at a boot camp like Coder Foundry and are they for everyone?
Those students who are willing to do whatever it takes to succeed will succeed every time. The students that think that this is just a quick trip to a job, they don’t do well.
I have a student in Charlotte right now, he recently got a fantastic job offer. This guy was willing to put in 80 hours a week starting from day one. He’s worked like crazy to make sure he learned everything he could possibly learn. Not just what we were teaching but a lot on top of it. He’s gone above and beyond what our expectations were. He was willing to do whatever it took to get the job that he wanted and he got exactly that - he got the perfect job for him.
Do you think there’s room for bootcamps to partner with universities?
I think that there is room but it’s going to require a change of thinking in our university system. Like I said, the model that is there works great for certain topics. It doesn’t work great for this industry. We’re doing our university students a disservice in the way that we approach computer science education.
Here at Coder Foundry we follow a “Montessori” way of doing things. We have a Montessori school for adults. We bring our students in and we give them the exact same model as Montessori preschools.
And I think most bootcamps do that - a little bit of instruction, a lot of experimenting and practical application, a lot of learning by doing rather than sitting in a lecture and hoping you absorb what’s needed to do the job.
What’s next for Coder Foundry?
Our next cohort starts Monday, September 28th. Our second location is In Charlotte and Kernersville. We have other locations coming soon in DC and Atlanta as well.
How can students get more information?
Visit our website. We have lots of information there that’s helpful for students. They have easy access to the personnel at Coder Foundry and we’re really good at getting back to people right away.