Work Hours #2: Working From Home

When we worked in the office, I found that if I had finished my assigned work and it was towards the end of the day – I was reluctant to start something new, but I wouldn’t have the guts to go home (I thought my manager or colleagues would question why I was walking out 30-60 minutes earlier than you should). So instead, I’d stay at my desk and talk to a colleague or browse some programming websites, casually look through recent bug reports, or bug fixes. But either way, I wouldn’t be working.

The thing is, I would rarely walk away from my desk during the day. Yet there were other people that would go for a break for 10-20 minutes on a regular basis. Then there was Derek that took so many breaks – he would only work for about 4 hours instead of his contracted 7.5 hours per day! I explained this in my previous blog on Work Hours.

When I thought about it, if it was acceptable for Derek to work like that, there shouldn’t be anything stopping me walking off after 4 productive hours at my desk.

When we moved to permanently working from home, I had my usual office mindset where I would rarely leave my desk and wouldn’t shut my laptop off until it got to 5pm. Then a few months in, I started taking a few more breaks, but still wouldn’t leave until 5pm. Sometimes if my colleagues asked for help around 5pm, I’d happily help them out for 30 minutes or so.

If you think about it, I was probably working more at home. There’s no one distracting you by walking past your desk, no temptation to look at what other people are doing, no office banter to distract you, no one coming to your desk unannounced.

A few weeks ago, it got to 4pm, and I started wasting time – having a nosey at bug reports and recent code changes. Then I thought “what am I doing? Why am I wasting time until it gets to 5pm. No one is going to see me leave”. So I walked over to my PC and started playing games. I left my laptop on, and if people messaged me, I would rush over and respond. Sometimes they wanted help and I would call them. Other times they were sending me unimportant stuff, so back to games.

Over the last month or so, we have cut down the amount of bug fixes we are putting in the releases. I have quite a few fixes waiting to be checked in, but I’m not allowed to commit it because of the restricted releases. So I’m on target for the work I’ve been assigned. I’ve sent a message to my manager, requesting more work. While waiting for a reply – I go play some games. He could take up to an hour to respond, because he could be in a meeting. No point wasting time and waiting around.

I have a high standard of ethics, or like to think so. I don’t see a problem with this new way of working. I’m getting the assigned work done, and I’m having fun. It’s not like I am actually slacking off. Also, I did say I always have my laptop on during work hours and will promptly respond. There’s times where there will be something important and I’ll work past my contracted hours, so it kind of cancels out anyway. I don’t complain if I work 2 extra hours some days to investigate/fix some important issue, because I know I’ve taken the time up front.

Additionally, sometimes you have those meetings where you don’t really need to participate so you end up casually listening. So sometimes I have whipped out the 3DS or Kindle and played some casual games whilst listening to the meeting. Multitasking.

Some days I’ve kept a book at my desk. When there’s something that blocks me for 5 mins or more, like I have to rebuild our software, or I need to wait for someone to finish their meeting – then I can read.

Managers are always going on about how important it is to have a good work-life balance, and how we need to be aware of our mental health. You may as well take advantage of the new way of working. It has its disadvantages but it also has advantages like this.

Colin Promotion

I did mention that Colin joined this team because he saw it as a good opportunity for promotion. I thought he was absolutely nuts because he didn’t even deserve his Senior position, yet he was aiming to be among the “big dogs” in the company (often known as Principal Developers). I’m sure you will agree that he has ‘ideas above his station’ if you read the stories I write about him.

Well, now I have egg on my face – because he has been promoted yet again, and I’m still not a Senior. He is two ranks above me now, can you believe that?

I sent messages to some of his old colleagues to inform them of the news. Usually, if you tell someone about a promotion, you will get neutral responses like “ok, now I know who to talk to about X”, or maybe some positive responses like “brilliant, he really deserved it”. Out of 7 responses, what percentage were positive or neutral?

0% positive, 0% neutral. 100% negative. Some people even accused me of lying. I don’t normally put swearing on the blog, but I’ll include this one. Here are the responses:

“What!? I don’t know what to say to that.”

“haahaha are you fucking joking?”

“wtf..what is wrong with the managers?”

“Be prepared for more mistakes”

:joy:Is he your team leader? That should work out well :face_with_rolling_eyes:

 “wow, how did that happen? God help the world”

 “Don’t lie”

I’d like to point out all I said was “Colin has been promoted”. I didn’t tell them what I thought, or preceded it with any statement to influence their opinion.

So the promotion definitely doesn’t have the backing of his colleagues. It makes you wonder how a promotion can go ahead when it is unanimously deemed a bad idea. Well, I’ll keep trying to think of how to make an accurate and fair promotion process.

