---
title: "A Journey in Leading People"
description: "Sharing the personal journey of leading a development team three times, the transition from strict management to thorough communication, and practical insights on establishing transparent career paths, empowerment, and navigating generational differences."
canonical_url: "https://blog.markkulab.net/en/post/lead-team-mental-journey"
author: "Mark Ku"
author_url: "https://blog.markkulab.net/en/author/mark-ku"
site: "Mark Ku's Tech Notes"
date_published: "2023-11-30 01:01:35 +0800"
category: "Management"
tags: ["management", "lead", "team", "職場", "帶人", "溝通", "職涯"]
language: "en"
license: "CC BY 4.0"
license_url: "https://creativecommons.org/licenses/by/4.0/"
attribution: "when reusing or quoting, credit the author and link back to the original"
---

# A Journey in Leading People

> **TL;DR** — 哈囉大家好！我是小雅。大家大學做分組報告時，有沒有遇過「與其教別人，不如自己做比較快」的崩潰時刻？今天我們要來聊聊超實用的帶人秘笈喔！ Mark 這次分享了他第三度帶領開發團隊的心路歷程。他以前就像個斯巴達教練喜歡單打獨鬥，但後來體悟到，當主管就像足球隊長，重點不再是自己拚命進球，而是要懂得傳球，幫助隊員得分！這個比喻真的超好用的啦！ 現在年輕世代常因為人工智慧等新科技的出現產生資訊焦慮，所以帶人不能再用傳統權威，而是要建立透明的職涯路徑。Mark 分享了超棒的四步培育法：我講你聽、我做你看、你講給我聽、你做我看。這樣不僅能避免主管管得太細，還能培養工程師的當責意識。 實務上，他建議每個開發週期要保留一點彈性時間讓大家自主研究，指導時也要先稱讚再給建議，用關懷代替責備。 其實呀，好的領導不是挑毛病，而是創造讓大家發光的舞台。下次帶專案時，試著把球傳給隊友，一群人才能走得更遠喔！

## Foreword
Throughout my career, this is the third time I've led a team. But this time was special. About two months into my new job, I took over the existing small development team in Taiwan and rebuilt it from the ground up, growing it from one person to a team of five. I've had a lot of reflections on this journey. I remember my first time leading people; I didn't know any techniques and made so many mistakes. I was quite strict, and I later found out that new hires described my leadership style as "Spartan training." But the "blank slate" I trained back then has now become a project manager at that company. Over the years, I've worked at companies of all sizes and encountered all sorts of managers, and looking back, my own leadership style has changed significantly.

From being a lone wolf and a "firefighter" to being part of a team, I had to learn to delegate, communicate, understand, and be inclusive. Doing everything myself was fast, but when faced with a heavy workload, one person can only work 16 hours a day at most and burns out easily. But with a team, you can accomplish more and go further for longer.

Furthermore, you don't have to worry that teaching others will leave you with nothing to do. It's precisely because you hand off work to others that, as the organization expands, you free up your own hands to take on more complex and valuable tasks.

## Generational Shift
* The lifestyle of the younger generation is shifting from a Japanese-style to a more American-style attitude—they watch American TV shows, eat American food, and use American products. The old top-down, authoritarian management style is becoming increasingly ineffective.
* The awkward part is that for those of us born in the 1980s, we entered a workforce with a strong senior-junior hierarchy. But now that we've become managers, we've found that we can't use that old hierarchical approach to lead the next generation; it requires much more thorough communication.
* In the past, career paths were figured out through personal experience or by hitting walls to learn the rules of the game. But today's organizations need more complete and transparent career paths and rules to make it easier to lead people.

## Discovering a Common Information Anxiety When Mentoring Employees
Information is so transparent and easy to obtain these days. On social media, you often only see the good side of others, not the price they paid or the negative aspects they don't talk about. With the emergence of various new technologies and tools, people become afraid to take risks without a clear path. The opportunities to make money easily are fewer now; old methods no longer work. But new methods and opportunities are still emerging. New opportunities only arise in areas that haven't been fully developed yet. For example: AI, TikTok, 3D, low-code...

