Optimizing your experience
Gradient background

Time is precious

Clarice Bouwer

Software Engineering Team Lead and Director of Cloudsure

Wednesday, 11 May 2016 · Estimated 5 minute read

When last did you just stop to smell a flower? Or take a peaceful walk without having to rush for something?

Today I sat in standstill traffic. It took me an hour to get home. It's usually between 15 and 20 minutes. My time is precious to me so I was frustrated. I'm in this "get up and go" mindset where every second counts.

I frantically waited for Waze and my network provider to cooperate. I needed a route recalculation and I needed it fast. We were standing still for long. Not to mention the fact that I left work without going to the loo.

Lucky for me, the app calculated a route and got me home within the hour. Who knows how long I would have been stuck in that dreadful traffic?

Before I rerouted, many drivers became reckless. The rules of the road were discarded. I guess this is due to frustration and desperation. Other drivers became annoyed and vocal. There was no more room for courtesy as people were pushing in one after the other.

A metaphor hit me like a pan galactic gargle blaster. We experience chaos like this in software development teams. When pressure builds some people throw process out of the window. Others get mad about that. People act out of frustration and desperation.

Organized chaos

A bunch of people with different types of skills, perspectives, personalities and traits are thrown into a team and are expected to produce quality output upon request. This is sometimes done in a confined space like a war room.

People experience pressure differently. Some run-away, some get frustrated, some panic while some are completely chilled.

I want to dive into time-related factors that add pressure to teams. While teams produce results, quality can suffer as a result of such factors. This leads to an array of different emotions within a team.

Ramp-up time

When someone joins the team for the first time, there is a ramp-up period. Ramp-ups take time and can create a burden on the rest of the team especially if it is a pressure cooker environment.

Onboarding process

When a person joins a company, they need to learn everything from the ground up: business, products, teams, network, unfamiliar technologies, debugging the solution, endpoints, processes, policies and people. It can take months to settle in especially if a person is coming from a small to medium company.

If this person isn't properly mentored or receives proper and ongoing orientation, what becomes of them? I guess it depends on the nature of the team. If the team is always pressed for time, how are they going to properly ramp that person up? This poor person is going to be overwhelmed and pick up some bad habits.

Resignations

When someone resigns, all the knowledge that person has acquired leaves with them. Although everyone is replaceable and policies can be in place to alleviate pain, it still has a social impact on the team. Not to mention a replacement is required to alleviate pressure from the rest of the team.

Relocations

I like the idea of being able to move to different teams. This exposes you to other parts of the business. However, there is a trade-off on both teams.

As the person is already accustomed to the company, the ramp-up time should just be for the solution and process within the team. Depending on the complexity, this can take some time. What happens when there isn't a replacement in the other team?

People need time to gel

It takes some time for a team to start gelling well and learn that they can depend on one another. Trust isn't something that happens implicitly - especially if one has experienced problems in the past. This can slow things down and frustrate people who want to get things done.

Disruptions, like relocations and resignations, can affect the team dynamics especially if the team finds out last minute or has no say regarding the relocation.

Not seeing the bigger picture

Let's say business indicates a sense of urgency on a feature. The team starts working on it. Then business decides that the priority has changed. The feature is discarded or put on ice.

Who likes working on features that don't go into production? This can be super frustrating and cause complexity in the repository when put on ice.

Business needs to communicate the importance of the decision. Don't settle for the "because my boss said so" answer - there must be a real reason. When I find myself in this situation, I find myself less frustrated after I have found out why.

Lucky for us we have a Product Owner that communicates intent with us. If you don't have someone like that, perhaps you could aspire to being nosy and finding out for yourself. Don't hold onto that knowledge - share it with your team.

Pop-up meetings eat into productivity

I work in an Agile team with a two week sprint. We have ceremonies that leave us with about 8 ½ days of actual work time. Meetings that pop up during the sprint that don't necessarily relate to the current sprint work make me very anxious.

Don't attend everything

I used to feel obligated to attend every meeting I was invited to. I have come to realize that in most cases, people are just trying to get people into a room to talk about a finding a solution to a problem. I try to find out more about the meeting to see if I can add value. If I can't I simply decline - and say why. If there is someone more knowledgeable I suggest they get in touch with that person.

Meetings need direction

If there is no direction then what is the point of the meeting? Politely excuse yourself.

I recently attended a meeting directed by our Product Owner. It was the best meeting ever. She managed to get people of all divisions to communicate how one thing was being handled. She took charge of the meeting, got the right people to talk to each other and we got to understand the entire end-to-end process in the allocated time. I wish all meetings were like that.

Time-boxing

I've evolved from the archaic developer mindset into a people-driven realm. People fascinate me. Unfortunately I now lose track of time in meetings and office conversations which paradoxically means I waste precious productivity time - which is precious to me.

Time-boxing is essential to keep on track with commitments. When a meeting is running over its allocated time and you are no longer obligated to be there, is there any harm in excusing yourself?

My final thoughts

  1. The "get up and go" mindset is exhausting and is something I want to move away from. Rushing about to stay on top of things really impacts quality of work.

    It also makes me feel conflicted during idle-time. No wonder my days are rushing by me.

    When last did I just stop to smell a flower? Or take a peaceful walk without having to rush for something?

  2. If I feel pressure I can talk to my manager and business to find ways to alleviate the pressure. If I keep it to myself, people think that everything is okay in my world.

  3. The corporate world is tricky. There are many ups and downs. Many things are out of my control. One thing I can control is how I spend my time.