I did have a conversation with my manager to ask why my promotion didn’t happen. He gave me the usual response I’ve heard in the past to do with budgets and no free spaces for that role. I pointed out that Colin has just vacated a Senior position which I can have.

He was still adamant that the budget was gone and there’s no free spaces anyway. He promised he was doing as much as he could to promote me, and he said he was constantly asking the Head of Development to promote me.

I have to put faith in him, because later that day the Head of Development sent me a message saying how she understands “I am doing a great job and it is appreciated”. 

The funny thing is, I’m not even doing a good job at this current moment. I’ve had lots of annual leave, and haven’t had much work assigned since we decided to cut the scope of our recent releases. I’ll probably write about this in more detail shortly.

Stupid meeting times

I had a 30 minute meeting starting at 4:30 which overran by about 30 minutes – so it actually finished at 5:30. It’s a problem when I finish at 5, but that’s work I suppose.

The next day, I logged in 5 minutes late at 9:05. I received a message from the Tester on my team:

“are you joining this meeting?”

“What meeting?”

So I opened my emails and saw a request for a 9am meeting which was sent at 5:45pm last night. Ridiculous.

We have this concept of flexible working so the “core hours” are 10-4. This is because you can basically work 8-4, 9-5, or 10-6. Therefore meetings can only really be scheduled between 10-4 if you want everyone to turn up. A 9am meeting isn’t bad for me, but it is when you haven’t had the chance to even acknowledge the invite, and haven’t had a chance to even consider or act upon what was discussed the day before.

Wrong Rob

I was on annual leave, but there was supposed to be a meeting to update on my project. I knew that Rob could do the update himself because he had all the information to pass on to the managers. We have had multiple meetings with these managers, so they know who we are.

I received the following email about the meeting.

Hi,
We had Rob Anderson on the call just now but it’s clear we needed Rob Baker – I will reschedule as soon as possible.

Thanks
Danny

Brilliant. I assume it was simply clicking the wrong Rob in the address book. The thing is Rob Anderson attended the call and was confused what it was all about. I wish I was there to hear the conversation that took place. It must have been pure bantz. I give this the “Email of the Week” award.

Communications Fail: RCA

Another instance of poor communication:

Them: Hi

Them: (4 hours later). “Are you available? I need some clarification”

Me: “What about?”

Them: 20 mins later. “Did you fix this bug? <insert bug number>”

Me: “yes” (nervous about what is happening. Clearly it was fixed by me. I have a “Pull Request” linked against it, and I have added comments to the discussion and filled in the “Testing Details)

Them: (45 mins later) “Can you add root-cause analysis?”

5 hours and 5 minutes to tell me to do something. I had already added the information to the “discussion” section; they could have just moved it to the correct section, then informed me that there was a dedicated section I was supposed to fill in.

So frustrating.

How To Make Your Team Hate You #2

I was thinking about the colleagues I’ve legitimately despised (and it’s not just my opinion), and most of them have something in common: they have either been promoted, or told they will get promoted if they prove themselves. So here is story number 2.

We were in a newly formed team, and Rob was a newly promoted Test Manager. As developers, we were planning on tidying up the code base, formatting the code consistently, and removing unused code.

There wasn’t any real testing to do, given the code was unused, but Rob insisted we spend time investigating how to test the code.

It didn’t make sense – how can you test some code that isn’t used? Unless you prove it somehow is used, of course. But if the developer could tell the tester how to prove it is used, then the developer would know it is used, and wouldn’t remove it.

For the actual, real, development work, Rob demanded that we come up with a full test plan for every planned piece of work before we are allowed to make any code changes.

The thing is, even though I know the overall aim and could explain some test scenarios up front, I will always suggest more tests after I make the code changes. After I have made the changes, I am familiar with other areas of the system it impacted, or extra changes I made to refactor the code. So it only would be a temporary plan anyway.

Once we made that point, Rob then said we should analyse the code, plan out what code changes we would make, including refactoring, and document them. When all items are documented, we could then start work.

Who agreed in the team? No one. Not even other testers. Yet, he then runs off to higher ranking managers and persuades them that it is a good idea. I think they were just good friends with him, so they backed him.

We ended up spending ages working out what we were gonna change, but then not actually do it; because we had to plan every item first. 

When the time came to actually implementing our plan, you then had to spend time re-familiarising with the solution and then verifying if the proposed solution was actually accurate. The person that did the planning may not be the person to actually implement it.