## The Transition to a Leadership Role
I've observed that people with exceptionally strong technical skills often struggle to succeed after being promoted to a leadership role, mainly because they can't make the mental shift.

Individual Contributor - Do it yourself, achieve the best personal performance.
Leader - Do it together, help the team produce better performance.

Take a soccer captain as an example:
In their 20s, they play the game themselves, caring about how many goals they score.
At 35, scoring goals themselves isn't important. They need to control the game, coordinate plays, pass the ball, and help their teammates score to win the match.

Therefore, the ratio of team work to individual work needs to be adjusted. Team-focused work should be greater than individual work, at least over 50%.

The main job of a frontline manager is to replicate work experience, show respect, and help subordinates. Winning results is more important than anything else.

In the long run, the nature of the work is:
* Employees do urgent, routine tasks.
* Leaders do important, non-urgent tasks: planning, strategy, and resource coordination, so they aren't constantly firefighting in the future.

## A Video on the Difference Between Leadership and Management, and How to Motivate Employees
[Leadership and management are different](https://youtu.be/mRLoK95Hdu8?si=ZlDUsmljfWRph8XZ)
* Let employees be themselves.
* Don’t always catch their mistakes; help them do their job better.
* Create the right environment and the right culture.
P.S. For knowledge-intensive work, finding the right people and having a higher ratio of leadership to management is more suitable.

## Essentials of Leading People
1. Develop talent for the company.
2. Point out problems.
3. Help team members grow.
4. Ensure team members have tangible output.
5. Avoid the risk of free-riding.
6. Handle matters fairly.

## A manager has a lot to do and limited focus, so they can only lead a few people at most. But if the organization has a mentorship (Buddy) system, its experience and culture can be passed down quickly and expanded horizontally.
Before becoming a manager, I believe everyone should learn how to lead people. Before you have formal authority, you need to be able to persuade others and drive the team in the right direction. At the same time, the organization must create a culture and feedback mechanism that encourages senior employees to mentor junior ones. We can't let the master starve after teaching the apprentice. And we must teach them the basic principles of leading people.
1. Familiarize them with company rules and systems.
2. Instill the right work methods and attitude (not just getting things done, but getting them done well).
3. Help them integrate into the team.

## Difficulty of Leading People
* Blank Slates (Newcomers) - Easier. If their attitude and personality are fine and they aren't too idealistic about the job, the only thing left is to accumulate professional experience.
* Those with Some Experience - More difficult. It really depends on their personality and adaptability. If their past teamwork experience or skills are lacking, they can be harder to lead.
* Very Experienced - Usually don't need much direct leadership. Provide thorough communication, respect, goals, time, and space.

## A Systematic Method for Replicating Talent
I usually adopt different leadership styles based on the team member's maturity level.
* I talk, you listen => Training
* I do, you watch => Mentoring
* You talk, I listen => Review/Debrief
* You do, I watch => Correction & Iteration

## Avoid Micromanagement
Many people from technical backgrounds, when they first become managers, unconsciously manage too closely, explain things in too much detail, or ask for progress updates too frequently. This needs to be adjusted based on the engineer's maturity level. For more mature engineers, they should be thinking about the specifications, how to solve problems, and how to design the system themselves. Engineers need to have a sense of Ownership, discover new problems, and experiment to find the best solutions on their own. Otherwise, without a sense of Ownership, they just become "coding monkeys."

## Standards
Everyone has different goals for joining the company, so their personal standards also differ. You can only do your best to help members grow; you can't force their will. The key is that they must have the self-awareness to want to change. Otherwise, you can only hold them to the minimum job standards.

## Make Good Use of the Probationary Period
If after three months you find they are not a good fit and cannot meet the company's expectations, it's probably better for both parties to have that conversation sooner rather than later.
Software development is about exchanging expertise for money, not time for money. Besides following standard operating procedures (SOPs), what's very important is the ability to learn independently and create new value. This can be verified during the probationary period:
* Work attitude (work status, quality, efficiency, attendance).
* Ability to complete tasks with existing SOPs, such as basic page feature development.
* For tasks outside of SOPs, the ability to independently research a topic and share the findings with the team.

## Assigning Tasks
* The goal must be clearly stated.
* What is the value (benefit)?
* How to do it (Understand about 80%; this can be lower as the employee's maturity increases).
* Break down tasks with multiple objectives to avoid interference and confusion.
* If the team member is not very experienced, think from their perspective about what they might not know.
* Assess the risks of the task.

## Arranging Team Work
1. In each Sprint, reserve a certain percentage of buffer time (25%~40%) for team members to propose or discuss research topics with their manager. The goal is to help everyone grow and have time to optimize existing work.
2. As much as possible, don't force work assignments. Find the most suitable person for each task. If no one volunteers, then you have to assign it.
3. Schedule a more relaxed Sprint every two Sprints.

## Guiding/Criticizing Subordinates
Many managers are afraid to criticize their subordinates. But if you don't guide them, employees won't know what to improve. Work will only be done to a "good enough" standard, the employee will face the same problems at their next job, the organization won't improve, and everyone gets stuck. But when coaching an employee, you can start by praising something they've done well recently. Use some conversational techniques to ease the situation so they are more receptive to your suggestions.

1. Caring Feedback
"Your performance has been dropping recently. Is there a problem? Is there anything I can do to help you with your work?"
2. Factual Feedback, guiding the subordinate to speak for themselves (better).
"So, what do you think can be done to prevent this from happening again?"
"How can we achieve this goal?"
3. Finally, offer suggestions on direction or methods.

## Regular One-on-One Meetings
Since the company provides a budget of $20 per person per month that can be used for team meals, I usually take this opportunity to chat with team members in a different setting.
* Chat about any difficulties they're facing at work or in life, or if there's anything you can do to help them.
* Discuss what they've done well recently and what needs adjustment.
* Talk about the company's current situation.
* Discuss their desired direction for development.
* If an employee needs to make adjustments, set aside emotions, state the facts of what happened and the impact it caused. Speak with facts, propose the necessary adjustments, and ask for their perspective.

## If Conflict Arises During a Meeting
Both parties should first calm down, leave the confrontational environment, or reschedule. Lay out the issues and respective difficulties to see if a consensus can be reached.
1. If their attitude is good, help the employee improve their work and set a time for the next review meeting.
2. If their attitude is not good, ask them in the next meeting to evaluate if this job is a good fit for them. If cooperation becomes impossible, help them find a new job by providing a buffer period and relevant resources.

## Performance Improvement Plan
When we bring someone onto the team, the expectation is that they will share the workload, build consensus, and grow with us. But inevitably, you'll encounter people who are passive, unwilling to accept others' opinions, or remain negative despite long-term communication.
When assessing if an employee is a good fit, don't rely solely on the manager's personal feelings. It's best to use a Performance Improvement Plan (PIP) to evaluate their suitability for the team and to document multiple coaching sessions to protect the company, the team, and yourself.

For the Performance Improvement Plan form, you can refer to the format below.
![Performance improvement plan](https://blog.markkulab.net/content/markku/posts/lead-team-mental-journey/images/pip-form.png)

## Parachute Manager
About two months after I joined this company, I took on a management role without a formal title or real authority. And some employees who had been there longer than me were not easily convinced. Therefore, I had to quickly win the approval of the majority or achieve some significant wins. Using leadership skills, if I couldn't get the majority's approval, I had to at least get the approval of a key minority. I needed to find allies with common goals as soon as possible, prove my ability to integrate the organization, and then use tangible results to negotiate for a formal management role. Only then could I successfully win the "games" to come.

## Finally
Thank you to the company for giving me this opportunity to grow, to my boss for their trust, and to my teammates for their trust. Leading or managing is not any easier than sitting down and writing code, because everyone's background and values are so different.
"Code does what you tell it to do, but people don't." You have to lead people while simultaneously managing your bosses' expectations, all while making arrangements based on importance, priority, and resource constraints. Playing this role well is extremely challenging. It requires "constantly communicating upwards, creating the right work environment, and helping the team achieve results."

Finally, I share this with those of you who also need to lead people.

## Other Career-Related Articles by Me
* [Career - A Brief Talk on Software Engineer Career Development](https://blog.markkulab.net/career-development/)
* [Career - Solving the Career Dilemma for Middle Developers in an Organization](https://blog.markkulab.net/solving-the-middle-developer-career-dilemma/)
* [Career - On the Role and Responsibilities of a Project Manager](https://blog.markkulab.net/project-manager/)
* [Career - The Mental Journey of Leading a Team](https://blog.markkulab.net/lead-team-mental-journey/)
* [Implementing Agile Development - Making Team Operations Smoother](https://blog.markkulab.net/introduce-agile-development-to-reduce-redundant-meetings/)
* [Adjusting Agile Development Meetings - Making the Team Accountable](https://blog.markkulab.net/agile-development-take-turn-as-host/)

## References
* [Promoted to a Management Position, But Still Don't Know How to Lead? 6 Steps for New Managers to Get Up to Speed Quickly](https://www.iammarkven.com/02080951/%E5%8D%87%E4%B8%8A%E7%AE%A1%E7%90%86%E8%81%B7%EF%BC%8C%E7%82%BA%E4%BB%80%E9%BA%BC%E9%82%84%E4%B8%8D%E6%9C%83%E5%B8%B6%E4%BA%BA%EF%BC%9F%E6%96%B0%E6%89%8B%E4%B8%BB%E7%AE%A1%E5%BF%AB%E9%80%9F%E4%B8%8A.html)
* [This Kind of Manager is a "Subordinate Crusher"! If You Can't Tell the Difference Between Coaching and Tormenting, Don't Force Yourself to Conform](https://www.managertoday.com.tw/articles/view/62339)
* Zhang Qi's Business 365 Course

---

## About this article and its author

Originally published on [Mark Ku's Tech Notes](https://blog.markkulab.net/en/post/lead-team-mental-journey)

License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) — when reusing or quoting, credit the author and link back to the original

### About the author

**[Mark Ku](https://blog.markkulab.net/en/author/mark-ku)** — Software Solution Provider

- 10+ years senior software engineer, now an AI Builder
- Focused on large-platform architecture — North-American e-commerce, AI SaaS subscription billing
- Combining AI Agents and automation to build evolvable product foundations

### Free tools built by the author

All of these are free to use:

- [Free PDF Sign Tool](https://blog.markkulab.net/en/tools/pdf-sign): Online PDF sign tool — draw, type, or upload a signature, then drag, resize, and download. Everything runs in your browser; nothing is uploaded.
- [VS Code Refactory](https://blog.markkulab.net/en/tools/refactory): Refactory is a VS Code refactoring extension: 34 actions plus a 37-rule code-smell inspection layer with a Code Health dashboard, across 18 languages, backed by 534 tests. It learns your repo's conventions: where interfaces live, where DI is registered, whether 'use client' belongs. It ranks files by git churn × complexity so you know what to fix first, and hands any smell to the Claude Code already on your machine. Free to use, and your source never leaves your computer.
- [DB-Kit Database Manager](https://blog.markkulab.net/en/tools/db-kit): DB-Kit is a lightweight, cross-platform database manager built with Tauri + Rust + React. Manage MySQL, MariaDB, PostgreSQL, SQL Server, Oracle, SQLite, MongoDB, Redis, Kafka, Elasticsearch and RabbitMQ from one consistent interface: passwords encrypted in the OS keychain, SSH tunnels, full CRUD, a visual query builder, stacked multi-statement result sets, cross-connection data transfer and compare/sync, Excel / CSV import & export, visualized execution plans, ER diagrams, scheduled backups, SQL stress testing with p50–p99 latency percentiles, a 15-rule SQL review engine, Kafka message browsing with monitoring & alerts, a bilingual UI (Traditional Chinese / English), a built-in AI assistant (natural-language SQL, AI review and tuning advice) and the dbk CLI. Free and open source (MIT), with installers for Windows, macOS and Linux.
- [VS Code Super Mermaid](https://blog.markkulab.net/en/tools/super-mermaid): Super Mermaid is a VS Code extension for beautiful Mermaid diagrams out of the box: auto-colored live preview, mouse pan & zoom, high-res PNG / SVG export, 21 templates and multiple themes. Free and open source (MIT).
- [React Super Mermaid](https://blog.markkulab.net/en/tools/react-super-mermaid): react-super-mermaid is an open-source React component library: render beautiful Mermaid diagrams with a single <MermaidViewer>, with built-in colorful / sketch themes, pan & zoom, in-diagram search, and high-res SVG / PNG export. Lightweight, SSR-safe, fully typed. Free and open source (MIT).
- [Jira / Confluence Super Mermaid](https://blog.markkulab.net/en/tools/jira-super-mermaid): An Atlassian Forge app: write Mermaid syntax directly inside a Jira issue or a Confluence page and get flowcharts, sequence diagrams, state machines and Gantt charts. 11 diagram types, SVG / PNG export, light and dark themes, full CJK support. Runs on Atlassian: your diagrams live in your own site and the app calls no third-party service. Free, coming soon to the Atlassian Marketplace.
- [Mermaid Live Preview](https://blog.markkulab.net/en/tools/mermaid-preview): Write Mermaid in your browser, see it render instantly, and share the whole diagram as a single link. No sign-up, nothing uploaded to a server, and mermaid.live share links work as-is.
- [React Intl Phone Number](https://blog.markkulab.net/en/tools/react-intl-phone-number): react-intl-phone-number is an open-source React component: framework-agnostic and antd-free, with E.164 in/out, a searchable flag / country-code dropdown, configurable validation levels (strict / mobile-strict / loose), themeable CSS, and i18n — phone logic powered by google-libphonenumber. Lightweight and fully typed. Free and open source (MIT).
- [Uptime Kuma Cluster](https://blog.markkulab.net/en/tools/uptime-kuma-cluster): Turn single-node Uptime Kuma into a highly available cluster: OpenResty + Lua smart load balancing, shared MariaDB state, health checks and automatic failover, plus cluster-management REST APIs. One Docker Compose command to start. Free and open source (MIT).
- [Special Education](https://blog.markkulab.net/en/education): Learning materials crafted for special education students

### Daily podcasts

- [Mark's Tech Insights — Daily AI News](https://blog.markkulab.net/en/category/tech-news): Daily curated AI and tech trends. Catch the latest developments via audio summaries — covering AI applications, software architecture, DevOps, and engineering practice. — RSS: https://blog.markkulab.net/feed.xml
- [AI股市蝦聊](https://blog.markkulab.net/en/category/ai-stock-chat): Every trading day, an AI-analyzed take on the Taiwan stock market, delivered as a two-host conversation covering the session and the next-day outlook. — RSS: https://blog.markkulab.net/ai-stock-chat/feed.xml
- [開源好物週報](https://blog.markkulab.net/en/category/open-source-weekly): A weekly two-host pick of free open-source tools surfaced from real Hacker News, GitHub, and Reddit buzz — what pain they solve and the fastest way to get started. — RSS: https://blog.markkulab.net/open-source-weekly/feed.xml

### Newsletter

[Subscribe to the newsletter](https://blog.markkulab.net/en/subscribe) — Be the first to know about new posts. No spam, unsubscribe anytime.
