Updated on by Hayley Brown
Joseph is a qualified Mathematics teacher and after many years teaching, and becoming Head of Mathematics at a Secondary School, Joseph decided to make a change and learn Full Stack Development. He transitioned his career and joined Cyclr as a Connector Developer.
What’s your current role and what do you like about it?
I’m a Connector Developer. This means I get to work with hundreds of APIs that you use daily to run your digital life and make sure they play nicely together. Working as part of a closely-knit team, we troubleshoot and perfect how our connectors will work for our partners. So not only is it a technical role dealing with authorisation and JavaScript, but one that requires soft skills, having to consider how people will best use the product. Getting to use several skill sets at once keeps the job more interesting.
How did you get into Programming?
I am a career changer. For over a decade I was deputy head of Mathematics in a secondary school. I had dabbled with web development in general in the early 2000s, but frontend development used tables and images back then and that wasn’t something I wanted to entertain! Fast forward to 2015 and I wanted to host educational videos I’d filmed for my A Level students. So I began building websites to better meet their needs and it was such a better experience the second time around I didn’t stop.
What’s your earliest memory of you learning to code?
My first memory was at primary school. Now coding wasn’t a skill that inspired me or stuck at this point. You loaded programs with a floppy disk, and I mean the ones that were actually floppy. That’s how long ago I’m talking about. BBC Micro was in every school during the 80s using BBC Basic to program. Not too many years later, I got to program a turtle, yes a turtle, in Logo and that made me sit up straight and take coding more seriously.
What’s a programming language that you would build EVERYTHING and ANYTHING in and why?
It might seem a boring answer but Javascript. I’m used to people moaning about its many quirks but I think it’s just a matter of accepting its pros and cons. It’s accessible and you can get quick responses without compiling, and for higher production levels you can make it strongly typed now with TypeScript. Being able to program a site, front and back, in the same language is hard to beat as far as I’m concerned. I’m a big fan of React too. Surprise, surprise.
What’s something you think Software developers do not do enough of?
Getting too excited to build something intricate without looking at it from a product perspective. I have years of experience teaching mathematics to teenagers who are a very discerning audience, never afraid to tell you if your ‘product’ is fit for purpose. Having a consistent feedback loop trains you to make sure your product achieves what you want it to (and avoid a riot from 32 students). Making sure you’re building a product that the customer will love using can’t be achieved without looking at the bigger picture.
What is your least favourite thing about programming?
Small, annoying, mistakes where you don’t learn anything! I don’t mind grappling with a problem if I come out the other end wiser. When you lose half a day to find you’ve made a typo, I definitely don’t feel enlightened. If there was anything else that I would use to convince myself and others that a TDD approach to coding was the way, these annoyances would be it.
What’s a technology you’re currently learning or excited to learn?
As a lifelong learner, I’m done with spreading my knowledge for a while. I’ve become competent in React, Node, CSS, Jest and others. I’m diving deeper into Javascript. Building up defensive coding strategies and error handling. Learning the ‘bugs’ of the language and learning how to use them to my advantage. Like coercing strings to numbers for example. I know static-typed language fans are cursing reading that, but it can be fun too.
Time travel 10 years into the past or 10 years into the future? What does technology look like?
I’ve already discussed 20 years into the past so I’m looking forward to 10 years into the future. To be fair, the film, Back to the Future, made me believe we’d have hoverboards by now, but I’d settle for a stable internet connection and AI auto-complete on your code! It’s amazing that in 2000 I was dealing with dial-up internet and having friends asking me to get off the line so they could use the phone. Now we are looking forward to advanced AI that can predict and assess your code. I just hope we are right this time and it does improve for the better and I’m not left holding my breath like I am for those hoverboards.
Lastly, what advice would you give to a budding developer?
Pick one language that helps you learn how to solve problems and stick with it. You’d rather be a master of one language than jump around not building up a solid way to communicate.
Then resist the temptation to choose multiple tutorials. Maybe one to get you going but then find projects to build. Where I accelerated most was when I was able to work as part of a team and bounce ideas off one another. And that’s not so easy to find so it’s fitting to finish with this last bit of advice, and that is to become comfortable with being uncomfortable. The answer is only a fleeting moment in development.
Learn to enjoy the journey instead.