January 2nd, 2020
The death of 10x engineer brought up some thoughts on what matters to improve the performance of a team or an organization to the next level. ThoughtsWorks' Technology Radar notes the following:
It's more effective to build teams of talented individuals with mixed experiences and diverse backgrounds and provide the right ingredients for teamwork, learning and continuous improvement.
So got a spark and decided to share my principles, through which I try to work. While I am not claiming that the list is either complete or sufficient, I argue the list pushes people into right direction.
It might be that the culture around is trying to hide any difficulties or obstacles. Without acknowledging these, we can find no real solutions or way around them. Likely others have noticed these too, so shed light on these difficult topics to understand your problem at hand better.
Confident "yes" spoken out to look smart or to assure your client can wreak havoc, but can also cost just time and decreases the clients trust on you when facades fall.
Sometimes we make bad decisions. Even when carefully thinking and planning the road, sometimes the path I choose will end up in nowhere. It takes some gut to admit this, to go back, and choose the other way around. Maybe you didn't have enough information when you were making the decision, but it was yours, and only you can carry the responsibility of that.
When the client or your team decision afterward turns sour, the responsibility to resolve the issue is also on yours.
As a consultant, this should go without a saying, but the client you are working with is taking a huge leap of faith having you around. There are cases where the client is not having as much knowledge about the matter at hand as you are having (which might be the case why you are working with them). Never speak behind your client's back, as simple as that. In the slightest, it will slowly eat your motivation to work with the client and poison the environment.
Frustration is occasionally inevitable. Acknowledging it and figuring out the exact reasons for that can turn the negative feelings into strengths.
In the teams, we might have people with very different experience levels. And it often goes that the more experienced team members are "merited" with all kinds of unique titles and roles after a while. In situations like these, I think the only proper thing to do is to thank for the appreciation. Still, decline to recognize the title, as it defines classes and power hierarchies, which in turn makes it harder to challenge the viewpoints. Does it sound a bit too far fetched? I think not. Words are having a real impact on some people. Also, how does a person next to you feel about this? And finally, such categorization gives you pretty much nothing.
But while it's quite easy to strip such explicit hierarchical roles from the team, it's much harder to build equality between experienced and less experienced people when it's somewhat natural that the experience creates power structures. Here the problem arises if the less experienced people stop contributing ideas as the seniors overperform/over presence them. To battle this, build explicit trust. Express that everyone is equal, say it out loud. Every idea can be spoken out and can go through discussion without having to worry about the response it receives.
One of the hardest things to tackle has been my ego. And I think the same applies for most of us around. The client's work is not about you or me. To have an impact, you must understand the goal of your work through the client's viewpoint and strategy. The first step (and maybe the hardest one) is the classic, speak less and listen more.
Educate the people around, share your knowledge and expertise by any suitable means. Try to organize demos, breakfast presentations, pair-programming, or any other activity for knowledge exhange. Don't let others encounter the difficulties you just overcame.
These points are by no means a complete set of principles. One can simplify these into one sentence: "don't be a moron." That simplification, however, misses the point. Without observing and validating your behavior, it is a difficult job to be a bit more awesome.