写点什么

如何才能成为一个好的技术领导者?

  • 2015-10-21
  • 本文字数:1871 字

    阅读完需:约 6 分钟

近日,一名有超过 15 年软件开发经验的软件开发人员在 Hacker News 上提出了一个问题:如何才能成为一个好的技术领导者?该问题一经提出,在不到一天的时间内就获得了160 多条回复。关于技术领导者应该具备的品质和管理技巧,网友们提出了各自的看法和建议,本文择要归纳如下。

如果不能从帮助团队获得满足感,那么就不要成为一名领导者

技术领导者要忙于会议、计划、打断、团队沟通、文档等工作,永远无法达到一个人单独工作时所能达到的那种个体生产力。

技术领导者的工作不再是让自己成为最好的编码人员,而是要尽可能地让其他人成为最好的编码人员。工作分配也要以一种有利于团队和个人成长的方式进行。要负责为团队成员清楚障碍,让他们的工作进入正轨。

技术领导者的满足感来自新人的培养和成长。

将自己视为其他开发人员的导师

即使已经知道了答案,有时候也需要让团队自行决策。许多时候,正确的答案并不唯一。技术领导者的工作不是选择正确的答案,而是确保团队不选择错误的答案。允许团队作为一个整体自行决策有利于保持高涨的士气,让每名成员都更有自豪感和主人翁精神。

在有关技术问题上,团队信任并依赖你的建议/ 观点。作为技术领导者要了解团队所开发的应用,了解该应用所涉及的领域,了解功能背后的技术,并编写详细的技术文档。

有时候,技术领导者同时也是首席工程师。这时,他所能为团队做的最有价值的事情是在开始和结束时为团队成员提供帮助。

有时候,技术领导者还是架构师。当解释系统或代码的行为时,他需要能够快速改变高度。当同开发人员调试问题时,他要能够深入技术细节;而当向CEO 解释计划或成本估算时,他要能够在一个更高的层次上谈论系统。

随时准备好回答团队成员的问题

但当你有问题要问他们时要首先询问他们是否方便。这很难做到,因为作为一名技术领导者,你有许多工作要做。但是,为了可以有更多的时间回答他人的问题及为其他人提供支持,可以将复杂的任务委派给团队中更有经验的成员。

很多时候,团队成员的问题本可以在空闲或闲聊的时候提出。为此,引入可异步使用的生产力工具是一种更好的方式,比如,对于一些不太紧急的问题,可以借助 Trello 卡片 GitHub 问题跟踪器提出。不过,不管采用什么样的沟通机制,关键是要获得其他团队成员的支持,让他们在工作无法进行或完成的时候,可以很舒服地打断你。

为了了解团队成员,技术领导者要定期主动同团队成员进行一对一的沟通。每名开发人员都是不同的,通过沟通可以了解到这种不同。

减少具体的编码工作,但仍然要编码

即使不做很多具体的编码工作,也仍然需要监控和接受所有的 pull request,并利用这个过程,帮助初级开发者修改代码。这是必须的,如果不编码,那么开发人员会质疑你的判断,不容易接受你的建议。

但是,作为技术领导者,你的首要任务是确保团队成员的生产力,而不是自己的生产力。你要为整个团队的输出负责,如果那意味着零编码,那么就不要编码了。同时,这也意味着,即使代价是停下自己的工作,也要帮助处于困境中的团队成员。

要谦逊

要相信,你的团队所具备的能力和理解力都要超过你。

要承认,关于某个主题或组件,有人懂得比你多。成为一名优秀的领导者,并不需要事事都懂得比别人多。

如果团队成员都将你视为权威,那么他们会害怕自己做决策。在这种情况下,你就成了障碍。

要诚实

当你知道答案的时候,就说出来,即使那意味着某些人要重做大量的工作。如果你不知道答案,也要说出来,不能不懂装懂。你获得了当前的职位,就说明你有资格,你永远不需要向其他人证明你的能力。

