Dan Garland has over ten years experience in creating web applications. After graduating from the University of Bristol with a Computer Science degree, he went on to run a Ruby consultancy, specialising in full-stack web development, working with start-ups and agencies. He has been teaching web development for a year, having completed his first cohort with We Got Coders. In addition he taught in New York with General Assembly, and an open day at Makers Academy in London. We dig into his instructor brain and learn about what We Got Coders’ is doing differently than other bootcamps.
1) Run us through a typical day running your coding bootcamp.
Armed with a strong tea or coffee, we start each day looking back and reflecting on the previous day's learning. It is an opportunity for trainees not only to ask questions about issues they encountered and to get help from the group; but to also demonstrate their successes and breakthroughs. We invite trainees to present their code from the previous day, explaining the problems that they inevitably run into as well as the solutions that they encountered. We believe that putting people outside of their comfort zone and in front of the group helps to reduce the anxiety about asking questions, and demonstrates that truly everybody faces difficulties in coding from time to time.
Then we'll dive into a new topic. Each week focuses on a wider theme, with each morning revealing a bit more material through a combination of lectures, group discussion or live coding, where I would lead the group through my approach and demonstrate keystroke by keystroke how I arrive at a solution.
After lunch, we would then apply the knowledge we had acquired in the morning, by working much in the same way as a real software team would; we would fork the exercise from a GitHub repository and work on a series of tasks, each gaining in complexity and difficulty. We work in pairs, which not only develops a trainee's coding ability, but crucially their ability to analyse a problem before they dive in, their communication skills and reasoning ability. If there is any time left over in the evening, it is either spent on catching up on project work, or much needed sleep!
2) The coding bootcamp/immersive program is a recent trend, and new courses continue to pop up everyday. Is there a unique feature or distinct motivation for your bootcamp?
What makes us different is that we combine the bootcamp approach with a traditional web development consultancy, that grows its own talent in-house. We find clients who are looking for capable web development professionals: start-ups, growing agency / tech-teams and Government, and supply them the best of our output as contract consultants, working alongside our instructional team. In this way, we can delegate real client work to our trainees, simultaneously building their skill set and experience level whilst delivering quality software to the client and driving down costs.
3) What backgrounds do you find your applicants usually coming from? Is there a particular kind of student or learning style that excels in your programs? Is there a kind of student or learning style that is not well suited for your programs?
We aim to have as diverse a group as possible, and our trainees are sourced from a variety of backgrounds. The only common thread that ties the group together is that everyone is a motivated self-starter, with bundles of enthusiasm and an implacable desire to succeed. We look for students who have the spark, the intrigue and the desire to understand why things work and why we build things the way we do. Our best students are those with an open mind and are looking to learn; rather than show off existing knowledge, are humble enough to admit when they don't understand something and can ask a good question.
As our focus is on producing engineers, we aren't well suited for entrepreneurs, project managers or hobbyists who are looking for more rounded knowledge. There are plenty of more relevant programs out there. We're more likely to discuss the finer points of keeping your code DRY and applying Object-Orientation to your code than the latest craze to be upvoted on Hacker News.
4) What are some of the biggest challenges facing your coding bootcamp and the industry today?
Keeping abreast of change is a challenge across the tech industry; but this is particularly the case with bootcamps. As with software, 'software rot' is a problem and keeping the course material up-to-date and relevant is a priority for us.
Our approach in dealing with this issue is to open-source some of our course material, starting later this year, which will encourage collaboration, feedback and maintenance of our exercises. Furthermore, we have the advantage of combining our training with real-world consultancy, which means that our instructors are only teaching for at most six months of the year, with the rest on front-line development with our clients. This allows us to keep our skills sharp and to have an unrelenting focus on what our clients are asking for.
5) Since your first cohorts, how has the direction of your coding bootcamp changed over time, if at all?
I have been impressed by the amount that I have learned in the last year from working with We Got Coders trainees. Each group has been different; in terms of the pace, the dynamic and the culture of the group. The differing priorities from the technology stack that our clients are asking for means that we must constantly review and improve our course materials. Therefore we are building more flexibility into the course; allowing for the instructional team to adapt to the pace of the group and to steer in different directions.
For example, based on trainee feedback, we're now building a one-week half term into the middle of the training program, allowing for some catch-up and consolidation. We are pushing our final project time to after the initial twelve weeks (not during the last week, as many bootcamps still do), which we're using to add an extra week of Ruby fundamentals and object-orientated approaches at the start of the course.
6) What kind of roles, jobs, and/or companies do your programs ready your students for?
To cite examples of trainees who completed the training phase and were admitted to our mentoring programme, we put forward candidates to our client base, as contract consultants ready to work on full-stack development. Supported by our instructional staff, they have used industry best-practices, such as Agile development and Test-driven development, to directly delivering features to the client's project from the outset. Our clients include SaaS style start-ups looking to build on their MVP to rapidly add features demanded by their customers; mid-sized companies looking to build their in-house development team, working on service-orientated architectures, to digital agencies looking for overflow resource on a large blue-chip client project.
On the other hand, we recognise that it is a bad idea to push a candidate into this kind of role unless they are truly ready for it. That's why we're making longer-term investments in our trainees, offering in-house or open-source development for those trainees who we want to work with further, but whom we think need a bit more time to let their newly-acquired knowledge to sink in. We also offer a graduate scholarship, where we waive the training costs for a trainee who works at We Got Coders for a 24 month period, allowing us to build up their work experience to the point that they are capable of finding a web development position independently.
7) What’s the best advice for students who want to attend your coding bootcamp?
Do your research and be prepared. Unless you are looking to get a permanent job as a web developer at the end of the course, there are lots of courses out there that are more suitable than ours. We also set the bar high on our intake, accepting between 5-15 trainees per course. Our selection process requires between 40-50 hours of background reading, which is assessed through a programming challenge, which must be completed before an interview is granted. During the interview, we conduct a pair-programming code test to ensure that you have already grasped some of the basics. This allows us to keep a cohesive group, where there is a manageable range of ability and experience.
Expect to work hard, and to prioritise this above everything else for twelve weeks. I believe that with these kinds of courses you get out what you put in. Our trainees are putting in 50-70 hours a week at least, and we generally work bank holidays.
8) How do you see the learn to code movement and the bootcamp industry changing over the next one to five years? Where do you see these programs fitting into the larger picture of education?
The bootcamp model has amply demonstrated that the University model is insufficient to meet the needs of today's tech economy. As an institution that began life as pairing masters with apprentices, universities are now a long way from preparing a developer who can walk into a job with one of our clients, who need someone who can hit the ground running; rather than taking six to twelve months before they become productive. Ironically, this master / apprentice pairing is actually much closer to the model that we have adopted, and is working well for us.
As more universities and companies wake up to the technical deficit faced in today's marketplace, I think we are going to see more consolidation in the bootcamp market and a return to the kind of learning that we are advocating: with companies providing training as part of the job, whether outsourced to a bootcamp or done in-house, and universities providing hands-on assistance and mentoring.
9) Is there anything else you’d like to share?
What I love best about what I do, is that with technology and teaching, we have daily opportunities to be creative, and to apply ourselves to making something truly exciting with code. When I'm not cutting code or teaching, I like to play music. I'm a synth geek and like to make my own trippy ambient tracks. I have played festivals and toured around the world with eminent and pre-eminent musicians, and I see a lot of parallels between creating music and creating code. I think that it is the ability to imagine something and put it into practice, particularly if it reaches an appreciative audience, whether at a gig or via HTTP, that makes the creative side of technology so magical.
My big hope is that I can help others to achieve their goals; where other's have graciously helped me in the past. Although I've been a web developer for over ten years, it took me a long while before I felt confident enough to say I was a truly independent developer; and had I enrolled on a bootcamp style course, it might have been a lot quicker to get to where I am now. I feel that this is what gives me an insight into the challenges my trainees face, and why I'm determined to help them achieve at We Got Coders.
This interview has been edited for publish.