Age can often trap us in careers we don't enjoy. Not Matt Edwards though. He decided to learn to code and become a Software Developer at the age of 55. He had dabbled in coding in the past but when he realised he didn't want to work as an accountant any more he knew he needed to make a career change. Read on for an exclusive interview for Matt's tips on learning to code.
Hi Pete. I live in Cheshire in the north west of England with my wife and 9 year old son, I’m 55, and I’m a Junior Software Engineer at Jaguar Land Rover’s Digital Delivery Centre in Manchester.
The first Covid lockdown in the spring of 2020 gave me the time and space to re-evaluate my life. It’s fair to say that I had been disillusioned with my career for a long time. Devising ways for wealthy people to pay less tax no longer seemed like a worthwhile activity. I had reached the point where my job made me truly unhappy.
It was clear to me that I needed a change of career and it would have to happen pretty quickly or it wouldn’t happen at all and I would be stuck in the tax profession for the rest of my working life - a thoroughly depressing proposition.
I have been an enthusiastic amateur programmer for a large part of my life. It’s something that I have always loved to dabble with whenever I have had time. It made complete sense to me to pursue a career in programming but I didn’t really know where to start. And who would take me seriously at my age?
Around May/June 2020 I stumbled across a tweet from a lady called Randall Kanna, a self-taught developer in the US. In that tweet Randall set out how you could effectively piece together a DIY Computer Science “degree” using resources freely available on the internet.
One of the resources mentioned in the tweet was an online Harvard University course called CS50: an introduction to Computer Science. I signed up and ABSOLUTELY LOVED IT. It is billed as a 3 month course but I rattled through it in just 4 weeks plus a couple of weeks to build a final project.
Somewhere in the midst of CS50/CS50W I discovered Manchester Codes (again via Twitter) and I identified their FastTrack Software Engineer course as a potential route into the tech world.
Over the next 10 years or so I maintained an amateur interest in web development and built websites for my wife’s photography business and my part-time triathlon coaching business plus small projects for friends. I also discovered Python about 5 years ago and have been dabbling with that too, including a bit of Django. Then came lockdown in the Spring of 2020 and the pace of my learning accelerated as I focused on a career shift as I already explained.
My decision to go with Manchester Codes was influenced by a couple of factors.
- I had a real hang up about my age. I may have been noodling around with code as an amateur for years but those sorts of activities are light years away from the job of a professional developer; I would obviously have to start at a junior level. And who would look seriously at employing a 54 year old junior? Discussion with Kirsty Devlin (Manchester Codes CEO) and other MC students persuaded me that the tech world is very inclusive: if I can do the work and muck in with others then nobody on the course, or in the wider tech world, would care how old I am.
- The Manchester Codes course is part-time. That was crucial because I needed to maintain an income while retraining. It wasn’t easy! The course covers a lot of ground in a short 6 months and demands a time commitment of 20+ hours per week (including 2 x 3-hour evening lectures). That’s a lot on top of a full-time job but I loved every minute of it.
The course is broken down into 4 parts:
Foundations (4 weeks)
- Intro to Command Line & Bash commands
- Intro to Git
- Intro to HTML
- Intro to CSS
Fundamentals (6 weeks)
- Intro to Node & Node Package Manager
- Intro to Test Driven Development with Jest
- Intro to mob programming
- Intro to SOLID coding principles
Backend (6 weeks)
- Databases & SQL fundamentals
- How the internet works
- Intro to Postman & API basics
- ExpressJS & routing
- Backend testing with Mocha
- Sequelize - a Node-based ORM
- Express middleware
- RESTful APIs & standards
- More advanced testing with async processes
- Heroku & deploying Express apps
- Intro to AWS
- Intro to user auth and JWTs
Frontend (6 weeks)
- React intro
- React Hooks
- React Testing Library
- React Router
- React Events & forms
- Styling your React app
- Firebase & user authentication
- Frontend deployment to Netlify & Vercel
Projects that we built during the course:
- Music Library - an Express CRUD API & MySQL database
- Book Library - another Express CRUD API & MySQL database - Deployed to Heroku
- Weather App - React frontend connected to MC-provided CRUD API & database
- NASA Image search - React frontend search page to find images via the NASA images API
- Surreal Estate - React frontend app similar to Rightmove connected to a MC-provided CRUD API & database
- Web app built in React & Express using the Sequelize ORM to communicate with a MySQL database
- User authentication handled by Firebase
- Backend to Heroku
- Frontend to Vercel
- App is called Qualpass (short for qualification passport)
- An app for freelance workers and the firms that hire them to keep track of their qualifications so that they know when recertification is required.
The Jaguar Land Rover Digital Delivery Centre, based in Manchester, has connections with Manchester Codes. They have taken a number of previous graduates as Junior Software Engineers and one of Manchester Codes’ backend tutors worked there.
When JLR approached Manchester Codes for suggestions of potential candidates to fill a junior software engineer vacancy my name was put forward. I submitted an application through JLR’s normal process.
Following my initial application the process consisted of:
- A ~20 minute screening call with a JLR recruiter
- A ~45minute informal “getting to know you” type of telephone interview with the department tech lead
- A ~2 hour interview done over Microsoft Teams with 3 people including the dept. tech lead, a senior engineer and a junior engineer. After a brief introduction there were 3 parts to this interview:
- A behavioural interview of ~ 30minutes
- A technical interview of ~45 minutes
- A technical test of ~45 minutes
The technical test included live coding on a shared screen while narrating what I was doing and why I was doing it that way.
I have only been at JLR for 2 months so it’s very early days. Most of my time is spent learning new stuff at the moment to be honest. The team that I have been assigned to is working on a backend project and I have been learning Java and Spring Boot. Last week I also started looking at MongoDb.
I spend some time most days pair-programming with a senior engineer. It’s amazing how much you can learn from those sessions in terms of how to approach problems and best coding practices.
The working practices are very different from the industry that I have come from. The JLR DDC follows an Agile approach to software development so every day I take part in the team Stand Up.
CI/CD is also instrumental in the way that software is delivered. It’s a steep learning curve getting to grips with the pipeline and platform. I’m still “Gitanxious” but the way that the CI/CD pipeline is put together, with so many automatic safeguards and tests, means that there is little danger of my doing something drastically wrong. I hope! :-)
Different people learn in different ways: some like video tutorials, others prefer written material. It’s important to find out what works best for you. Whatever your chosen method, you need to be aware that it’s not all sunshine and roses: there *will* be concepts that you find difficult to grasp and times when you question your sanity and wonder whether you are doing the right thing.
When you reach that point (believe me, you will), don’t lose heart! Rest assured that everybody goes through it (regularly!). Just take a break, preferably away from your screen, and you will be surprised how many times you find things clearer when you get back to it. It’s amazing how your mind can process things in the background when you don’t think you’re thinking about them … if you know what I mean :-)
Also, don’t think that simply doing tutorials will earn your coding stripes. Do the tutorials by all means but then take what you have learned and apply it in your own projects. That’s where you find out what you do, or more importantly don’t, understand.
Regarding the age thing, I have to admit that, at the start of this process, I was worried that either I wouldn’t be taken seriously or I wouldn’t get a look in because it would be assumed that I’m too old.
I can honestly say that my age has never once been an issue. I was treated no differently from anybody else on the Manchester Codes course and the same is true at JLR: I’m just a new starter who is keen to learn as much as he can.
It does of course work both ways. I have come from a career where I had 25 years experience and held a relatively senior position. I am now in an entirely different role and I have to be aware of that and behave accordingly.
I haven’t done this for financial reasons. I made the change because I want to spend the rest of my working life doing something that I truly enjoy. I honestly still find it amazing that I have been able to find a legit Software Developer job a little more than 12 months after I made the decision that I needed a change of career. I find it equally amazing that I now get paid to do stuff that I used to do for fun!
Having said that, I have taken a hefty cut in salary. Our lifestyle is far from extravagant, so we are able to manage, but things would be more comfortable with a little more money coming in. My short term goal is to work my way up to a mid-range engineer position as soon as I can and to senior within about 3 years if possible. That may sound ambitious but I’m very driven. And don’t forget, age isn’t on my side! :-)
This article was sponsored by Manchester Codes.
Learn software engineering, from scratch, in just six months of part-time study with their well-respected Software Engineer FastTrack course. Fit training flexibly around your other commitments with online learning and in-person tuition at evenings and weekends. Develop in-demand skills that every UK business needs, learning from professional practitioners excelling in the sector.