We ended up being 2 months into the project and not a single line of code was changed. When we started doing the work, the “familiarising” process just annoyed people. From the start, we had stated that the entire process was dum, we were annoyed at the extended planning time, then the actual development stage just reinforced how dumb the entire thing was.

I don’t know if anything happened behind the scenes, but Rob was moved off our team at this point, and it felt like a huge weight off our shoulders.

I don’t know what Rob aimed to achieve with his idea. I think he thought it was a process that enforced quality, but he was unanimously told it was a bad idea, but yet fought to get it implemented. Surely if the team is fighting against it, then dictating that they implement it is just going to cause so much friction – that your position is going to be untenable. And it was.

The lesson here is that if you do get promoted, make sure it doesn’t go to your head. Yeah, you have to manage people, but having a new fancy job title doesn’t mean you have to go wild. You are working with people. You are still working with your old colleagues. Treat them with respect and be more understanding. I think a lot of managers gain respect by being nice and leading by example.

More work

A couple of months ago, I did tell my manager that we don’t have enough developers in the team. I end up with a bit of backlog of things to do, but I also need to dedicate time to train up my Apprentice. Quite often, we end up with conversations like this:

Manager: “Hey, what are you working on?”

Me: “Such a fix, after that, I need to return to the last bit of work I parked.”

Manager: “I have another task for you.”

What made me laugh is that the last time this conversation occurred: halfway through the day, he then tags me in a conversation about a bug and he says “this is tomorrow’s work for you”. So he gave me 2 more tasks to do that week.

I think this proves we don’t have enough developers. Colin’s been “preparing” for a project for a few weeks, Beavis has been making more excuses why he can’t work, Rob has been confused about his bug fix for weeks.

If we worked at pace (reference to a previous blog), then developers should be free to pick up this work.

Blackmail Hiring

A manager was talking about a former software tester, Aaron, who was regarded by many as a waste of time. He struggled to learn simple things, and you often had to explain concepts to him multiple times.

Many times I sat with him, and essentially did his work for him. I heard similar complaints from other colleagues.

The confession the manager made was: that Aaron actually failed the interview process. It was just that his friend Richard had recommended him, and when Richard realised that Aaron wasn’t going to be offered the job, Richard threatened to resign. So to appease him, Aaron was hired.

The thing is, Richard ended up leaving the company less than half a year later, whereas Aaron remained for years. Eventually, his manager lost patience with him, and Aaron initially moved teams and line manager.

His new manager wasn’t so patient, and issued him with a Performance Improvement Plan. Aaron’s position was finally untenable, so he finally resigned. No idea why we didn’t act earlier, but he should never have been employed in the first place.

Mid Year Review 2020

Intro

I’m not sure if the “end of year” coincides with the tax year, or if this “mid year” should have been a few months back, but the organisation of our performance reviews has been poor this year.

I think we were supposed to agree on some objectives back in January or something, which got delayed, I think this was mainly due to managers having to decide which crazy criteria we are judged against this time. I have ranted about different ways of evaluating performance, but they usually seem unfair and favour those who love to exaggerate or are a bit dishonest; which isn’t who you want to give pay rises and promotions to.

Anyway, the mid year review was booked in and I pointed out to my line manager that I have no objectives and haven’t prepared anything. Then he said “don’t worry, I’m just gonna free-style it”.

So much for being fair! In previous years we were told the strict process and consistency across the departments was for fairness. Now we have regressed for a pure free-for-all.

However, I’m not complaining because I hate the majority of reviews. I think you do have to be purely subjective when it comes to analysing developers, and I think you have no choice but to judge how well they fit in the team, which the manager should have awareness of. So I have more chance of finally being promoted under this unorganised style.

The Review

So my manager Chris, begins the meeting by explaining that he has got some notes on his own opinions:

“you’re the strongest developer in the team, or you are up there with the best”

Chris

and he has also asked for feedback from my colleagues.

“the biggest problem with working with him, is that he is too good”

Anonymous

“why isn’t he a senior yet?”

Colin

I know that one because Colin had personally called me last week and told me he had questioned it with Chris. No idea why Colin is lobbying for my promotion. 

I’m good friends with one of the Software Architects, and he has also been trying to influence Chris on my behalf. So I have 2 people protesting about it which is funny.

‘The promotion is finally here’, I thought. Then Chris starts saying that there’s been a bit of negative feedback too, and it’s my communication.

He said that I’m too cynical and sometimes put a downer on the outlook of the project. I wasn’t sure what he meant at first, but then I later realised that as a joke, when the slightest thing has gone wrong, I do say things like “the project is gonna be cancelled!”. Are people actually taking that seriously? It’s just over-dramatic comedy. Instead of Chris asking “how are your projects doing?”, he always asks “are there any projects on fire?” How is that any different?

