Any resemblance to reality is pure coincidence. This story has nothing to do with my current or previous employers. I wouldn’t look for such troubles.
A notification popped up in the top-right corner of my screen. A 15-minute call with my manager, Claire. Once again without any agenda. Shit.
What could it be? I hoped it’s not a layoff. I was not fond of the job, but the warm crap was still better than the ice-cold reality of unemployment in a world where tech jobs are in a relative scarce.
If it’s not a layoff, it must be something about my performance. Claire always finds something to nitpick on. And that’s the better option. Sometimes she loses her mind and calls me a useless, incapable employee. It’s true that I’m not always as good as I would like to be, I make mistakes and sometimes I’m irritated by people talking too much, but I’m an honest worker doing my best. Even if it’s not always enough to meet the expectations of my manager.
After all, I had no idea what she wanted to talk about the next day and I was worried.
This time though I got stressed out without any reason. The next day, Claire told me that she had to go on a business trip to Bangalore to oversee the handover of the Green Oak project to the local engineering team. Originally, it was not her duty to go on this trip, but her manager, Jay, couldn’t go and asked her to do this.
She was very happy with herself, she even said that due to Jay’s personal constraints, it was up to her to guarantee the success of this project. At the same time, I thought that she was the only one who would have taken it on such a short notice. Claire was hungry for success and recognition.
She ended up being a manager due to a bit of a lucky constellation of circumstances. She was hired as a senior engineer and she survived a layoff a few weeks after her start date. Rumours said that the newest employees were not part of a spreadsheet which served as a basis for the final list of laid-off people.
Layoffs were followed by a bigger reorganization and she ended up in a team without a manager. She stepped up, her hunger for power put her in an ideal place to grab the command in an engineering team stuffed mostly with nerds who just wanted to work on technical problems. First, she was appointed as a stand-in manager and soon she was made official. Everyone was happy and she hadn’t shown her bad traits yet.
In a few months, people started to feel that she had a difficult time dealing with stress and her anger was directed at anyone who tried to deliver quality on projects that were progressing too slowly at times of understaffing. At the same time, she was also a perfectionist, she didn’t know the term good enough. It was all or nothing - a horrible approach in engineering. A horrible combination that guarantees constant stress.
Now, she was leaving for Bangalore for two weeks. She both said that she would be there to guarantee the success of the project and that it would be a personal sacrifice from her. However, this didn’t sound very genuine. But who could blame her?
Claire told me during our 1-to-1 that I’ll have to follow up on the important project of bringing our KTLO tasks closer to zero in one of the libraries where not a lot of active developments were ongoing. I knew some parts of this project, but clearly not everything.
During the two weeks she spent in India, she was barely available if I needed help and I could have clearly used some. At the same time, I wanted to show that “I can do this”, I can manage it without her help. I knew exactly that if I asked more, she would be even upset. How is that possible that you cannot do this? Are you incapable even of doing that? What kind of developer are you?
Who would have wanted to take on that crap? She would have probably asked all those questions!
In order to avoid that, I did my best without her help. Obviously, this project came in addition to my regular tasks and projects to work on. Claire wouldn’t have cared so I didn’t even tell her. I thought I could manage the extra workload for some time, no problem. Maybe she would even notice the job I did.
During those two weeks while she was away, I felt that everything went well. I did my regular work as if I had nothing else to do. I progressed with my project on refactoring that old client, I managed to fix some bugs in our CI, by applying a linter to our shell scripts.
In addition, I followed up on the project she assigned to me and started to clean up the backlog. I was waiting with full confidence for our next 1-to-1 once she was back.
I knew that I did my best during those two weeks. I worked all day long even sacrificing a bit of my personal time. I rarely do so, but I thought that this project and my relationship with Claire was worth it.
Well. Sometimes, your best is not enough to please people.
Our 1-on-1 upon her arrival went well despite her jet lag. We did some small talk about how it went in India for her, how difficult it was once again to get the results she expected and also about how fascinating the food was. Unlike many business travellers who enjoyed their company-sponsored food in semi-posh Western-style restaurants, she genuinely liked to try places where locals ate. On the flip side, she missed some networking opportunities with others from the Western offices who didn’t want to eat like locals which stressed her a little bit.
After discussing food and complaining about people eating in fake Italian ristorantes we went on discussing specific matters of my projects. I told her that I managed to remove two of the most daunting dependencies from our API and I also spent some time on the CI projects and identified the top offender tests of the stability of our tests. She asked some questions going into the details. By the time we could have covered the KTLO backlog cleanup, she realised that for the second 30 minutes of our meeting, she was double-booked and absolutely had to leave right there.
She thanked me for my hard work and ran out of the room.
I had a bad feeling, I probably mismanaged the meeting. Even though we should have had a full hour and she left only after half of it, I should have covered the most important topics first. Probably Indian food and Claire’s trip were the most important to foster our relationship, but then I should have talked about the project she specifically asked me to cover for her instead of the projects I work on all the time anyway.
In the backlog cleanup project, I had some difficulties and maybe not everything she had in mind was done, but I clearly made good progress and identified some points where more attention was needed. I should have talked about those…
I didn’t have to wait a lot to talk about that project. Sadly, it was clearly not on my terms.
Two hours later she stormed over to my table in rage:
- You didn’t do what I told you to do?
I could barely find my breath not to mention my words. She kept on shouting.
- All that I asked you to do was to work hard on the backlog cleanup!
- Excuse me, what’s the… what’s the problem?
- All that I asked you to do was to work on the backlog cleanup and you didn’t do it.
- That’s not true, I worked on it a lot!
- No! The backlog is not empty!
- No, it’s not. But I worked on it every day and I either solved or reassigned most of the tickets.
- So it’s not done.
- But look, out of twentyish tickets only two left.
- I don’t care. There are tickets left, so it’s not done. Is it done or is it not done?
- But I had all my regular duties as well…
- Answer my question!
- That’s right, there are two tickets left and…
- So it’s not done. Things are either done or not done. There are no states in between. You failed even this.
- Look, I’m sorry, you didn’t tell me that this was the most important to you, I had to progress with all the other projects as well and I did my best.
- I don’t care. I asked you one thing and you didn’t do. I can’t even assign one simple thing to you. I can’t believe what a useless dev you are.
We looked at each other with anger and bitterness for a few moments before she left.
The others in the office were terrified. Nobody said a word. Everyone stared at their screens and mimicked some work.
I felt inclined to go after her and make the situation even worse. The level of self-control I needed to exercise was unprecedented.
Once cooled down, I realised that I’d quit. At least the team, but probably even the company. Though I was unsure when to do it.
Forget the exhaustion-fueled rampage. Ignore the vast communication mistakes we made both before the business trip and during our one-on-one. There is one other thought that I cannot take and I cannot understand how someone can achieve anything like that in the corporate world or even in life in general.
“Things are either done or not done. There are no states in between.” That might be true for small atomic tasks. Did you take out the garbage? You might just put it down somewhere between your door and the waste container, but if you do so, it’s not done. Did you add a new dashboard to monitor the time of the builds? Did you publish the new version? Those are yes or no questions.
But when it comes to big tasks that can be broken down into sets of microtasks where partial implementations still move you forward compared to where you were, then this approach is not simply useless, but even counterintuitive. If you changed 3 tyres out of 4 and then you started to do something else, then it’s indeed true that you failed to accomplish a single task and probably did more trouble than good. On the other hand, if you painted all the rooms but one, then the progress is significant and helpful. If you already removed 70% of the violations spotted by your static code analyzer, you made progress despite the fact that there is still quite some work to do.
If you look at a backlog and most of the tasks are gone, it makes no sense to claim that there are no steps between done and not done. Even a partial completion is a meaningful progress. Maybe not something to be celebrated and it definitely doesn’t mean that the task is done, but the progress is helpful and meaningful. Claiming otherwise is somewhere between perfectionism and simply being a jerk.
Working for a perfectionist or a jerk is probably not the best idea if you want some sanity in your life. Even if you can deal with emotional outbursts.