2017: A Recap

06 May, 2018

So it turns out I’m pretty bad at releasing content. ¯\_(ツ)_/¯.

Here’s an edited/rehash of a blog post I wrote on paper on January 1.

What I achieved:

Got into Big 4 Consulting

  • I got to implement a data pipeline for legacy data-generating devices in Python, and really impress some “Important People” about how effective a consultant can be, with a bit of Python knowledge.

  • Implemented a metadata transformation tool for a historic (30 year old) CMS to allow the sale of an insurance business between huge multinational corporations. This was a great project for me, despite the most advanced technology involved being PowerShell and Python. I learned a lot about talking to non-technical business users, and the fact that no one really cares what technology you use to solve a problem - just solve that problem scalably.

  • Designed and implemented a snowflake schema for a real-time retail analytics dashboard. This was great fun, because we used Apache NiFi for things we shouldn’t have, and we ended up having to use NiFi to orchestrate python scripts to transform raw data into a snowflake schema. I also learned a lot about requirements gathering - or rather: MAKING SURE THE CLIENT KNOWS WHAT THEY WANT. We spent something like 3 months between 2 and 3 consultants on-site, just manipulating data, making it fit into a schema, and building dashboards. No one stopped to get the client to sign off on what questions this dashboard was supposed to answer.

Left Big 4 Consulting - Joined an Engineering Services Consulting firm

  • From September until the New Year’s Eve was awesome. I worked in a mix of a product team, and a consulting-product focused team with some of the smartest engineers I had ever met.

  • I got to get my hands dirty building projects with React, Redux, Apollo, Relay, and worked with a whole bunch of frameworks and build tools I had only ever experimented with on my side-projects

Started my first “real” side project

  • Fearing that my knowledge in React wasn’t up to scratch, I decided to start a Job board to practice my skills in React, Redux, and Terraform (all things I’ve written about quite a bit now!)

Regularly started going to meetups

  • I had been promising myself to go to the Sydney Python meetup ever since I graduated, but I always kept self-excluding, and making excuses for why I couldn’t go.
  • Learning React mainly via links left by core React team members on Twitter made me realise that the JavaScript community was super friendly and welcoming. So I started going to React Sydney every month to hear about the latest in React, as well as what everyone else was working on.

What I realised:

  • Big 4 Consulting has its own objectives, and they’re not compatible with the classic Software Engineering objectives of Quality and Maintainability.

  • As such, it is a terrible place to learn and grow as a software engineer, leading me to go off in search of greener pastures after only 3 months on the job. It took me about 4 months to find a company in Sydney where engineering wasn’t an afterthought.

What I learned:

  • Funnily enough, PowerShell scripting.

  • Picking up on red flags in the interview process. (I noticed a few things “off” about business leaders in the process, like being incapable of taking feedback - but ignored them)

  • Success in consulting (at a big firm) is purely driven by how well you network at the start before your first project/engagement. Subsequent engagements can be networked into, but once you pull off that first engagement, everyone will have an opinion on your performance, which will affect whether you get the next sexy data analytics project, or some documentation piece at a federal government engagement.


Enjoyed this post? Receive the next one in your inbox!


Previous: So I had an idea...

Next: Learning server-side rendering in React with GraphQL