除了上述这些讨论比较多的观点外,还有一些其它的观点,比如,把令人愉快的任务分给别人,把令人讨厌的任务留给自己;公开表扬,私底下批评;让每个团队成员都清楚地知道你对他们的期望;及时反馈和表扬;与非技术管理人员建立稳固的关系等等。还有一些行为是技术领导者应该避免的,比如,不要抱怨代码库有多糟糕;不要说“我们要重写 XYZ”,技术债务要逐步解决;不要轻易提议使用可选的平台和框架。不过,需要注意的是,不同的组织有不同的企业文化,对技术和技术领导者有不同的看法和预期,技术领导者要以此为出发点考虑问题。

此外,网友们还提供了许多可供参考的资料,比如,《人月神话》、《人件》、《程序员修炼之道》、《技术领导之路》等。这里就不一一列举了,感兴趣的读者可以进一步阅读


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-10-21 19:007068
用户头像

发布了 1008 篇内容, 共 426.1 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

速度(Velocity)不背这个锅

BY林子

敏捷开发 估算与计划

金九银十期间成功斩获58万架构师Offer!六面字节跳动面经和面试题分享

Java架构追梦

Java 学习 架构 面试 JVM

目标2025:通信产业在能源变局中拥抱智能未来

脑极体

PLSQL 过程语言-结构化查询语言

Flychen

深度详解企业CRM系统,体验软件快速开发平台

Marilyn

敏捷开发 快速开发 CRM

spring-boot-route(二十)Spring Task实现简单定时任务

Java旅途

Java Spring Boot Spring Task

APP 莫名崩溃,开始以为是 Header 中 name 大小写的锅,最后发现原来是容器的错!

程序员小航

Java bug Header携带签名 工作笔记 问题排查

架构师训练营第五周学习总结

邓昀垚

极客大学架构师训练营

用Python加载数据的5种不同方式

计算机与AI

Python 数据处理

LAXCUS大数据集群操作系统:一个分布式分时共享E级系统软件(四)

陈泽云

人工智能 大数据 数据结构 操作系统 数据存储

MySQL-技术专题-联合索引最左前缀匹配原则

码界西柚

忘记MySQL密码怎么办?一招教你搞定!

王磊

MySQL

手把手带你玩转 openEuler | openEuler 的使用

openEuler

操作系统 openEuler

Servlet-技术专题-Servlet3异步原理与实践

码界西柚

最新版MySQL在MacOS上的安装与使用

王磊

MySQL

蘑菇街大牛熬夜整理的Spring MVC知识点总结(思维导图+源码笔记),免费分享文档资料

Java架构之路

Java 程序员 架构 面试 编程语言

帆软授权失效处理

Flychen

云原生在京东丨基于 Tekton 打造下一代云原生 CI 平台

京东科技开发者

ci 云原生 Tekton

sync-player:使用websocket实现异地同步播放视频

GoEasy消息推送

websocket 数据同步 实时通信

在算力“沃土”上,种植互联网下一个奇迹十年

脑极体

详解GaussDB(DWS) explain分布式执行计划

华为云开发者联盟

数据库 计划 数据

发挥区块链技术优势 确保食品安全

CECBC

区块链技术 信任机制

十八、深入Python函数

刘润森

Python

iOS底层原理之—dyld与objc的关联

iOSer

ios开发 iOS Developer dyld objc

架构师第一期作业(第5周)

Cheer

作业

go-zero 如何应对海量定时/延迟任务?

万俊峰Kevin

定时任务 时间轮 microservice 延迟任务 Go 语言

MySQL-技术专题-聚集索引和慢查询

码界西柚

老公熬夜都要看的:从基础到进阶的Java面试题,助你2021年金三银四拿下大厂offer。

996小迁

Java 编程 架构 面试 计算机

从资金荒、恒大事件看区块链技术在供应链金融上的应用价值

CECBC

区块链 供应链物流

java安全编码指南之:ThreadPool的使用

程序那些事

java安全编码 java编码指南 java安全编码指南 java代码规范

如何才能成为一个好的技术领导者?_语言 & 开发_谢丽_InfoQ精选文章