How I became a React developer

I started my career having finished a double Bachelor's degree in Software Engineering and Commerce, thinking I could just get a finance job, and automate the boring parts with my Python skills.

Then reality hit. The European debt crisis was in full swing, and Sydney, Australia was a backwater for finance jobs (especially as an average student).

Roughly a year of job hunting later (including one call back, in which the recruiter asked me why I didn't go back to university and get a degree in accounting if I wanted to work in finance), I realised I should probably rewrite my resume to be more Software Engineering focused.

Eventually a friend from university suggested I pitch his hedge fund a dashboard built in D3.js - this cool new technology (at the time) that made their Excel dashboards look ancient.

D3 Dashboard

So I started learning JavaScript

I spent a week learning just enough JavaScript to make a convincing dashboard of all stocks trading on the ASX 200, with data fetching from Yahoo Finance. I didn't get the gig, but I ended up getting the attention of the agency that worked for the hedge fund.

I ended up working for the agency, building data pipelines, learning more Python, building sites in Django and picking up more JavaScript via angular.js. After about a year, I started longing for more, so I started interviewing with the Big Four Consulting Firms (EY, PwC, Deloitte, KPMG), and found myself with an offer for a role at Ernst and Young (EY).

I was so keen for a "big name" on my resume, I was willing to take a 10% pay cut to work there.

So I became a consultant

The consulting job didn't quite turn out as planned.

You had to wear a suit, most clients already hated you before meeting you (I assume due to the cost of hiring the firm). To top it off, it felt weird being told to perform manual tasks in ancient drag-and-drop software with your team after having spent a year writing Python to automate that sort of work.

I'm told since then, the latest advancement is that they're using a sort of scripting language (they're selling it as Robotic Process Automation or RPA to clients) to automate away the manual work. I'm still glad I didn't stick around.

I started hatching a plan to escape after a few months. I wanted to go back to being a software engineer, but jobs in Python were rare in Sydney.

So I started learning React

I had written enough JavaScript to know React was probably going to be a big deal, so I hit the tutorials. I found the official documentation at the time to be quite dense, it almost felt like you needed to already know React to be able to finish the tutorial.

A couple of tutorials really stood out, (and are amazingly still online):

After the tutorials, I started building side projects in React and GraphQL while hunting for a React job.

It took about four months to find a job, but what I found almost doubled my salary.

So I became an entrepreneur

I never really stopped building side projects while employed, mainly out of imposter syndrome, as I felt I needed to catch up to my colleagues to be a useful member of the team. I wrote about how that's going for me here.

I personally wouldn't recommend it, unless you're really good at managing your own psychology, particularly around burn-out, self-talk, and managing your own expectations. I eventually learned those skills, but it was a bit of a rollercoaster along the way.

Over the years, I've built:

  • a job board
  • an appointment scheduler
  • a room booking system
  • a GraphQL snapshot monitoring service
  • a REST API monitoring service
  • a frontend performance monitoring service
  • an uptime monitoring service (OnlineOrNot - I'm currently working on this one)

After a few years of being a React developer I finally got a frontend job at Atlassian, followed by a software engineering job at Cloudflare.

What's next?

I still think React (or something like it) is going to remain, and simultaneously be, the next big thing. The numbers tend to agree with me, React was #1 for hiring on Hacker News in 2016, 2017, 2018, 2019, 2020, and 2021.

Learning React has greatly improved my quality of life and my job prospects, so I want to help others do what I did. I tend to write about common pain points that folks experience while using React (most recently that has been useEffect), and how to overcome them.

I use my newsletter to share what I'm working on, so you can follow me there if you'd like to see it first.