Take time when travelling

This week has been a travelling week, choosing office interactions over time at home. The challenge is balancing the benefits of seeing colleagues in person with the (quite literal) pain of unfamiliar sleeping conditions. Ad hoc conversations have solved a few frictions quickly, chance meetings have given an unexpected opportunity to get ahead of potential problems and start on a good footing, the recovery time has been an additional days cost at the weekend.

When I’m working under tiredness or stress it’s important to take extra time to pause. Overreacting to surprises is not going to help anyone. This week, taking time to mull over a new situation with delicious food and time to myself was a good chance to step back and choose openminded curiosity over knee-jerk angry resentment.

This reminds me that although I am more extroverted I still have my limits. It also reminds me how many social cues and conversational opportunities I pick up by observing and overhearing. Many of the same good relationship outcomes can be achieved remotely if we commit on all sides to work together deliberately and directly.

Seniors need feedback too

If you ever ask yourself at work, “should I give this person feedback” the answer is always yes. What and how you deliver it is between you and that person. Hopefully you work in a company that openly values feedback and I do recommend Kim Scott’s Radical Candor as a good read to help you be clear around perspective and intent, but I maintain that the answer to “should I?” is yes.

This week I was involved in a meeting that scared me in its intensity, I believed I was not a warrior type or strong advocate. Still, I was myself and asked the questions I needed to for my situation and my reports. Afterwards I received some clear, specific (and positive) feedback on the impact I’ve made on other folks, even those I don’t normally directly interact with. I was honoured that they took the time, especially as being a senior I apparently appear like “I’ve got this nailed”. On the inside, I sometimes don’t feel like I’ve nailed anything much.

This new data has helped me switch and centre my internal world view. Knowing that others value what I do is massively heartening and knowing exactly what it was that helped, allows me to focus on improving that too.

So, receiving feedback is for everyone, not just those at the start of their career. Giving feedback is for everyone, not just those in leading roles. We’re all travellers on a journey, let’s keep talking along the way.

Begin with the balance

It’s been a mixed week back at work with some great feedback on how I’ve been leading a team of out of hours support engineers but also some new situations to deal with as a line manager.

To combat feeling disconnected from the consultancy company I work for I’ve embraced some new networking opportunities. Focusing on clients is really important but there must be balance. On top of community of practice discussions and regular showcase events, the donut app on slack is a great way to stay in touch and stay fresh!

Planning has started for some more coaching sessions; I’m excited to review these with an unexpected new collaborator and develop them more in the coming weeks.

One major highlight has been rediscovering a coding joy: a simple review session with some users of a common code library I’ve been working with brought a meaningful refactor. This turned an addition for use by a single app into a helpful update for everyone to use, reducing the specialist knowledge needed to get the same bunch of improvements. It was a great reminder of how a small change now can save hours of developer time in the future and how developer experience is an important part of high performing teams.

Snacks & candlelight

All work and no play would have made for a very dull Tess indeed so it was good to balance all the work with feeling rooted at home, reading letters from friends, enjoying walks and bird watching with new binoculars. Rainy days also inspire inside exercise and reading pulp novels hygge style. To keep this going, I absolutely reserve the right to keep the fairy lights up in the house until February!

Stepping out of phase

This week has been a really odd mix, finishing some things off, planning for a few new things in January, reflecting on some experiences from the summer and prioritising family.

After watching one of my favourite seasonal movies last weekend I have had one foot into the midwinter holidays and a head full of tinsel. Far from being grumpy this has enabled me to drag myself out of wallowing and arrange some catch ups with friends and family before the end of the year. Bonus warm and fuzzy feelings for buying extra goodies at the supermarket to donate to the food bank stall outside. I can’t solve all the underlying problems but the least I can do is share what we have.

It was also a real contrast this week to share a cautionary tale with less experienced workmates, talking about a long running upgrade project that was impacted by dysfunctional team culture. Very much a presentation on what not to do, or put up with and when to start asking all the good questions: why am I doing this alone? why did this get left so long? and surely someone in the organisation also knows about this? Two days later I found myself doing another upgrade of a very different kind and having a much better experience: just one version jump, a well known and documented system and very clear requirements. Apparently things can indeed get better!

With so many heading off for a festive break in my team and the wider organisations I deal with, much more is happening asynchronously. This is great for flexibility but has left me feeling out of phase, not sure who I have a last meeting with before 2023 and who else I have missed wishing a Merry Midwinter. A couple of things I thought I would hear about might not be finalised until the new year, so changes are afoot but a little in limbo: not yet wrapped up with a neat little bow.

Very much on the plus side: in the last few days, I have had the chance to catch up with all my reports and celebrated some of their proud moments from 2022. I am privileged to be there to support them and look forward to seeing them grow (and growing beside them) next year.

