About John

My path to programming began in the academic world. Back in 2009, I started out with Matlab, analysing data and publishing scientific papers in the field of atmospheric science. I wasn't coding everyday back then like I do now, but I could already see how impossible my work would have been without it.

Image of a thesis

Technologies have evolved so much since then. I began to take notice of web development during my PhD, and since I had worked with Python so much, I looked into frameworks like Flask and Django to see what the Python Web ecosystem had to offer.

To fill in the blanks of the transition from scientific programming to web development, I enrolled in an intensive 9-week Bootcamp program with Le Wagon. Even though I learned Ruby during this time, and a little PHP shortly after, it wasn't long before I came back to Python, armed with a much deeper knowledge of Javascript and frontend technologies.

By early 2020, having finished my bootcamp and doctoral studies around the same time, I was ready to transition into full-time software engineering. I worked for Propylon, a company creating some cool new technology for the American and Irish legal systems, and later Funnel, who are a huge player in the American real-estate industry with their bespoke housing platform. Over time I began to learn about design patterns and sustainable architecture. After my contract with Funnel, I took another with CarbonSpace, a startup who are creating groundbreaking new tech for monitoring Carbon emission using satellites.

Image of a programmer

But there was one problem... Legacy code was everywhere. Even with a young codebase like the one at CarbonSpace, I could see tech debt sweeping in all over the place. It was obvious that this stemmed from an over-reliance on coupling. I wanted to explore a more modular way of doing things.

And so, my plans for the next few years can be summed up in one word. JAMstack.

Why JAMstack? Because my time working with both bigger companies and the startup world have shown me that monolithic architecture is extremely dangerous. Requirements change, code goes stale, and speed of development is a huge concern. As I learned about JAMstack I realised that we don't need to reinvent the wheel. We can grab the best tools available, swapping them out as time goes on. We can decouple the frontend, the database, the backend, the cloud infrastructure, authentication, payments...

JAMstack is just a way of doing things. I found I could fully render static pages with Next.js, upload them on Netlify for free and take full advantage of the global CDN for huge speed gains. It was unbelievably easy, compared to creating the same thing in Django. My goal is now to find a company who belives in this paradigm, if I can, and I would love also to start working on smaller, more client-driven projects.