Work and play by Cantonio Gabola

A couple of years back the idea of a career change started to develop within me, but I wasn’t too sure of how to do this. Since being a kid, I have been taught to follow a clear and structured guide of how to become a productive adult: Go to Primary school, go to High school, finish a degree at University, get as best grades as you can in all the previous, find a job and work in the same company for the rest of your life. But the current job industry, at least in our generation, is far from the idealized career that my family presented me with. I was a bit lost.

When I started learning some programming through websites like JetBrains, Codeacademy and The Odin Projects, it was all really good fun and I felt like I was learning a lot and putting my problem-solving brain to work in something it enjoyed, but also that most of what I was learning was very isolated from real-life situations, from creating an app or working with somebody else on a project.

It was then when a friend told me the story of how the Makers Academy Software Development bootcamp had helped her launch her tech career from scratch as well as being a wonderful personal experience that allowed her to meet a lot of interesting people and learn to prioritise her wellbeing.

As a general warning, there are a lot of scam bootcamps out there that promise you to refund the course if you do not find a job within some months, but usually the conditions are abusive (for example having to apply to 10 jobs a day during those months, clearly it’s quite likely that if you do that someone will end up giving you a chance). I would advise you to read quite a few reviews before deciding to invest a large sum of money into something like that, and if possible, talking to some people who have gone through it and asking key questions about their experience.

So I decided to apply to this course and a very nice lady called me for a chat and explained a few things about the 12 weeks course, 4 weeks precourse and the requirements to apply. They are quite restrictive regarding what people they take up in the course, as apparently they don’t want people to drop out mid-way through, so they ensure you are willing to put the effort, time and energy it takes to become a programmer in four months.

Therefore, before considering my application, I was asked to complete the free Codeacademy Ruby course and then earn 100 honours in Codewars. I finished these steps in about a couple of weeks while on holidays (working on it 1-2 hours a day), and although Codeacademy felt a bit monotonous and slow, I found Codewars a very good level of challenging and continued to complete their challenges way after reaching the required 100 points.

The following step consisted in completing some code challenges and multiple choice questions in the form of a test. I had 2 hours to complete the test, which was plenty of time. The type of problems were similar to the ones found in Codewars and I was also allowed to google things as much as I wanted.

The last thing I had to do to be selected was an interview, in which they asked me what my motivation to do the course was and some emotional intelligence questions like what I would do if two of my course mates were arguing. I also had a chance to ask more questions about the course in general.

Once I finished the interview they offered me a position in their bootcamp, I was so excited!

Love to learn by Tim Mossholder

Week 1

On the initial week we worked on learning how to use the Command line (links to my posts about the content here and here), Git and Github), both reading through some theory and solving a little command line mystery, which I actually enjoyed a lot.

I didn’t feel particularly pressured for time during this week and I think these contents were a good point to start, as we would need to be comfortable with them in order to be able to program properly and use version control in our work.

Week 2

The second week consisted on learning basic ruby syntax. We studied the basics about variables and statements, messages and interfaces, control flow, arrays, hashes, methods and classes. We then put everything into practice with what they called “Mastery quizzes”, basically, little programs we had to create. The first ones were very simple, like printing a number or calculating the Fibonacci sequence, but they got progressively more complicated. It was an interesting way of learning the basics, and at no point I felt like things got too complicated, but they kept them challenging enough that they would trigger our critical thinking.

During this week I also started pair programming over some of the Codewars challenges, which helped me improve how I communicate what I am doing while also gaining myself a better understanding of what I was coding. It was more tiring than normal programming, but I also enjoyed it thoroughly. Pair programming is one of the pillars of learning at Makers Academy, and I can understand why, as it helps to learn from each other and work as a team as well as some very important interpersonal skills.

In most cases, we followed the suggested Driver-Navigator pattern that had been suggested to us, in which one person was the Driver, wrote the code and explained what they were doing and the other person, the Navigator, would guide them or question them as needed. We would then switch positions every 15-25 minutes, which was the ideal to try keep everyone concentrated. One of the rookie mistakes I found in this first few sessions of pair-programming was that we ended up both trying to solve the problem in our own computer instead of focusing on solving the problem together, even if it was at a slower pace or if we got with a not-so-fancy solution. This is a very important lesson I learnt thanks to some feedback after one of these interesting sessions.

Week 3

During this week we continued with the “Mastery quizzes”, although the proposed exercises started becoming more difficult and required putting some more of what we had learnt together in order to complete them. For example, the last exercised consisted on creating a “ToDo” list to practice Ruby Classes.

Week 4

The last week of our Pre-course felt considerably more busy, maybe because we had several different tasks to complete.

The first thing we had to do was to go through our introduction to TDD (Test Driven Development, or the art or making some tests that a program needs to pass before even writing the actual program) while pairing with one of our course mates. I was very happy when I realised we could choose our pairing pal, as I knew one of the amazing humans I had met a couple of weeks back and I made a fairly good team. The pairing exercise consisted on creating tests and making a FizzBuzz game to go with them. It was quite fun getting into the flow of having to write the first test, write some code to pass it, commit our changes and switch positions. Then, sadly (or not), we had to delete it and do it all over again from memory.

The second part of this week was the most challenging of all the pre-course. It started as a little program that asked for the user to input the names of some students, which used most of the things we had learnt at a basic level. But then, as they asked us to change our program in this way and the other, the exercises got more and more challenging and, I am not going to lie, I got a bit stuck with a few of them. We ended up with quite a long program for what we were used to. Our finished code was able to take input for the students, their cohort and other things we would like to add, handle unsuitable input, save that list into a file of our choice, load the list from the file and add more students to that list amongst other things.

The last section of this busy week was all about making our own and special Github CV. I have to say that thinking about how a bunch of Veterinary Surgeon skills could be transferable to a Software Dev job was the most difficult part of all, but it also helped me organise my thoughts about how much I had learnt during the past 6 years and how those abilities could actually make me a good asset for a company that is looking to hire.

Resume by Markus Winkler

And here I am, very excited about starting the full course and about to travel to London to stay there and attend the course in person during the first couple of weeks. Wish me luck!