How ever we spend this time of year, may it be a kind and peaceful end to 2022.

Fighting advent blues with magic

A bit more of a open, honest, personal round up this time: I’ve really struggled this week. Physical maladies and low vitamin d haven’t helped.

It started well, I found the root cause of a seemingly obscure problem involving compilation of c based ruby extensions, changing patch versions of ruby language and a cached folder of gems. These extensions are built against an exact version of ruby and so changing ruby patch version without rebuilding your pipeline’s cache of gems will cause an incompatible library error to be thrown, even though these changes won’t bring a change to your gemfile.lock file. 

Looking back though, this seems obvious (once you know the context) so it’s difficult to see as a real win. It’s a bit niche for the rest of the team to value either.

I’m finding it hard work to be embedded in a disengaged team. When I’m more conscientious and don’t cherry pick work items I’m left working on something no one else wants to touch and I’m not particularly inspired by either. It’s easy to feel resentful and taken for granted at that point.

I’ve got concerns about the future too, there’s a few things I’m waiting on the outcome for. They probably won’t conclude until January and I’m struggling to be patient. Apparently I get twitchy,  crotchety and destructively introspective rather than just enjoying the space to pause.

One suggested alternative is to pitch for a new role with more money. This seems decidedly counter intuitive and jaded; an opinion based on the unshakable conclusion that money is the only thanks one can ever get for a job well done. What a horrible world we live in if this is true. Time to bring on the Hygge.

In other dispiriting news, our usual annual social gathering got disrupted this year as our idea of fun didn’t match that of our friends. Their desire was to watch football in a loud crowded setting followed by a meal, four hours after my stomach thinks my throat has been cut. I need more options for social interaction methinks.

But today is magical, it is winter festival tree collection day, and it is snowing.

Cheery snowman ornament hanging from a spruce evergreen tree

Scout rules still apply

Apart from thinking ahead and finding collaborators for coaching and facilitation sessions early next year, this week has been mostly hands on coding.

I realise I miss weeks like this. There is something really satisfying in adding small features or fixing bugs and taking the opportunity to clean things up as I go along. Cleaning up can mean:

  • Checking base image versions in docker files
  • Bumping the package management version (e.g. bundler for ruby world)
  • Curating dependency chains
  • Getting the project ready for dependabot or renovate to help with dependancies
  • Considering a rename or split for a method that does more than it used to
  • DRY-ing up code where we now repeat ourselves more than twice
  • Adding a couple of tests for edge cases

It’s important to think about a few things when you decide how much to do at once. It is possible to creep all the scope and get into an update that should be its own story.

  • Do you have an automated test suite? what about build and integration pipelines?
  • How far are dependancies behind? Will we cross into breaking changes territory?
  • Is the project in sunset i.e. deprecated and mostly replaced

Doing some clean up as “small changes and often” really helps stay up to date. The longer we leave it, the more it piles up and the harder it is to face, and to tackle.

I first heard about “Code Scout Rules” or “Boy Scout Rules” in a talk given back in 2015 by Matt Cockayne and it’s still just as important as ever to leave the codebase better than you found it.

Teach someone to fish

This week I had the pleasure of facilitating an ensemble programming session for a quartet. It was their first time working in this way but they’d heard it might be worth trying. The knowledge gaps between the participants could not have been larger: highly experienced through to apprentice.

On Tuesday, in the first 30 mins they learned

  • the roles: typist, navigator, support (and facilitator)
  • the timing: 5 minute rotations and a break every full cycle
  • patience to talk to each other and really listen to each other
  • slowing down to the slowest speed was good to share knowledge

After that they wanted to try it for a full morning.

After the morning session they said they could see the real value of using ensemble working to bring everyone up to speed quicker: apprentices, new starters and late joiners to projects already in flight.

They spotted and fixed a number of bugs that had been missed before; scouts rules we naturally brought into play.

The apprentice had asked more questions, and had been able to play as navigator for the first time; this was a massive confidence boost.

On Thursday, the team retro was full of positive comments about the experience.

On Friday, one of the quartet asked me for the link to the tool I’d been using to keep track of rotations and timing. They want to run more sessions like this themselves, not all the time, but at least several a week. I couldn’t be happier.

How do you keep genuine?

This week I was asked a flattering question by a colleague during a mutual buddy chat. He asked:

when you work with junior (sic) developers in a workshop and report back a positive learning to the group, are you genuinely finding value or just supporting the learning setting?

In thinking about this I realised how much has changed in the last 3 years.

I can now admit I am rubbish at dissembling.

I can also find huge value in working with all levels via an “again for the first time” approach, an approach I use every day. It’s refreshing to meet today-colleague as a new person and today-challenge as new too.

Is this a new topic for some?