Kalan's Blog

Kalan 頭像照片,在淡水拍攝,淺藍背景

四零二曜日電子報上線啦!訂閱訂起來

Software Engineer / Taiwanese / Life in Fukuoka
This blog supports RSS feed (all content), you can click RSS icon or setup through third-party service. If there are special styles such as code syntax in the technical article, it is still recommended to browse to the original website for the best experience.

Current Theme light

我會把一些不成文的筆記或是最近的生活雜感放在短筆記,如果有興趣的話可以來看看唷!

Please notice that currenly most of posts are translated by AI automatically and might contain lots of confusion. I'll gradually translate the post ASAP

Learning—Learning from Gaming Management

https://akisute.com/2020/11/blog-post.html

Note: The order of paragraphs in this article is similar to the original, but it is not a direct translation and includes my subjective insights. For the accurate original text, please refer to the original article.

The original article was written in Japanese, but it resonated with me in terms of my work experience and provided valuable lessons. Therefore, I decided to quote and share my own thoughts here.

The author, who is 36 years old, used to be an engineer but took on a managerial position because he gradually lost his passion for technology as he grew older. His boss happened to say, "Why don't you give it a try?" and the salary also increased, so he took on the management role.

Interestingly, the author mentioned, "But honestly, I dislike dealing with people. If possible, I prefer working alone. Why should I bother managing others when I was doing fine on my own?" Since there was no need to manage performance and there was a salary to be earned, he decided to do his best.

From this, I realize that not every engineer needs to have a passion for technology, but that doesn't mean they can't do their job well. Having a passion for technology and doing a good job are two different things. There are certainly people who work for the money, just like the author.

The basic elements of being a manager are actually quite simple, as the author described. They can be divided into the following abilities:

  • Being able to think rationally and logically at a reasonable level
  • Being able to communicate effectively with people
  • Not showing shyness, hesitation, or panic

In terms of thinking, it includes:

  • Finding joy in achieving goals
  • Understanding and empathizing with the emotions of engineers
  • Seeing oneself as a leader rather than a boss
  • Considering oneself as the least valuable person in the team. Here, the author expresses a somewhat negative view, so it can be taken with caution. He believes that managers have zero production value and simply order other team members around like slaves. Therefore, the success of the team is the result of the collective efforts of all team members, and if there is a failure, it is due to one's own incompetence or laziness.

Basically, being a manager doesn't require you to like or dislike people. As long as you possess the aforementioned qualities, anyone can do it, according to the author. However, I believe that managers who can truly embody these qualities are rare. Many managers don't want to see their subordinates surpass them and will try to hinder their progress to protect their own positions or take credit for their achievements. To be a competent manager is likely even more challenging than being an engineer.

Games and Strategies

The author compares management to playing a game, where cooperating with the team to defeat the enemy is similar. There will be more elements discussed later that the author considers important. Let's discuss them one by one.

Strategies

When playing Go, there are usually some established strategies to refer to. These strategies are specific sequences of moves discovered and passed down by previous players. For example, the opening moves in Go define a series of steps that allow both black and white players to have an equal footing. Although it's not necessary to strictly follow these strategies, deviating from them can easily put you at a disadvantage.

The author also mentions that in Age of Empires, you can use the hotkey HCCC to quickly create villagers. Although it's just a matter of a few seconds, being faster than the opponent in advancing to the Feudal or Castle Age gives you an advantage.

Similarly, in management, there are certain strategies that must be remembered. Fortunately, in software development, many methodologies (such as Agile development) and classic references (like "The Mythical Man-Month," "The Phoenix Project," and "Joel on Software") have been developed and can be referred to. Experience also plays a part, but learning from established strategies can save you from unnecessary detours.

"Parameters" in Management

The author identifies three parameters:

  1. Morale
  2. Respect
  3. Speaking up

Morale is an important indicator because when people lack morale, they may not die, but they won't be productive either. It's difficult to satisfy everyone's morale, especially since engineers have their own projects and technologies they want to work on. It's unlikely to fulfill all their desires simultaneously.

Respect is another important parameter because in management, unlike in a game, you can't simply right-click on someone and expect them to follow your orders. The extent to which people will follow your instructions depends on the content of the tasks and the level of respect they have for you.

In other words, if you ask person B to work overtime on a tight schedule project, their compliance will depend on the level of respect they have for you. The required "respect value" varies depending on the difficulty of the task.

