Wednesday, 10 April 2019

A-day-in-the-life-of-a-backend-engineer (Zenjob Blog Post)

A few weeks ago I was asked to write a blog post for the company that I work for: Zenjob. Naturally you can read it here: A-day-in-the-life-of-a-backend-engineer

When I wrote this I was conflicted between writing the absolute truth, and writing a propaganda[1,2] piece to be paraded around for recruiting purposes. I think I managed to settle on a nice middle-ground.

While everything I wrote was true, there was definitely some lies by omission. Take today for example - recently I've found that I'm lucky to get a solid 15 minutes of coding in, and its felt like my days have been slipping away with nothing to show for at the end, so I decided to do a little experiment where I recorded, hour by hour, everything I did and then colour-coded it and evaluated at the end.

I will say first that today was sprint-planning[3], so it was always going to be meeting-heavy, but I ended up spending most of my day either in meetings, or performing follow ups on meeting outcomes. Sure I got to look at code when getting back to people on their questions, as well as an hour of code review (naturally not in any cohesive block), but I didn't get to write more than a line or two.

This might sound like complaining, but in truth I don't mind it so much. At this point I view my role in the team as an enabler - what I sacrifice in writing code is more than made up for by enabling a much larger range of people to do their jobs more effectively.

Obviously a team where everyone does this starts to fall under the heading of an "architecture" team - ivory tower greybeard type people who make grand decisions and help the younglings[4]. As an organisation we're not quite there yet, but I can definitely see where such a group would be useful.

Circling back 'round to the topic at hand, only time will tell if my life is going to be defined by meetings, or if I'll be able to carve out some "no meetings" blocks. In the meantime, I apologise to everyone who has a +1000[5] line code review out that I haven't had a chance to look at - It's simply that I don't have an hour to grok it and provide meaningful feedback.

[1] In the "House of Terror" in Budapest they had an amazing room of old propaganda posters, which I wish could be photographed. There are some great ones that would be amazing T-shirt design inspirations
[2] Propaganda isn't all bad - eat your vegetables kids
[3] I have some opinions on sprints, and working in teams in general. Ask me about them sometime
[4] /insert Star Wars reference meme to make sure my blog captures that vital 8-18 demographic
[5] Please stop creating such massive reviews. I know I'm not the only one that struggles with this. You lose the right to complain about slow reviews once you hit more than 250 lines

Tuesday, 9 April 2019

Code Jam 2019

With the qualifying round over, I'd like to take a quick look at the problems I solved, as well as those that I didn't.

This post is also being used to test out Blogger, and so I'll come back and edit this later with the real details

Some sample code