I mentioned yesterday that ‘a big part of my job is talking to people’. So far this week I have done zero programming in terms of writing code. But I have been doing quite a lot of software engineering, in just 2 days! 

  • Dealing with support queries (it’s my turn on the rota this week). This usually involves updating something on our website that our users can’t change themselves, because we haven’t built a way for them to do that particular thing yet.
  • Talking through technical decisions with other developers: things like where to put a new piece of code, or deciding whether to prioritise a piece of tech debt over our other work
  • Talking with teammates from other disciplines (product managers, delivery managers, etc) and giving my Important Developer OpinionTM on things that affect the whole team, both devs and non-devs
  • Gatecrashing a frontend developer community meeting, to share what our team has been doing and find out what’s happening on other teams (and if we can nab any of their cool stuff)
  • Approving a handful of PRs that were auto-generated by a dependency management bot
  • Approving a handful of PRs by real humans on my team :)
  • Taking part in a threat modelling workshop. This is a process where the team tries to identify potential weaknesses in a system. I might go into more detail about what threat modelling involves in a later blog, but you’re not getting any specifics about this session, sorry!
  • Making a small tweak to the configuration of our CI environment, to improve its reliability. 

That last point was the subject of the only PR I raised, which was a single commit of 2 lines of YAML. This week I have written more lines on this blog repo than on my team’s repos! Yet I feel like I’ve been extremely productive.

My point here is that maintaining a platform (and talking to people about it) is as key to software engineering as writing Python scripts or fixing bugs on a web application. I’m quite surprised at how much I enjoy all the non-coding bits of my job, though I’d be sad if I didn’t write any code - I need that dopamine hit of tests going green just as much as the next developer. Finding the right balance is tricky! Hopefully by the end of this week my ratio of coding to ‘engineering’ will be a little closer to 50/50.