突破技术管理,IT人中年危机变契机

中生代技术 Yesterday

作为一个老技术人,今天不聊技术,就聊点技术人员职业发展的事情:对技术管理岗位的认知,比如技术总监。

先贴一张技术人员职业发展路线图,按照管理路线和技术路线区分。在国外管理路线和技术路线的职位会按照 IT Manager 和 TechLead 去区分。

但在国内其实是没有纯粹的管理路线,管理岗位中一定有具体技术工作的要求。今天我说说对“技术总监”岗位职能要求的理解。

我理解技术总监的权责范畴应该包括:

  • 技术性工作

  • 管理性工作,分为人员管理(即团队管理)和项目管理

在技术型工作中,我认为更多考验的是一个技术管理者的技术深度和广度,而管理性工作中,更多考验的是一个技术管理者对于复杂人和事的协调能力。

01

技术性工作

_____

 

对于一位优秀的技术人员而言,应该具备如下三种技术能力:

  • 关键性技术能力

  • 架构设计能力

  • 工程管理能力

而一位技术管理者首先应该是一名优秀的技术人员,必须能在这三种技术能力之间游刃有余。

1、关键性技术能力

你也可以把它理解为技术难点的攻克。我曾看到过朋友圈包括饿了么 CTO 张雪峰、钉钉 CTO 一粟等,在团队面前现场 Coding 演示某些难啃骨头的解决场景。

不要求技术管理者写代码,但是在某些风险性大的技术场景里,技术管理者必须能亲自上阵,以免团队成员解决不了“甩锅”的时候可以接得起来。

而且了解团队的代码情况,融入团队的代码编写,也方便对系统架构的掌控。另外,作为示范代码,能够让管理者在团队中更好的立威。

2、架构设计能力

我们在说到架构设计的时候,一般会提到“技术架构”和“业务架构”,脱离业务架构的技术架构一定不会成功。这就要求技术管理者对业务有良好的理解能力。

而且架构的设计不仅仅是指能画架构图,能写架构文档,能把热门技术堆砌到图纸上;一个没在工地上跑过的建筑设计师一定不会造出好的大楼。

反之,一个不做架构设计就想写出好系统的技术人员不是天才就是傻子。架构的设计要更好的考虑运行效率、业务的可拓展性 /伸缩性,特殊场景的分模块管理等。

如果做不到这些,系统将随业务的进展越来越冗余,最终将为如何“解耦”操碎心,“重构”往往就在这样的场景下被提出来,这是对系统和业务的具有伤害性的选择。

所以作为技术总监,必须要有大的视野去组织模块和架构,避免早期的设计缺陷造成痛苦不堪的晚期“重构”。

3、工程管理能力

很多人对“工程管理能力”感到陌生,如果我把这块分开说为“性能”、“运维”和“效率”大家就好理解了。我们更多的认为工程管理能力关系到稳定性和效率上。

小团队当中,工程管理能力往往价值体现不大,但当遇到一个大团队的时候,大团队的运转稳定性和效率就会成为突出问题。

这里面主要包括持续性优化的能力和工具化使用的能力,并且需要较多的靠近流程管理和业务理解,有比较多的细小和琐碎事情。

我见过很多技术管理者开发出身,但是晋升到管理者的岗位后,不得不去了解运维之类的事情。这些都属于工程管理能力的范畴。

02

管理性工作

_____

对于一位优秀的技术管理人员而言,除了三种技术能力,还应当具备团队管理和项目管理这两方面的能力。

1、团队管理

团队管理,即人员管理。很多技术人员都很厌恶管理工作,让一个常年跟没有脾气和情绪的机器打交道的技术人员,去应付心思千万的人员管理,听上去确实很有挑战。

但你要知道,管理的目标是实现组织目标,最重要的是制定管理标准、贯彻执行和校验结果。

而这些也并非非要管理者亲力亲为,我们在组织的构建中强调的搭班子,就可以安排一些在这方面擅长的人以“副总监”甚至是“项目经理”“助理”的职位存在。

我觉得一个技术总监要分出 30% - 40% 的精力在团队的管理工作上,主要包括这些方面:

2、绩效考核

关于技术人员的 KPI 一直是一个千古难题,并且热度不减。难就难在技术人员工作的质量难以量化,并且受不可控因素的影响太多。

我认为给技术人员的绩效指标达到两个目的即可,一个是量化可量化的东西,一个是鼓励他的积极性。

所谓量化可量化的东西,通常我们会认为是指在时间进度上量化或者 Bug 数量、项目数量等。