I do wonder who doesn’t like my humour, since when I am on calls and say things like that, people in the team do laugh. Given that I write it on a lot of Slack posts, surely people understand it’s just a recurring joke; like a comedy sketch show. There’s plenty of witty humour too, not just recurring phrases. I bet it is Becky or someone with a similar personality because she just seems a bit out of touch with technology, and is a bit too serious. She also asks stupid things so I can be quite snappy in my responses on Slack, so out of everyone in the team, I bet her opinion of me is the lowest. At least I answer her questions, most people don’t even attempt to help.

Chris did say to maybe not joke around so much, apart from when I’m with him because he loves my humour.

Chris also started saying he needs even more evidence of my Senior qualities to take to Senior Management to persuade them of my promotion. Therefore I need to accept more responsibility and take the lead on projects.

I think I argued my case really well. Firstly, I said “how can I lead when we have loads of Seniors in the team?” They should be leading because it is their job to do so. The fact that not many show much leadership anyway means they are underperforming, and also I am held to different criteria. It’s also Chris’ job to decide who works on a particular project. So if I’m never the most senior in the team, then I can’t lead. That’s not my fault.

I also stated that I have been given these challenges like mentoring and I do show senior ability by doing all the Code Reviews, then nothing comes from it, not even a wage rise.  He kept on saying he needs evidence to convince the senior management, but I said that he has enough; he had said he regards me as one of the best developers in the team, and realises I was essential in dealing with all the recent urgent fixes that everyone shied away from. He can see that I’m one of the few developers that engages with the conversations on Slack/Teams. What is everyone else doing? Either doing their own work and they don’t care about the rest of the team, or they are simply chilling out.

He did ask why I thought I hadn’t been promoted in the past but others have been. I said others are probably a bit more firm in their demands and threaten to quit if they don’t get what they want, whereas I just get on with things. Also, the way we attempt to measure developer’s performance is just nonsense.

He did say to improve my communication, I need to show more authority and be more firm in my views. So I asked him for a payrise, otherwise I may have to quit!

Result?

It was funny how he said my humour was perceived to be a negative aspect, but I was running the Performance Review like a comedy show. I can’t help myself chipping in the humour. Although there is truth in my demand. If someone joined the company in my role, you can guarantee they would be on equal pay or higher, because I’m somehow still bottom of the salary band. He did promise to look into that.

He did conclude he would sort out my promotion, but when I pressed him on timescales, he refused to comment. No doubt I’ll have to wait another year or something daft.

August Retrospective

As part of “Agile Development”, you have a meeting called a Retrospective where you look back on things that have happened over a certain time period (like two weeks), and say what happened, what went well, and what didn’t go well.

When we worked in an office, we booked out a meeting room and wrote on Post-It notes and placed them on a whiteboard. Since we are working from home now, we needed an online solution. We used the Retrospective board on Microsoft’s Azure Devops; which worked well.

There were a few interesting points I wanted to note down. One point I strongly agreed with, and the other two points I think either: I am deluded, or the rest of the team are.

Part time Product Owner”. When our team was formed, we were told our product is really important. If it was important, we would have the correct staff in place, with a Product Owner in charge of providing us with requirements, or making decisions on well-defined requirements. At first, we didn’t have a Product Owner. Then later, we got one, but she was split between two products and we were always low priority. Due to this, some of my work ended up being shelved because I had implemented the requirements I knew about, but I knew there was much more to it, so raised questions that were never answered.

“Need to stop working at pace, otherwise we will all burn out.” This is absolute nonsense; we are so slow. This is basically a reference to what the Head Of Development said in Team Summary, but other managers have used the phrasing “working at pace”, so now people in the team are regurgitating it.

“Code Analysis work going fast” First of all, the people responsible for analysing the data were dragging it out as long as possible, see The Code Analysis Meetings (It’s a great read [if I’m allowed to promote my own blog]). Also, Colin has been leading a small team to actually fix these “problems”.
A) they are making changes manually and progress is slow. The changes are simple, and they can get Visual Studio to fix them without extra input.

B) Colin was taking days to review them, so I ended up stepping in and reviewing the code for him. 

Bonus Chuckle

We get to the end of the retro, having gone through the full board. The final stage is to vote on the items that are suggestions on what to “do”/”stop doing” in future.

“I can’t see my items on here”

Becky

It turns out she has added her items to another team’s board. 🤦

I don’t get how we can go through the ENTIRE board and only then does she realise that we haven’t talked about the four items that she added.