When developers lack respect for you, their motivation to work will come from "getting paid," "because you're the boss," or "it's an order." This can lead to a difficult development process.

To increase the "respect value," the author suggests a few approaches. The first is to take action based on the type of person you are dealing with. For example, if someone values technical skills, then you should have corresponding technical skills to gain their respect. On the other hand, if someone values "people" and "personality," then you should find ways to make your personality shine and attract them. Of course, everyone has different approaches, and there's no need to force yourself to change.

Another simple way to increase the "respect value" is to actively listen to others, regardless of their requests. After all, as an almost technically obsolete middle-aged person, the author can only gain respect by doing miscellaneous tasks and eliminating various troubles for engineers.

Speaking up and the "respect value" are interconnected. Actively participating in meetings can earn you "respect value." However, it's important to note that if you frequently exhibit a dismissive attitude towards others' opinions, your "respect value" will gradually decrease, and you will lose your voice in discussions.

Humans are not always rational beings, and sometimes, it's not enough to simply present logical arguments. Even if your reasoning is sound, it may not be accepted due to various factors. Ultimately, human nature plays a significant role.

I have my own thoughts on this matter. Let's all have a harmonious and positive atmosphere every day. Why focus on technicalities and professionalism? It's impossible to have unanimous opinions. According to the CAP theorem, you can only prioritize two out of three aspects. No one is greedy enough to take them all. Just the choice of programming language and framework can lead to endless debates, not to mention the numerous decisions within a product.

Therefore, I believe that going to extremes is not beneficial. What I hope for is that professionalism can be fully demonstrated under the management's guidance. Those who possess technical expertise should have sufficient authority and influence to drive development, while those who are less experienced can follow and provide timely input.

Autonomy

The author believes that managers cannot fully command their teams, just like in playing League of Legends (LoL), where teammates may not always follow your instructions. Managers need the cooperation of the team to achieve their goals, and it's crucial to effectively utilize the "respect value" in such situations. Managers should assist team members as much as possible in what they want to do.

However, where should the autonomy of team members be limited? This is another challenge for managers. It's not possible to allow team members to say, "I don't feel like working today," and let them slack off, right?

The author uses LoL as an example again. First, you can observe your teammates' actions, such as how they respond to ganks, their performance in laning, positioning, and skill usage. If you leave such teammates alone, the game is likely to be lost directly. In such cases, you can choose to communicate more, use warning signals to remind them, suggest how to move, or even help with tanking skills.

Of course, there are also high-level players who have perfect execution and can coordinate well with teammates in team fights and tower sieges. The same applies to the workplace, but encountering such individuals is not something you can actively seek. However, when you have such a teammate, it's crucial to allow them to exercise their autonomy. This may involve delegating responsibilities and granting them authority. Even if there is a possibility of failure, you should not shift all the blame onto them but rather provide as much support as possible.

However, the author also mentions that there are teammates who are clearly not contributing and are just dead weight. Working with such individuals makes it impossible to achieve the goals, and they should not be given any autonomy or be part of the same team.

In such cases, the most important thing is to trust that person if you believe they can accomplish it, starting from the beginning until the end, and provide assistance whenever possible. This kind of trust is crucial.

Morale

The author returns to the topic of boosting morale. He believes there are two necessary plans: one based on instinct and the other on rationality.

Instinct is somewhat similar to the camaraderie experienced in college clubs when working together to achieve a common goal. However, work is not a college club; it is about accomplishing objectives and projects. Therefore, a rational plan is also necessary.

Lacking rationality and clear objectives can result in a situation similar to a college club where nothing is achieved, and it becomes a group of people with good relationships. On the other hand, lacking instinct can lead to a decrease in morale.

The author provides some examples:

  • There's no need to organize special drinking parties; in fact, some people may find it off-putting.
  • Provide a sense of security to team members.

Balancing Sense of Security and Autonomy

In general, people's brains tend to lean towards not thinking and not making decisions. It's like staying in a comfort zone. It would be great if someone else could handle everything. However, providing too much of this sense of security can create aversion because engineers make a living by thinking and solving problems. They enjoy challenges, and it's part of their nature.

As a manager, you can try to eliminate unnecessary decision-making, such as trivial matters like choosing the color for Trello cards or scheduling meetings.

Adding a Personal Touch to Work

