写点什么

从程序员转型技术管理者的痛与悟

  • 2019-11-05
  • 本文字数:2355 字

    阅读完需:约 8 分钟

从程序员转型技术管理者的痛与悟

在一个 NB 程序员的世界里,“要不要转管理岗位?”可能会困扰很多人。它就像一枚硬币的 AB 面,抛起来之前难以预知结局,哪一面都合理,哪一面都有遗憾和不完美。



站队“把 NB 程序员当成终身职业”的人会列举从国外到国内一大堆”程序员大神“的成功案例。站队“一定要进入管理层"的人则会唱衰开发者面临的生存环境:当你年龄大了、精力不行了,还没进入管理层,那也就没有什么前途了。


借着不久前QCon上海2019召开的机会,我们采访到一位比较典型的从程序员进入一线管理岗位的嘉宾——平安壹钱包资深架构师丁雪丰,让他讲讲他的职业规划、他在程序员到管理者角色转变过程中的感悟和经验。


对于丁雪丰来说,进入管理岗位并非是很早就规划好的一条路径,只是形势到了这里,一切就顺理成章了。“一个人单枪匹马能做多大事儿?现在不像以前的求伯君年代,一个人写出的代码就能创造出一个时代。现在更多时候,为了让你的个人价值最大化,你是需要有团队支持的。”在丁雪丰看来,所谓“形势”,就是你未必要当一个纯粹的管理者,但你必须要能影响到一批人。


他的团队目前在平安壹钱包负责基础技术相关工作,就好像是业务与底层基础设施之间的“黏合剂”。丁雪丰一直把自己的团队定义为服务性质的团队,作为这样团队的管理者,他坦言最大的挑战在于:“我的团队不仅要做本职工作,还要支持其他团队解决问题,但是我们不像 BAT 等大厂,所服务的团队都是兵强马壮、技术能力特别强的同学,所以我们即使做出来的系统能够满足 99%的需求,我们也要去考虑其他团队在使用时可能发生的各种情况。”


一方面丁雪丰信奉还是要从技术角度解决问题,另外他也要让团队真正能够建立起服务的意识。“作为管理者,你要引导你整个团队的成员,让大家跟你的理念一致:有时候他们可能觉得我就是搞技术的,我不是做服务的。但是在不同团队面前,你的角色定位就是不一样的。我要慢慢培养团队的这种服务意识,该攻坚的时候攻坚,该支持的时候就做好支持。”


丁雪丰团队今年的主要工作聚焦在平安壹钱包全站架构改造方面,从技术层面为公司提供架构改造所需要的基础设施。此外,也会根据对业务发展的预期去进行相关技术的储备,比如关注混沌工程或者引入 TiDB。他要求团队既要能做好本职工作,也要能为其他团队提供技术支持,同时还要具备前瞻性,能够为即将到来的业务挑战提前进行必要的技术储备。


“我的团队有些人的精力主要花在今天,有些人我会让他做明天计划中的事情,可能还有少数人我会让他去做后天的事情。这个做后天事情的人,如果我今天跟明天的事情有需要,我会让他稍微停一下来支持:想做后天的那些事情,至少你得让我先活到后天。”


这其中还有一个大局观的问题,也是管理者在带团队的时候可能会遇到的挑战。“站在管理者的角度,首先我们需要满足公司商业利益上的诉求:我不可能说偷偷地投入重金去造一颗原子弹,但这颗原子弹可能对公司一点价值都没有。以我们在做的架构改造为例,如果不做可能无法支撑公司业务接下来的发展,这样的事情肯定会得到其他团队最大的配合。这是管理者在评估和决策事情优先级时候的准则。一线同事跟管理者最大的区别在于,他可能不会站在这样的角度来思考问题,他不会去关注公司整个的价值。”


对一名技术管理者来说,脱离一线后如何让自己保持技术敏感度、来为未来几年的决策去做技术储备呢?丁雪丰的做法是会去参加公司所有重要的架构评审,对业务有持续的深入了解;此外他会参与团队一些不那么紧急项目的代码撰写工作,也会去 GitHub 上提交自己感兴趣的开源框架代码,让自己时刻保持一线的状态。


对于公司暂时用不上但是很值得关注的技术趋势,比如 TiDB、OceanBase、NoSQL、Serverless,甚至 Java 最新版本,丁雪丰信奉的原则是:我可以不用,但是我要对它有了解,因为也许有一天你就需要用上它了。他会让团队去研究、调研,回到公司进行分享。


“虽然我们团队的定位更偏底层,有时候公司里实际使用的技术栈可能不那么新,但我还是希望我的团队的水平跟行业水平对齐。我要用行业的高标准来要求团队,要求我自己,这样才不会越走越窄。”


在技术敏感度保持上,丁雪丰会花费 10%-20%的日常精力,当然这使用的都是自己的业余时间,他坦言“因为工作时间要有各类事情要去处理。”


虽然精力有限,但是丁雪丰还是会选择在某个点上深扎下去,我们理解这也是技术管理者在建立一个技术上的威信吧。“你在某些点上面你还是要能服众的,你不能让别人觉得你什么都不行,这样的话他会质疑你为什么有能力当他的 Leader。”


