It’s my last day at work. Tomorrow I will officially be unemployed.

I’m sad it had to end this way.

Not because I am leaving the company and the product where I invested nine years of my life. My leaving is just a small part of this. What saddens me is that an entire great team has been destroyed.

I say “destroyed”, and it may sound overly dramatic, but I really feel that that’s what happened.

Collectively the core team of senior developers had built up twenty-six years of experience of this product. That is not even counting the the Malmö team who were all let go earlier this year already.

A team is more than just the sum of its members. We were not just a bunch of people sitting in the same room. We were a team – we achieved things together that none of us would have been able to do on our own. We had figured out ways of working that made the team productive and creative. We cared for each other, respected each other, complemented each other. These parts of a team are even harder to replace or rebuild than the product experience.

And all of that has been thrown out. There is no more ReQtest dev team. What a sorry end to an era.

I hope the product survives this.

More interviews. Which means I get to visit interesting parts of Stockholm that I don’t normally see. This is the Kungsträdgården subway station, one of my favourites. It’s very deep (the deepest in Stockholm I believe) and has interesting decorations. The station walls are plain bedrock, in places, with water trickling in through the ceiling. Moss grows on the walls, including species that are not present anywhere else in Stockholm. It smells like a cave.

On the topic of interviewing… If I am to search for a job, and if I want to find a good one, it makes no sense to meet one company only. I need to meet a bunch of them so I can compare and contrast. I have interviews scheduled for most days this week and next.

The obvious question is, what do I consider a good job? What kind of job do I want? What am I looking for?

I am looking for a developer job, not a manager position. (That’s a discussion worth an entire blog post on its own and I’m not getting into that now.)

What makes a good developer job?

First, there are the obvious things – competent colleagues, sensible bosses, a stable company that will be paying my salary on time, a decent office etc. Those are things that anyone would agree with, in any business, so they are not particularly interesting.

Next, there is the MAP triplet, things that I imagine any skilled worker would want: Mastery, Autonomy, Purpose. On the “purpose” side, specifically, I want to work on “good things” – projects that make some part of the world a tiny bit better, rather than worse. That means a no to online casinos, for example, and to all kinds of digital marketing.

I am a strong believer in the agile development philosophy. I want to work together with other developers rather than on my own. I want to work in close communication with customers/users.

I believe in quality. I want to work in a team that takes pride in doing an excellent job and believes in producing quality work.

I have started searching for a new job. Today was my first interview. (I took this photo in the lobby of the building where that company has their office.)

I’d been postponing this inevitable task, mostly because I didn’t want to take the first steps. One of the first steps would be to update my CV and I find that both boring and difficult, so I kept not doing it. But now a (soon to be ex-)colleague put me in contact with the company he is going to join, and that was an opportunity I didn’t want to miss, so now I had to start working on this stuff.

It’s just the CV and letter-writing part that I don’t much like. And it turns out that even some of those boring steps have been stripped away from the job search process, on some recruitment sites for the IT industry at least.

I do quite enjoy job interviews. At “good” companies, with “good” people, there are often interesting conversations to be had. I get to learn about an interesting company and their product(s), and to talk about things that interest us both.

Balancing my two main areas of responsibility by trying to do both at the same time – cooking dinner while providing support to the devs running the deployment at work.

With about five weeks to go until my employment ends, I am focusing on so-called “knowledge transfer” to the team in India that will be taking over. It feels quite futile – trying to hand over during a few weeks all the knowledge and experience that our team has accumulated over the years. The Indian team is understaffed and (frankly) underqualified for this, and they mostly don’t have any time to practice what I’m showing them, so it feels like we’re just going through the motions.

The project not quite a train wreck yet but I can see one looming on the horizon. I wonder when the others will see it. I hope I’m wrong but all the signs are pointing in the same direction.

I have invested so much of my time and energy in building something good. Two good somethings, even – the team and the product. And now I get to see it all squandered.

A late night in the office, for a server migration job. It was past 2 in the morning when I felt confident that we were done enough so that I could leave. And then at it again the next morning for the inevitable post-migration “firefighting”.

This job is seriously messing up my life.

I ask myself for the N:th time why I am still staying at my current job. I guess I’m still hoping for a turnaround. I give it until September, and if the situation is no better then, I will give up.

The team is trying to complete three priority 1 projects at the same time, all of which require constant attention, all of which must be done before midsummer. I’m like a juggler with too many balls, and more are being hefted at me. Other projects that we should prepare are getting no attention, so the next couple of months will be singularly unproductive because we’ll be picking upp all the dropped balls.

I am accumulating overtime daily, frequently catching up with work late at night at home. I sleep badly. I’ve missed breakfast twice in a week, and I haven’t gone to the gym in two weeks.

I’m walking precariously close to the line where I will break, but I’ve been doing it for so long now that I know the signs that mean I’m getting too close. When I cannot fall asleep at night, or when I wake up from weird dreams again and again, or when I wake up and yesterday’s stomach ache is still there.

I am so used to feeling constantly stressed – faster, faster! – that I don’t remember how to relax and slow down any more. Yesterday I had to tell myself to pretend I was not in a hurry, so that I could try and figure out how I might behave in that scenario.

By Sunday evening, after two days of focused effort on slowing down, I feel somewhat like a normal human being again. And tomorrow it’s back into the fray again.

The situation at work is spinning out of control.

We got a new CEO a couple of months ago. Various workshops about our processes and practises followed, and were welcomed by the team, because we knew things needed to change. Agreement was easier to find in some questions than in others, but in general, we worked until we agreed on key points.

Now I feel that the development process has effectively been hijacked by the CEO. The development teams no longer have much say about important parts of it.

Previously we had workshops. Now we have meetings where we are told what to do. We sigh with resignation, and he does not seem to even notice.

We do not have agile self-organising teams any more. We have top-down planning and scheduling instead. We don’t really even have teams any more – just a bucket of people. (A “bucket” being the technical term for “an unordered collection of weakly related items”.)

The chances that I will still want to be with the company in, say, half a year’s time are decreasing by the day. Currently I’d put them at 10%. This thought actually feels quite liberating.

So I went to the gym and took out my frustration on the kettlebells. I cycled to and from work to tire myself out, so I can sleep at night. When I got home, I found peace in photography again, and then attacked some of the more stubborn large rocks in the ditch I’m digging.

Today is release day at work. The release responsibility rotates so most developers are reasonably proficient in pressing the right buttons, and it wasn’t my turn this time. I normally stay in the office for the release anyway, especially if the developer pressing the buttons is a junior one, because I feel ultimately responsible. Today I couldn’t stay late, so I logged in from home instead, after picking up the kids from school.

It turns out the kids are surprisingly good at entertaining themselves and doing things together if they really, really don’t have the alternative of hanging around an adult. They spent a good long while playing with kinetic sand, and they even cleaned it all up after themselves.

A nightmare of a day at work.

We have a major release planned for 17:00. Four hours before release, key functionality that we really, really want to get out to customers is still not release-ready.

The web site is down already when I get into the office at 8. Infrastructure issues at our hosting provider. At 15:40 the application, the thing our customers are paying for and the thing we want to upgrade, also goes down.

At this time I go out for a long walk to clear my head of all the frustration, and take some photos of the neighbourhood.

(When I come back, all the servers are still down. We take a pizza break and start preparing ourselves mentally for having to cancel the release that we’ve been planning for since before summer. At the very last moment, when we are minutes away from cancelling, the servers come back online and we forge ahead after all.)

Our developer team took a day off from ordinary work and had a “dev day” with a few discussions but mostly with coding for fun together.