但也可以将能保证“质量”的因素模块化,分模块量化,当然这个要求比较高。

因为所谓保证质量的模块,是需要技术总监确定至少是建议性,而不是丢给技术人员自行设置,比如设置必须要完成的单元测试指标、质量监控指标等。

很多人会问需不需要在技术人员的考核指标中设置业务指标,我认为在业务相对稳定的情况下是有一定有可行性的。

业务指标可以帮助技术人员更好的理解大团队的目标,知道在业务环节中技术价值的体现,更好的发挥主动能动性。

3、组织结构设计和人员招募

我认为组织结构设计更好的关乎团队的效率和能力发挥,包括岗位的增删减,扁平化结构还是梯度化结构,什么样的人安插在什么样的岗位上,这也是管理者应该懂得一门大课程。

而招聘上,我只想说,对于技术总监而言抓重点岗位,普通岗位的招聘可以由经理去进行,但不要小觑招聘,寻找团队平均能力以上的人是一个团队走的远的基础。

4、阶梯人员的培养

我比较在乎这点,就像我并不认为一个人的成长是顺其自然,我认为每个人的成长中都是受到重要的人和事的影响的。

环境对于一个人的成长非常重要,要尽可能的去创造可持续成长的环境,包括如下三点:

  • Code Review ,我认为有必要性。

  • 技术团队内部技术方案的评审,最好的学习往往源于把手里的工作做好。

  • 外部的学习和讲座,最怕坐井观天,最后被时代抛弃,不要抱着工作不放,要想象一下未来的世界和你的位置。

5、跨部门得沟通协调

对于技术总监而言,除了处理部门内的事情,部门外的事情也需要一定的协调沟通。

但是我并不建议多花时间在外部的会议和沟通上,更多的沟通是跟随项目走,由项目负责人去跟进和反馈即可。

你只需要协调那些别人要不来的资源,当然你能要的来,大部分原因是因为你在公司的威信,你曾给过别人的帮助。

6、项目管理

项目管理,即对事的管理。很多公司会设立有项目经理的角色,这块就不怎么需要技术总监来操心;但反过来讲,每一位技术人员也都身兼项目经理的角色,而技术总监一定是最大的项目负责人。

有关项目的事情会比较琐碎,但完全可以按照项目负责人分配下去,技术总监需要的是指定负责人、过问项目计划和进度,另外就是在项目推进遇到阻力的时候,去解决问题。

主要包括这两方面:

  • 项目进度:项目评审,确定项目计划;检查进度,进度延迟预警;项目验收和总结;

  • 资源协调:人员协调,包括项目组人员以及编外人员的支持;IT 设施协调,包括硬件、软件系统等,公司内资源还有公司外资源。

03

写在最后

_____

 

有一种说法,领导就是要拿别人拿不到的资源,做别人做不了的决定,承担别人承担不了的责任。

但是,我想说技术管理者难度更胜一层,技术管理者要先有专业性,再来领导力,需要像医者一样的仁心仁术,而不是简单粗暴的工厂管理。

我也不认同很多人认为的随着时间的增长,技术人终将成为技术管理者,否则何来的“中年危机”,不是时间的累积就能得到质的变化。

我身边也有很多技术管理者经常感叹:“感觉自己做到技术总监就到头了,未来乏力。”

只想说,从技术能力的成长,到复杂事物管理能力的成长,再到视野和决策能力的成长,这才是一个技术人员,从程序员到中层管理者(技术总监)再到高层管理者(CTO)的能力成长过程。

如果你觉得乏力,或许应该多出来看看,毕竟有些东西是靠钻研出来的,有些东西是靠多行路、多交流得出来的,比如情商和视野,见闻的东西多了就知道该如何处理了。

