Software engineering and returning to my roots cover image

Software engineering and returning to my roots

Oliver Earl • • 6 min read

Software Engineering

My decision to take up a programming job - returning to software engineering - and start climbing the more typical career path for a computer science graduate has been met with an understandable amount of scepticism and confusion from friends and acquaintances that know me.

I was always vocal about my desire to pursue education and academia; from my extensive volunteer and activist acumen developed throughout my time as a student to my eventual enrolment and the recent completion of a PGCE teaching qualification and acceptance onto a PhD programme within the past year. With all that in mind, why the sudden change of heart? How on Earth was I satisfied with a junior position?

Life as an unpaid trainee teacher

It's complex. From September to December of last year, I was still teaching at Arden. At my own expense. Despite needing to work an extra semester in the wake of nationwide school closures caused by COVID-19, there was no additional government or university financing available to me which placed me under serious financial hardship. Given the hours I was at my placement, it was also impractical to find part-time work. Despite the placement itself being fulfilling and my colleagues unbelievably fun to work with, I can't stress how difficult this period was.

Nevertheless, I managed to drag myself through it and hey, I'm a qualified teacher now. Neat!

All the while, I was planning my next steps. I secured a PhD position at the University of Portsmouth, but I wouldn't be able to start that until at least September because it was self-funded and I needed a chance to put together some cash. Furthermore, computer science teaching positions, especially those in Further and Higher Education were scarce. I knew that I had to rethink my options and that I had to start looking for jobs in the field that I am good at - software engineering.

I was approached by a developer friend about interviewing to join their company in January as a PHP developer - my programming language and ecosystem of choice - and I was immediately interested. Though it would be remote, they have an office in my hometown. The salary and perks are good. There's plenty of room for learning and progression, and most importantly from my perspective, there's a warm and close-knit culture that values you. The caveat? I would be entering as a junior.

Don't think for a minute I got in effortlessly though. I still had to pass a programming challenge and technical interview, both of which went well.

Impostor syndrome or a dose of reality

Was this an absolute deal-breaker for me? Not really. Despite my academic credentials, I know I damn well didn't have any software engineering experience outside of education, in my six months at Amadeus, or in my personal projects. To me, coming in as a junior is a chance to reacquaint myself with programming on a deeper level. To finally apply the mountains of software engineering literature I had previously endured; all within a safe and risk-free environment.

It didn't bother me knowing that there are plenty of self-taught, degree-less developers with junior positions such as mine, all the while I have the shiny (and expensive) accomplishments earned during my time in Aberystwyth. Chances are, they will remain in said positions until they have developed the experience, confidence, and programming knowledge to ascend further. By the way, even though this can take a while, you know it's natural and totally fine. In any case, I knew that I would not be a junior for long. It would be just enough time to sharpen myself into form once again after spending so long cutting the grass.

Now that I'm over four months into my time at Stickee, where do I think that I'm at? Hand-on-heart, I think that both my technical skills and my more soft skills have skyrocketed, and it's thanks largely due to the support of my more senior developers who have helped me at each stepping stone. There's still always so much to learn, and that's okay. We're not encyclopaedias. We'll learn what we need as we go, and whatever is super important will undoubtedly stick around.

So did you meander for no reason?

Learning to teach has been incredibly meaningful and enriching and I don't regret it for a minute. I learned a great deal about the science of learning and of pedagogy and the impact of these skills is evident in numerous aspects of my work, no doubt. The students were 100% the most rewarding part and I would do it all again.

I understand why many of my friends and acquaintances criticise me for "postponing" just getting a software engineering job instead of spending more time in the Ivory Tower, but I did it for myself. It's what I wanted to do. There's so much pressure on graduates to race head-first into their careers. Many of whom spend months, if not years preparing all whilst completing their studies. I wanted to do these things now whilst I'm still young, full of energy, and with a head full of malleable brain matter.

Some quick-fire, tl;dr questions and answers

Conclusions

From programmer, to teacher, to programmer once more, it has been quite the journey. Frankly, I can't wait for the next chapters and I hope to document them here on my blog.

In case you're wondering, I migrated back to WordPress from Hashnode (though if you haven't seen my neat PHP API, go take a look) after being dissatisfied with the platform - it always felt more of a circlejerk of the same authors and I couldn't be bothered with that anyway.

Thanks for reading, and until next time.