对于丁雪丰来说,除了专长的 Spring,他现在也对运维很感兴趣,经济、法律、管理也会涉猎。提及管理,他的感悟是:“有时候管理也不是学来的,是你一步一步成长之后,一个跟头一个跟头摔出来之后,会有的感触。”这可能也是所有一线管理者都要经历的一个过程吧。


对于程序员经常讨论的终极问题:是否可以把写代码当成终身职业,丁雪丰比较理性,甚至在我们看来有一些悲观。”伟大的程序员毕竟还是少数,这个我相信在国外也是一样的。每个行业都有发展的生命周期,现在的东西一定会被后面更新的东西取代。包括写程序,在可以预见的未来也许 AI 可以帮你写程序。”


在此次 QCon 上海上,丁雪丰的演讲主题是——《⼀线主管养成记,如何从优秀的⼯程师转型为⼀线技术管理者》,点击这里可以下载演讲 PPT,了解更多精彩内容。


嘉宾介绍:


丁雪丰,技术图书译者,极客时间《玩转 Spring 全家桶》课程主理人,致力于推动优秀技术在国内的发展,是 Spring Framework 2.0 及 2.5 官方文档翻译项目负责人,出版了《Spring Boot 实战》、《Spring 攻略》、《RESTful WebService Cookbook 中文版》等 8 部图书。现服务于平安壹钱包,曾任职于支付宝与百度。


更多国内外一线技术大咖分享请持续关注 QCon 全球软件开发大会,访问官网与技术大咖面对面交流实践心得。


2019-11-05 07:003412
用户头像
张晓楠 InfoQ总编辑

发布了 144 篇内容, 共 107.0 次阅读, 收获喜欢 378 次。

关注

评论

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

【Linux】系统中安装Go环境

A-刘晨阳

Go Linux 三周年连更

优秀的pdf编辑器:Acrobat Pro DC 中文直装版

真大的脸盆

Mac PDF Mac 软件 PDF格式转换

大咖力荐 |《中国企业软件研发管理白皮书》为什么值得看?

万事ONES

【经验分享】硬件工程师需要知道的DFM可制造性设计

华秋PCB

工具 电路 PCB PCB设计 可制造性

实战分享丨 MySQL 与 Django 版本匹配相关经验

Java你猿哥

Java MySQL SSM框架 实战 Diango

涅槃重生!字节大牛力荐大型分布式手册,凤凰架构让你浴火成神

Java你猿哥

架构 分布式架构 凤凰架构

运维审计录像的作用是什么?用什么软件好?

行云管家

堡垒机 运维审计 审计录像

直播预告 | TDengine & Apache SeaTunnel 联合应用最佳实践

TDengine

Apache tdengine 时序数据库

人工智能会取代人类成为地球的主宰么?| 社区征文

毛小毛

人工智能 ChatGPT 三周年征文

某程序员哀叹:写几年代码,回头一看80%都没用,没法写上简历!

Java你猿哥

Java 程序员 面试 简历

Databend v1.1 版本发布!

Databend

阿里高工纯手写的《分布式架构手册》仅仅一天GitHub就标星128K

Java你猿哥

架构 分布式 分布式架构

解析单存储库:定义、优势与挑战

龙智—DevSecOps解决方案

谷歌 Monorepo Monolith 单储存库

ReentrantLock和Synchronized使用与区别,多线程安全问题

共饮一杯无

synchronized ReentrantLock 三周年连更

打造安全无忧软件应用的十大最佳实践

龙智—DevSecOps解决方案

软件开发 软件开发安全

阿里耗时1年:用283张图+24问完美诠释“Java并发编程”所有难点

Java 并发编程

面试了个阿里P7大佬,他让我见识到什么才是“精通高并发与调优”

Java 高并发 性能调优

如何将一个链表分组并对每组进行反转?

Java你猿哥

Java 链表 架构师 SSM框架 链表结构

关于自托管环境,您了解多少?

龙智—DevSecOps解决方案

Atlassian Data Center

RocketMQ 多级存储设计与实现

阿里巴巴云原生

阿里云 RocketMQ 云原生

OneCode 开源集成开发工具ESD功能介绍

codebee

开源 低代码平台

互联网工程师Java面试八股文及答案整理(2023最新版)

Java你猿哥

Spring Cloud springboot java面试 面经 JVM面试

Postman Runner 使用指南

Liam

Java 后端 Postman 接口测试 API 开发

解决流水线瓶颈、提升编码效率的五个方法(上篇)

龙智—DevSecOps解决方案

ci cicd 持续集成 流水线

如何解决spring的循环依赖问题?

Java spring 循环依赖

PostgreSQL技术内幕(七)索引扫描

酷克数据HashData

数据库 postgresql

缓存一致性设计思路

我爱娃哈哈😍

redis 缓存 缓存一致性

Linux 修改系统时间的两种方式

会踢球的程序源

Java Linux

研究思考丨关于软件复杂度的困局

阿里巴巴云原生

阿里云 云原生 复杂度

ElasticSearch 高级检索,按照顺序进行搜索

alexgaoyh

elasticsearch dsl 顺序搜索 高级检索 与或关系

分布式文件系统FastDFS

会踢球的程序源

Java fastdfs 分布系统

从程序员转型技术管理者的痛与悟_QCon_张晓楠_InfoQ精选文章