突破技术管理,IT人中年危机变契机的更多相关文章

  1. TOP100summit2017:豆瓣耿新跃---站在公司整体目标下看技术管理

    壹佰案例:耿新跃老师您好,很荣幸又一次邀请到您担任壹佰案例大会的联席主席,在去年的壹佰案例大会上,您给我们带来很多非常经典的案例点评和提炼.您在去年壹佰案例峰会上最大的感触是什么呢? 耿新跃:我个人最 ...

  2. 投资人的能量往往大多远远不仅于此,他能站在不同的角度和高度看问题(要早点拿投资,要舍得让出股份)——最好不要让 Leader 一边做技术、一边做管理,人的能力是有限的,精力也是有限的

      摘要:在创业三年时间里作为联合创始人,虽然拿着大家均等的股份,我始终是没有什么话语权的,但是,这也给了我从旁观者的角度看清整个局面的机会.创业公司的成败绝大程度取决于技术大牛和公司 Leader, ...

  3. 技术路线 vs 技术管理路线

    最近因为要给刚毕业的学生做一次演讲,所以就职业发展这类话题先以写博客的形式做一些思考,希望届时能给同学们带来质量更高的内容.我在<驾驭你的"职场布朗运动">一文中谈了2 ...

  4. 国内技术管理人员批阅google的“春运交通图”项目(大公司下的高效率)<转载>

    在整理一份报告的时候,偶然看到2008年春节期间google推出的“春运交通图”项目建设历程报道,很受启发,随以国内的技术管理人员眼光批阅了这篇文章,同时也是自嘲吧. 以下黑色字体是原报道,红色字体是 ...

  5. 国内技术管理人员批阅google的“春运交通图”项目

    在整理一份报告的时候,偶然看到2008年春节期间google推出的“春运交通图”项目建设历程报道,很受启发,随以国内的技术管理人员眼光批阅了这篇文章,同时也是自嘲吧. 以下黑色字体是原报道,红色字体是 ...

  6. 抓手 & 技术管理

    抓手 & 技术管理 https://zhuanlan.zhihu.com/p/28891618 技术管理的目的 管理就是通过别人拿到结果.而管理的两个着眼点就是:成事.育人. 把事情搞定,把人 ...

  7. Liunx网络技术管理及进程管理

    Linux网络技术管理及进程管理(week2_day4)   OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型 ...

  8. git 分支管理——多人协作

    git 分支管理--多人协作 一般一个项目有一个master主分支,还有一个develop开发分支.主要是在develop分支上协作开发,然后merge合并到master主分支上. 当从远程仓库克隆时 ...

  9. 技术管理进阶——谁能成为Leader,大Leader该做什么

    原创不易,求分享.求一键三连 两个故事 谁能成为Leader 之前接手了一块产品业务线,于是与原Leader说了下分工,大概意思是: 我是过来学习的,也能给团队带来更多的资源,团队内的工作你继续管理, ...

随机推荐

  1. 【58沈剑架构系列】lvs为何不能完全替代DNS轮询

    上一篇文章“一分钟了解负载均衡的一切”引起了不少同学的关注,评论中大家争论的比较多的一个技术点是接入层负载均衡技术,部分同学持这样的观点: 1)nginx前端加入lvs和keepalived可以替代“ ...

  2. day4 作业计算器

    作业:计算器开发 (1)实现加减乘除及拓号优先级解析: (2)用户输入 1 - 2 * ( (60-30 +(-40/5) * (-9-2*5/-3 + 7 /3*99/4*2998 +10 * 56 ...

  3. pymongo的一些操作

    参考:http://www.yiibai.com/mongodb/mongodb_drop_collection.html http://www.cnblogs.com/zhouxuchen/p/55 ...

  4. mongodb卸载再重装

    标题就凸显了尴尬,是的,本地(ubuntu16.04)自带的mongodb太老了,想要装最新版的 卸载: sudo dpkg -P mongodb 然后下载新版的mongodb:  https://m ...

  5. Redis实战(四)

    配置好了web.config程序,并且能通过C#代码来读取和管理以上配置信息. 接下来,就可以进行Redis的数据写入了.Redis中可以用Store和StoreAll分别保存单条和多条数据,C#中具 ...

  6. yum软件搜索

    安装软件却记不清包名,搜索出所有带SDL的包yum list *SDL* yum install xxx 列出所有的安装套件yum group list yum group install xxx

  7. Django Suit v2-dev 使用

    转:链接:https://www.jianshu.com/p/84fa8219fb48 官方文档: 链接 Git: 链接 install Django Suit 为了适配 Django 有许多不同的版 ...

  8. scrollview和viewpager滑动冲突

    import android.content.Context; import android.util.AttributeSet; import android.view.MotionEvent; i ...

  9. EOJ 3256 拼音魔法

    模拟. 有$a$先标$a$,其次是$o$和$e$,$o$和$e$在韵母中不会同时存在.最后是$u$和$i$,这两个字母在韵母中可能同时存在,标在后面的那个.输出那些字符的话直接输出就可以了. 举几个例 ...

  10. SCU 4443 Range Query

    二分图最大匹配,枚举. 可以计算出每一个位置可以放哪些数字,每个数字可以放在哪些位置,这样就可以建二分图了. 如果二分图最大匹配不到$n$,则无解.否则构造字典序最小的解,可以枚举每一位放什么数字,然 ...