Jamie was a software engineer working at companies like eBay and PayPal for 10 years before he followed his passion for teaching and joined MakerSquare Austin in August 2015. He is now Head of Instruction and leads the senior phase of the bootcamp, as well as iterating on the curriculum. Jamie tells us why he fully believes in the bootcamp model, why soft skills and team skills are so important, and how MakerSquare is now offering free weekly workshops.
Tell us about your background and experience before joining MakerSquare Austin.
I’ve been a Software engineer for a decade. I worked at a variety of companies large and small, including Dell, eBay, PayPal, XO Group, and I even had my own startup called Acktie, which was little lego blocks to help make building mobile apps a bit easier.
I’ve always loved teaching even as a kid; I enjoyed teaching my sisters about their math homework. Then the MakerSquare opportunity came around.
How did you first learn to code? Did you teach yourself the fundamentals of software development?
It started back in early high school. I used to and still do play a lot of computer games. Back then my favorite game was called Quake, and my buddy and I created a Quake clan webpage. So we started learning HTML, and one thing led to another, just getting deeper into utilizing the computer, to build stuff. That carried on into college where I majored in computer science, and out of college as I went into the industry.
How did you become aware of the bootcamp model?
I heard whispers from other developers who were getting into mentoring, or helping out at bootcamps. I did some research with my wife at one point to see if it was a career opportunity that she might want to pursue. We decided that if we were to choose one for her to attend, it was only MakerSquare. We had made that choice prior to me working at MakerSquare.
Did you need to be convinced of the effectiveness of the bootcamp model?
Not at all. Having been a little shy of a decade into my career, and knowing what you need to learn to be successful in the job, I realized that I didn’t learn all of those things in my college degree. I had to learn a lot of stuff on the job, so in the back of my head it felt like there could be a better way. I was always working with people who were self-taught, and didn’t attend college, but I never saw them any differently. They were equally as skilled if not more so in many cases, and just so motivated to do this on their own.
Once I was approached to join MakerSquare Austin, and saw how it ran, I realized it took me a decade to learn a lot of the lessons that we teach in these 12 weeks of curriculum. It really can be condensed down, a major portion of it, to set students up for success. We set students up on a growth path to always be learning, and ramp up faster than their peers.
What’s your role and what classes do you teach?
My title is Head of Instruction at the Austin campus. I was promoted to that title. I started at MakerSquare in August last year as a technical mentor. I mostly work with students in the senior phase, that’s the second six-week block of the program. We definitely focus on technical stuff, we expect students to have that foundation, but I teach a lot of non-technical skills for engineers too. We really want to round them out with other skills - working on a team, optimizing for the team, working in an agile environment, and communicating over a variety of channels. I work with each student on an individual basis to help them figure out their goals and how we can get them there. We take pride in not just building a really strong tech foundation, but building a lot of soft skills, and interpersonal skills.
What do the students work on in the senior phase?
During the senior phase, students work on three team-based projects. For one of them, they come up with an idea as a team, prioritize features, figure out how to work well together, and figure out how to work remotely. That’s one of the lessons that’s a little bit unique to our program – we make sure our workers come out understanding remote work. At the end, we have the greenfield project. They come up with their own individual idea and create it over the course of a week.
We also have another team project called the Legacy project, which is about a week long and that’s where our students are working on a legacy code base, an existing code base. They have to figure out how to understand the code base, and how to add value to the code base. They take away lessons on how to prioritize values from a user’s perspective and how to balance that with optimizing code. They also learn how to understand code written by other people, and the different experience you have if you have working with very strongly human readable, well-documented code, versus not. We make sure students take these lessons to create human readable code, and really optimize for the team.
What have you found is your personal teaching style?
I really enjoy working with students on an individual basis. I love understanding their past, their goals, where they are today, and really working with them in a very specific way. Each student is from a different background, is headed somewhere different in their career, yet we’re forming a new relationship. We like to say to our students when you join MakerSquare that you enter into a relationship with us for the rest of your engineering career. In order to serve you and your needs, I really need to get to know you. So I love to get to know the students, I love to figure out how we can best help them on an individual basis as they go through senior phase. They may want to focus their skills, or help them work through their thoughts, dreams, and fears, of what lies ahead and how to make the best choices for themselves and the things they want in their career.
I spend the most time working with students on an individual basis, rather than lecturing. I find it’s one of the most effective uses of my time, so I make sure to meet with every student at least twice for an hour each time during senior phase to work together.
How do you contribute to the bootcamp curriculum? How often are you involved in iterating on or updating it?
It is my goal as head of instruction to serve our students’ needs, to oversee outcomes. We measure ourselves by our outcomes – graduation rates, landing a full-time engineering job, and average starting salary per city. We’re at a 96% graduate rate so there’s not a whole lot more room to grow, but we want to maintain that excellence. Sometimes that is a curriculum change to maintain or achieve excellence. Depending on the severity if it’s a smaller change we will do those at the local level. If we want to replace one whole subject matter with another, it’s a bigger change and needs school-wide oversight. Across our MakerSquare schools and partner schools we like to have a similar curriculum which is adapted locally.
How do these updates differ from campus to campus?
It could be demand based on the market. For instance, we teach React now. It got to the point where React, although it has always had a lot of great things technically about, the market wasn’t yet hiring a lot of jobs from it. So we have to balance the demand for the new big thing, with the necessity to get a job in the industry. Now there are a lot more jobs using React since I first joined a year ago, so we put it into the program. Some of those changes happen first at one campus, because we like to experiment. We improve our curriculum and iterate on it daily, but at the very least, every new cohort is seeing something new, the goal is to have it better than previous ones. Cohort 43 just started, so that means the program has improved 43 times.
How often can you or other instructors tweak the curriculum on the fly?
Our curriculum is GitHub based, we have these GitHub repos. We like for our instructors to administer each piece of curriculum according to the repo, but to give their own flavor. They need to stay continuous on our learning objectives but if you have your own way to impart those objectives, you can do that. Our instructors are awesome, they are reading the class, and understanding needs, they are catering the messaging to best meet the needs of the current cohort.
How many instructors, TAs and/or mentors do you have in Austin?
Our overall instruction team is 11 strong. We have two full-time instructors from industry – myself and another instructor. We work together. While I focus on the senior phase, I step in as needed for the junior phase, and the junior phase instructor steps in sometimes during the senior phase. Then we have a non-tech person who is really focusing on making sure the student experience is phenomenal, working with students on behavioral stuff, and the soft skills side. Then we have a team of 8 fellows who graduated from the program and want to give back. They loved their experience and want to be a part of it so they join for 3 months at a time, and work to help the next cohort of students.
How many students do you usually teach at one time?
Our cohorts are usually around 25 students and we run two cohorts of students at any point in time.
How many hours a week do you expect your students to commit to MakerSquare?
Students can expect to spend a minimum of 64 hours every week in our environment. That’s Monday to Friday 9am to 8pm, and Saturday from 9am to 5pm. Then we have after-hours events such as meeting people around you, guest speakers, or a deeper dive into a specific subject matter. We encourage students to maintain mental and physical health, so we want them to stay focused on the program in the day and go get good rest at night. It’s also important for students to bond with the cohort; that’s a critical part of their success and future success. We find that as students are supporting each other, cheering each other on, learning together, and really going through this intense environment together, they form this bond that lasts through their career and continue to help each other as a network of alumni.
How much experience do candidates need to join MakerSquare?
How do you assess student progress and make sure they are keeping up with the learning pace?
During the program, we have a variety of mechanisms. On one end of the spectrum, you observe or self report your or others’ struggles. On the other end, we have weekly assessments every Monday morning to assess understanding of knowledge from last week. We also have daily checkpoints, checking understanding of knowledge each day. We have a cumulative assessment which assesses all of the foundation knowledge together from day one through the first six weeks of the program.
We also have very regular one-on-ones, and sometimes these are more on that subjective side of just asking how things are going. If you ask the right question, you may start to see there is a struggle. We use all of this information. We’re always looking at it and identifying signals of if a student is struggling. Then we look at what we are going to do to resolve it within a week of it first being identified.
How do you help students catch up again if they are behind?
It’s a tough one. So our strategy is to be as preventative as we can, and identify struggles early, then attack it as fast as we can. That helps minimize the severity. If a struggle is a behavioral struggle, sometimes they are really tough to deal with, we have to have serious talks. If your behavior is affecting others in the program, we make sure you have awareness. It’s not a one strike and you're out system. There is a spectrum of tech struggles, we try to pinpoint exactly what it is, with all data we have, dissect it, and identify it more deeply. Then we work with students to figure it out.
A lot of it is expectation setting at the beginning of the program. There is an agreement between staff and students that we are entering into this relationship, and we have expectations of each other. When students start falling behind on their expectations, or if we fall behind as instructors, we will make up for that without losing everything else that is part of the experience. We need to make sure when students take on additional work, they take it on as an additional burden, it’s not a replacement of other duties. We prefer a student doesn’t repeat junior phase. It’s been known to happen, if other avenues aren’t working out.
What’s the goal for a student who completes the bootcamp?
I think the common student goal is to go through this transition out of being a professional who is perhaps disillusioned with the opportunities in their current career, and find something more. They are ready to put in the effort and ready to invest in themselves. They really want to come to a program like MakerSquare, that’s going to do everything they need us to do to help them transition into full-time software engineers.
What sort of jobs have you seen your students take after the program?
Students have gone to work for every big name company. We have students who have come from having never touched coding, and we have students who have been engineers for decades. On the job you aren’t given time to learn the foundations of something, so you end up with gaps in your knowledge. We teach those foundations, so whether a student has been in the industry or not, we fill in all these gaps or they build a rock solid foundation.
I’m interested in the free workshops you offer at MakerSquare - can you tell me about those?
Those workshops are run by a MakerSquare alumni, who was a fellow and is now doing these on the weekend. He loves to give back and he’s really good at teaching. The workshops themselves are set up to prepare students for MakerSquare. They teach a variety of subject matter. If you’re a beginner, and want to know if this is a career path you want to pursue, we have those workshops which are an intro to coding. We also have workshops to prepare you to get into the MakerSquare immersive. Maybe you’ve started to dabble in coding, but you want to know what a variable or function is, and how to build something with it. That’s slightly more advanced, but still pre-MakerSquare level material.
On a scale of 0 being no knowledge, a MakerSquare student starts with level of 20 knowledge, and we exit you at 100 or 120. So the workshops play in that 0 to 20 space. Our MakerPrep program is tangential to the workshops but is paid, and also plays in that 0-20 space. We try to have some kind of workshop every week. Typically a single session is 4 hours on a Saturday, maybe a lighter workshop is an hour or two on one day. They are published on our Eventbrite page or social media channels.
Is there anything else that you want to make sure our readers know about MakerSquare?
I joined MakerSquare after being in the industry for a decade. I joined because I saw how it worked, and I truly believe you can make somebody extremely ready for an engineering job in 3 months or less. So I’m really proud of what it is and that we are always improving it. I think it’s something that truly works and I’m always happy to see students go through the program and achieve success.