art by ANDY GILMORE

The Technical Leadership Challenges

Ivn Cote
6 min readNov 28, 2017

--

Technical leadership always seemed to me a bit different from a general people management. But at the core, it is the true leadership.

I’ve worked with talented and awful tech leads. I’ve been in this role too for a while. I’ve participated in groups with non-hierarchical structure. And still, there is no clarity for me how it should work.

The essay is trying to address this question. It contains another’s experience mainly and my interpretation of selected topics.

The beginning is always a team. People are crucial for any initiative starting from commercial startups to non-profit purpose businesses. But all we know for sure is that any team sucks. Talking about technical folks, i.e., engineers and developers mainly, it is worth mentioning that they are like the cats. You basically can’t just organize them as perfect soldiers. It’s more likely you’d gather an army of artists. Discipline isn’t the main issue here. We are living in a time of the remote offices and widespread of freelancers’ culture. At some point, you can expect a good skill of self-management. But there are problems on a technical coordination level and with the communication inside a team. Everybody complains about such things happening. But only tech leaders hate it so much they are trying to solve the problem. They are crazy enough to think that they can do something. Let’s call it courage.

An essential approach to keeping things in order is discipline. Time management and working agreements become the constraints for possible team creativity, and moreover, they form a temp of the everyday work melody. It will be a good practice to follow the rule from the book “Design Leadership” which states: “Avoid mistakes by developing contracts and documentation to make project expectations clear to everyone.”

It’s especially important because everyone inside the tech team is a lazy cat with his own agenda. Besides, tech leads are often dealing with people outside the team who have specific targets and ideas. It turns out that tech leads work with equal weight partners all the time. Probably, the manager has a nominal authority. Not a surprise, it doesn’t work in graph-structured organisations. At least because of that, a tech lead should be convincing. I’d say words, promises and talks are sufficient in the beginning only, all that really matters is action. One of the most important lessons I’ve got from my lead experience is that trust is a determinant for establishing good working relationships. Achievements with real engineering tasks are the first steps to trust. Another footing is warm communication on the personal level. Of course, I don’t think a tech lead should be a friend to everybody. But it’s usually possible to find a common language at least. And as soon as tech leadership also includes some people management, tact should be shown to all colleagues. Sometimes developers experience very dramatic personal circumstances, and being empathic would be great! Repeating the lovely phrase of an ordinary management book, “building trust with the team is the fastest way to delegating success.”

Summarizing all aforementioned, leadership is a matter of intelligence, trustworthiness, humaneness, courage, and sternness. That is not my concept, it’s a translation of the quote from “The art of war” by Sun Tzu, who was an ancient Chinese general. There is an old commentary on this quote clarifying a meaning of each feature. “Intelligence involves the ability to plan and to know when to change effectively. Trustworthiness means to make people sure of punishment or reward. Humaneness means love and compassion for people, being aware of their toils. Courage means to seize opportunities to make certain of victory, without vacillation. Sternness means to establish discipline in the ranks of strict punishments.” I couldn’t say better!

Though I should admit all these ideas some time ago were so boring and obviously trivial to me that I’d call them bullshit. Being a classical smartass with a mathematical background I believed mainly in rational judgments and had some typical nerdy biases. For example, a prejudice that technical people are better in fraud detection, and in logic thinking generally. But the real point of frustration for me was a discovery that teaching others is not always the best option. Coaching will suit a tech lead more. It means giving questions instead of answers. And being the smartass with answers for everything is not a good idea. At the same time, once you ask a question be prepared to deal with wrong answers! More broadly, create an environment where failures can lead to personal and professional growth. As a technical lead one has to control that such kind of failures is not critical for the business. Once you propagate your vision and ready answers, be prepared for disagreement. We are talking here about a value of the healthy conflict and having a team environment where it is safe to disagree. Tech leader should set a communication culture. Already assembled teams have their own language. If it includes discrimination, manipulation or fears, it’s better to break such a system.

I see a big difference to work in a transparent, open-minded, and diverse environment. It includes working in a distributive structure. What is a practical distinction between a lead and any other teammate in this case? I’d say they have various roles. The tech lead should be mature enough to propose strategic solutions, like legacy consideration, and a conclusion about refactoring, along with appropriate cleanup. In the situation of open and transparent culture, such decisions should be supported or rejected. Otherwise, they are just instructions, and there is a lack of the team responsibility for mutual efforts and failures. And there is no team, therefore. American researcher Peter F. Drucker said that “Management is doing things right; leadership is doing the right things.” The tech lead role is about pointing a proper way for doing right things.

Sometimes it also means to be alone. The reason is that a leader only can see a window of opportunities in the place where everybody sees a wall. Ben Horowitz writes about it very brightly: “The innovator can take into account everything that’s possible, but often must go against what she knows to be true. As a result, innovation requires a combination of knowledge, skill, and courage”. There are several stories about being alone during strategic decision making in his book “The hard things about hard thing”. It can’t be easy. Sure, a beginner would be fascinated by all freedom and vanity. But the responsibility presses hard so that a leader can get in a permanent loop of the self-discussion. Horowitz calls it the Struggle. “The Struggle is when you are having a conversation with someone, and you can’t hear a word that they are saying because all you can hear is the struggle.” I do hear the word “burnout” in that phrase. Nobody wants to have an experience like that.

But even considering this risk, it’s worth it, because tech leads make the difference in companies. The last DevOps Report 2017 has findings that The characteristics of transformational leadership are highly correlated with performance. These characteristics are very practical and obtained by researchers (Raerty, A. E., & Griin, M. A. Dimensions of transformational leadership: Conceptual and empirical extensions) so let’s name them.
Vision. Has a clear concept of where the organization is going and where it should be in five years.
Inspirational communication. Communicates in a way that inspires and motivates, even in an uncertain or changing environment.
Intellectual stimulation. Challenges followers to think about problems in new ways.
Supportive leadership. Demonstrates care and consideration of followers’ personal needs and feelings.
Personal recognition. Praises and acknowledges achievement of goals and improvements in workquality; personally compliments others when they do outstanding work.

Tech lead puzzle could quickly become a bullshit bingo. We hear all the same buzzwords. Devops, microservices, agile, diversity etc. The main advice here is don’t play the game and stay real.

--

--

Ivn Cote

Ivan Kotov, Web Software Enthusiast. "Liberté, Courage, Générosité"