The author uses the example of the background image in Trello. For instance, you can use photos of outings as the background image and start a conversation from there. In the author's team, they have a practice of sharing a brief "story" during daily stand-up meetings. This story can be about anything, such as buying a new game, places visited, dishes cooked, or food eaten. It only takes about 2-3 minutes but promotes communication among team members. It's a good practice.

Indeed, although engineers tend to think rationally, behind every engineer is a living and breathing human being, not a robot. Everyone has emotions and moods. This is a challenge that managers must face.

The author also mentions some tips for conducting meetings. According to him, the priorities for meetings are as follows:

  • Clearly define the meeting objectives, necessary conclusions, and actions. Failing to achieve these will gradually decrease your "respect value."
  • Boost morale
  • Maintain or increase "respect value"

Assimilating as Much as Possible

In simple terms, it means "reading the room." Yes, engineers may find it distasteful, but that's the reality. People from different cultures also "read the room," but to varying degrees.

The author suggests that managers, if someone wants to speak up, should give them the opportunity as much as possible and not monopolize the conversation. If no one is speaking up, then the manager should initiate the conversation and create a space for discussion, allowing everyone to participate.

If there is too much opposition, it can create unnecessary animosity. However, if there is no opinion, it can lead to low morale. Balancing these factors is an art.

During meetings, it's best to avoid silence, as it can easily affect the atmosphere. However, if silence does occur, one approach is to propose something absurd. This can encourage others to join in and discuss, gradually stimulating thinking.

Pose Questions to Others

Many times, someone may have ideas, but they may not know if they should speak up, and others may not know if they should share their thoughts. In such cases, posing questions to others can be effective.

Focus on Preferences, Not Just Correctness

Sometimes, there may be a deadlock between options A and B, and it's difficult to decide which one to choose. In such cases, you can ask team members which option they prefer (not in terms of correctness, but preference). Assuming that everyone has already considered and weighed the pros and cons, even if it's not the most correct answer, it's important to proceed with the option that the team prefers. This approach has several benefits:

  • When you ask team members about their preferences, it prompts them to think.
  • If team members know that their answer will influence the outcome, they will think more deeply.

In that case, managers should provide sufficient trust.

Loud Praise and Feedback

Although this is not the author's personal philosophy, when praising someone, it's best to do it on the spot, loudly, and sincerely. This is a great way to boost morale and motivation within the team.

On the other hand, if there is a need to criticize or provide feedback, it's better to do it later, privately, clearly stating the areas for improvement without personal emotions.

Observe Facial Expressions

A way to maintain control is by showing your face. You can also observe others' reactions during your speech. Conversely, if no one turns on their camera, it can give others the impression of "What is this person doing?" and result in a loss of "respect value."

The Most Important Thing

For the author, the most important thing for a manager is to "protect oneself." This means not taking on tasks beyond one's job responsibilities. After all, managers are not magicians, and some things are simply impossible. While having a sense of responsibility is a good thing, claiming to be able to do something that is actually impossible will only exhaust oneself. So, it's better to escape, quit the job. Even if you quit, it won't affect anyone's happiness.

What makes this article valuable is its authenticity. Compared to management books filled with theories, this article provides a more realistic perspective based on actual workplace experiences. I used to be the type of person who was overly obsessed with technology, and as a result, I didn't achieve good results and exhausted myself. Sometimes, being fixated on technology is limiting, and if you can't achieve it in the workplace, you can pursue it outside of work.

Currently, I am generally satisfied with my current company, although there are some challenges. The projects are interesting, and there are many things to learn. Besides technical skills, I have also gained an understanding of how to navigate interpersonal relationships. Smoothness doesn't mean giving up on principles but finding a balance between different parties.

Ultimately, the most important aspect of work is people. There are many areas where I need to learn and improve. I am not the type of person who seeks praise or gets motivated solely by praise. As long as it's work, I will do my best.

Hence, I find it challenging to give praise to others. Doing a good job is simply fulfilling one's responsibilities after receiving a salary. Why should I praise you like a child just to get the work done? However, I understand the importance of these aspects and believe that they are areas where I can practice and improve.

Note: The order of paragraphs in this translation is the same as in the original article.

Prev

Remember to improve the process once

Next

linaria - CSS-in-JS solution that doesn't require runtime

If you found this article helpful, please consider buy me a drink ☕️ It'll make my ordinary day shine✨

Buy me a coffee