When Your Codebase Hauntsđź‘» Your Dreams

Photo by Lan Gao @langao on Unsplash

As summer rolls on, my days have been a blend of sunshine, and the glow of blue light form a laptop screen and â€¦ recurring nightmares.

My dreams have descended into a rerun of my 9–5 work-life. I want to take you through my experiences and feelings, and what I’m doing to myself through the rollercoaster life of a software engineer and how this is manifesting in my dreams.

The Scene

For me, it’s summer vacation. That means I’m spending my days in a place with slightly better weather, facing a wall and typing on a laptop without an external monitor (this is the truth, believe it or not).

The tension for me on a vacation is that work isn’t done with me.

The Recurring Nightmare

I have dream (not that one) which is that I’m knee-deep in a god-awful codebase. In my slumber I think that I’m fixing it, making progress refactoring the mess into something halfway decent.

I suddenly wake up (tension in my shoulders) remembering that when I return, I’ll be playing catch-up for the next few sprints, and I do indeed work on a trash codebase.

I’ll pay the price for taking this time off and begin to wish that I’d never gone on vacation in the first place.

The Causes

Stay in Your Lane

We have Agile teams, but nobody covers each other’s work. That means when you go on vacation you need to catch up on your work on your return.

Too many team members are on vacation at once? You need to rearrange your vacation. This is across your tech team and your cross-functional team making it next to impossible to take any vacation at all.

It goes without saying that as a developer I cannot change this, other than rearranging my vacation time. If I had more influence, I’d enforce that it’s time to work as a technical team and cover each other’s work.

Blame The Previous Developer

I want to get to the heart of the poor codebase I work on. Now blaming the previous developer is something of an art form in the software developer game and that’s a fun game, so I’ll join in.

At interview for my current company one of the promises was that we would move our teams away from being “contractor” teams. We would have an opportunity to improve the codebase. I thought count me in. That sounds like a gig that will be fun for me to engage in.

I didn’t account for three things:

  • The codebase I work on is a dumpster fire

  • Even the permanent employees couldn’t care less about coding standards

  • The company continues to use contractors.

This results in meaningful change being impossible.

Let It Go? Easier Said Than Done

Ah, the Frozen soundtrack. I’d love to let work go when on vacation.

I find it hard because I’m the only developer of my type trapped in a silo on my own. The battle of trying to clean up after a parade of short-term, well-meaning and misguided predecessors without support isn’t easy.

I’d love to write blog posts demonstrating what a great developer I am but at the moment I’m wondering why I bother at all. The point it’s damaging my vacation time is even worse for by developer soul.

Conclusion

I’m really on my beautiful summer vacation, but I’m working on learning several new language features to implement in our project. If I thought, I’d get those changes into the codebase I’d be living the developer dream.

Given this is true, I must be the type of developer people would want to hire.

So, at this point should I just quit? Maybe. Probably. But then who would complain about the codebase?

Previous
Previous

5 Ways You Code Better Than Any AI

Next
Next

Software Developers are Aging out. Here are the Facts