Sam Hooke

Reflections on 10 years as a professional Software Engineer

As we begin 2024, I’ve now been working full time as a Software Engineer for over 10 years.

Upon reflection, here are a few of the most important things I have learnt:

Work life balance §

  • Work is a marathon, not a sprint. You’re in it for the long haul, so the pace needs to be sustainable.
  • Some problems can only be solved by stepping away from the computer. Go home, get some rest.
  • Computers are pretty great, but they’re not everything. Make sure you have hobbies outside of computers.

Career development §

  • It’s okay to say “no” to opportunities that come your way, but actively pursue the opportunities you desire.
  • If your presence is critical to a project’s success, it’s exciting, but it’s hard to move on. Train others so that you can both progress.
  • Make it easy to prepare for your annual review. Record your progress each week, even if just a couple of bullet points.

Mental health §

  • No one is immune to burnout, anxiety and depression. Be open with those you trust.
  • Imposter syndrome is no joke. Pause, and remind yourself of the truth.
  • Be kind and encouraging. Assume best intent.

Learning §

  • It’s normal to feel out of your depth when learning something new. Press on.
  • If you’re stuck, sometimes just formulating the right question can give you the right answer.
  • For everything you know, remember there was a time when you did not know it.

Documentation §

  • Write things down, and make it easy for others to access and contribute.
  • Different documents have different audiences. Not every reader is a Software Engineer.
  • Be detailed when writing tickets. They may lay dormant for years, before being read again by you, or someone else.

Interpersonal §

  • Good relationships are vital for good software; social structure goes hand in hand with software structure.
  • A day online, an hour with a decent technical book, or five minutes with the right person, can save weeks.
  • People come and go faster than you realise. Enjoy their company and learn from them while you can.

There’s more that comes to mind, but let’s leave it at that.

Farewell 2023, onwards to 2024!

These are rough notes that vary greatly in quality and length, but prove useful to me, and hopefully to you too!

← Previous: GitLab CI and poetry-dynamic-versioning
Next: Detect if Ansible is running under Vagrant →