我希望用一篇文章完全让大家正确的理解从程序员到架构师、技术经理、技术总监、CTO的完整区别以及进阶要领。

只有客观去认识,才会更加合理的找到自己的擅长点,从而更好的发展自己。

上图是典型的薪资结构图,我们先从高级程序员谈起。

高级程序员

一般是至少三年以上的工作经验,有些地方是五年以上,很多小公司或者创业公司,高级程序员覆盖工作职责比较广,基本包含部分产品经理、项目经理的工作职责以外,最主要负责核心代码编程,基本技术难点都自己解决为主。

在公司大一点的都有非常明确的职责和级别定义,以阿里外代表,P5-P6代表高级软件工程师这个级别,基本能独立负责设计和编码阶段。

其实,在国外例如google、facebook等公司,很多牛人的title都是Senior Level engineer,这一点不像在中国。

在国内,一般一个高级程序员的准确定义:

负责核心复杂功能的实现方案设计、编码实现。详细描述:能独立设计一个业务模块的能力,并且独立设计数据库表以及UML画图,利用部分设计模式以及懂得算法和效率的高质量代码。

架构师

一般能做到架构师这个称谓,工作年限至少都在5年-8年以上,具体还看每个人的学习能力和领悟能力,也有时间短的,但大部分都是个例。

之所以有架构师这个称谓,主要还是公司发展以及大了的需要,需要专注于技术的人,你也可以理解为技术专家,攻克公司技术难题为主,例如淘宝的双11的挑战,以及公司发展需要考虑独立拆分,数据库压力太大,需要分布式缓存以及CDN的配合,怎么选择,怎么结合自己公司的情况攻克当前技术难题。

如果一定要准备定义,我用一句话:

架构师的职责应该是立足于技术和业务之间的中间角色或者平衡点, 在针对业务深刻理解的基础上,针对业务中存在诸多变数,挑选适合的技术架构和技术方案。

技术经理

技术经理坦率的讲,就是从高级程序员开始分化而来,一部分同学选择继续专研技术,往纵向发展,一部分同学打算觉得未来管理这条路很好,主动选择开始转型管理这个方向,于是才有里技术主管或者经理经理这个称谓。

我还是以阿里为参考,阿里的M代表管理方向,你可以通过下图可以清晰的看见P系列和T系列对应的级别。

P6和M1,从技术的角度,如果你打算往管理M发展,M1对应的至少你也能胜任资深工程师。

所以,这个时候你就非常清晰了,技术经理本身就是从资深工程师发展而来,很多公司的技术经理根本没有从一线研发做起,大部分就是一个项目经理,带带项目为主,根本无法胜任刚才我讲到的技术经理的工作。

最后,我稍微总结下部分技术经理的要领:

首先,具备核心模块代码编程的能力,从设计方案到核心编码,再到后期的代码review,这方面是能完全胜任的。

其次 ,才是团队任务管理,分配工作,工作量评估,以及帮助团队人员提升实力,以及推动更加合理的考核机制。

再次,协调的能力,与人打交道的能力,平级部门,产品、设计、测试、运营打交道的能力,这个还是要有的,不能一味盲干,也不能一味不发声,总之你要让你的团队在公司应该有一定的美誉,让大家能记住你们团队。

技术总监

技术总监一般工作8--10年以上,面技术经理的事你能做的非常好,再加上公司发展的需要,需要你同时带领多条业务线或者多个小团队的时候,基本就是技术总监了。

从管理的层级,技术总监同时管理多个技术经理,管理从业务线划分的团队。

从技术的层级,这里我补充一点,尽量你能胜任架构师这个级别,也就是说你至少也是一个技术专家最佳。当然,你会问?之前你提到高级程序员开始从技术专家和管理开始分化,这不是有点矛盾么。

其实,但你开始往技术经理发展的时候,其实就是多维度发展了,技术也是一个维度,并不是说你做纯管理脱离于技术,技术的积累你仍然需要继续专研。

最后,总结下技术总监的部分要领:

从业务线和团队的角度,你有能力组建研发部,搭建公共技术平台,管理各条业务线以及从技术经理、高级程序员、项目经理、还有架构师的能力。

CTO

首先澄清几个CTO的误区,CTO的要求是最高的,不是每一个人都胜任CTO,好的CTO在国内非常少,非常稀有。

很多同学的一个巨大的误区,认为CTO就专注于技术的,这是不对的,CTO如果只专注于技术,那你招一个架构师不就成了,为什么还需要找CTO呢。

还有一个误区,很多同学从大公司出来进入一家创业公司 or 小公司,挂名某某CTO,自认为自己已经一步登天,其实离CTO的能力差之甚远。

CTO是一个系统的成长轨迹,不是一朝一夕可以练成的,需要后天的巨大“自我改进”能力。如果用我自己的话总结,CTO的成长之路犹如“从蚕到蛾的蜕变”,整个蜕变过程缺一不可,最后都是要经历性格塑造的,不断的改变自己的性格。

我用一张图能稍微总结下CTO的要领,如果你有志于往CTO发展,至少你得知道,你尽量往这方面发展是OK的。

真正的CTO,是软件产品和技术是统一管理的,在通过后期的自己的努力,通过情商、逆商以及商业思维来辅助。

如果一定要总结下CTO的要领:

1.业绩达成:洞察客户需求,捕捉商业机会,规划技术产品,通过技术产品领导业务增长,有清晰的战略规划、主攻方向,带领团队实现组织目标

2、前沿与平台:到这个研发规模规模级别了,一定要有专门的团队做技术应用创新探索和前沿技术预研。而且要和技术平台团队、应用研发团队形成很好的联动作用,让创新原型试点能够很平滑的融入商业平台再让应用研发线规模化的使用起来。

3、研发过程管理:站在全局立场来端到端改进业务流程,为业务增长提供方便

4、组织与人才建设:公司文化和价值观的传承;研发专业族团队梯队建制建设、研发管理族团队梯队建制建设;创建创新激发机制,激发研发人创新向前发展,激发黑马人脱颖而出

CTO做的事情,是商业、产品、技术、管理、团队相平衡的综合统管。

作者:IT人升职加薪进阶站 优知学院 (www.youzhixueyuan.com,微信公众号:youzhixueyuan)创始人陈睿|mikechen,历任淘宝高级软件工程师、盛大架构师、百度研发经理、携程定制旅游CTO。

一篇文章搞懂高级程序员、架构师、技术总监、CTO从薪资到技能的区别相关推荐

  1. 一篇文章搞懂 Apache Kylin 4.x 的技术架构

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见1000个问题搞定大数据技 ...

  2. 一篇文章搞懂数据仓库:数据仓库架构-Lambda和Kappa对比

    在介绍Lambda和Kappa架构之前,我们先回顾一下数据仓库的发展历程: 传送门-数据仓库发展历程 写在前面 咳,随着数据量的暴增和数据实时性要求越来越高,以及大数据技术的发展驱动企业不断升级迭代, ...

  3. 一篇文章搞懂 Hive 的系统架构

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见1000个问题搞定大数据技 ...

  4. 2022最新Java高级程序员架构师面试题及答案

    1. Java如何开启线程?怎么保证线程安全? 答:线程与进程的区别:进程是操作系统进行资源分配的最小单元.线程是操作系统进行任务分配的最小单元,线程隶属于进程. 如何开启线程?1. 继承Thread ...

  5. 一篇文章搞懂最流行的容器化技术Docker

    说在前面的话 本篇文章什么样的人适合看? 刚入门学习docker的,看完对docker会有一个通篇的认识 有经验的人,在知识大爆炸时代,技术很多,没有人能记住所有东西,适合复盘的时候看 我想说的话:这 ...

  6. 一篇文章搞懂filebeat(ELK)

    一篇文章搞懂filebeat(ELK) https://www.cnblogs.com/zsql/p/13137833.html 目录 一.filebeat是什么 1.1.filebeat和beats ...

  7. c++ 计算正弦的近似值_一篇文章搞懂正弦保真性

    本文介绍数字信号处理中"正弦保真性"这一概念,想要更好地理解本文所述内容,建议读者先阅读<一篇文章搞懂卷积>. 正弦保真性定义 一个正弦信号作为线性时不变系统的输入时, ...

  8. 一篇文章搞懂架构师的核心技能

    " 这是架构师系列的第一篇:核心技能,希望这个系列能完全揭示架构师这个职位:我先从核心技能开始,后续还有架构师之路,架构实战等架构师系列文章. 本文作者 陈睿 优知学院创始人,前携程定制旅游 ...

  9. 一篇文章搞懂Java架构师的核心技能及薪资!

    Java架构师一般的薪资是多少?高不高?一般来讲,Java架构师是一个比较全面的职位,它既需要学习Java开发工具.性能优化.源码分析.分布式架构.微服务架构和多线程并发编程等基础技术,又需要有组织能 ...

  10. 组件化开发实战_一篇文章搞懂什么是前端“组件化”开发

    学过网页的朋友都知道,制作一个网页离不开HTML.CSS和JavaScript技术.对于初学者来来说,掌握这3门技术就已经很不容易了,为什么前端为什么又要搞出来一个"组件化"开发的 ...

最新文章

  1. CentOS 7部署OpenStack(9)—部署dashboard
  2. CodeSmith连接mysql
  3. rust营火为什么放不下去_从一个研发质量案例看,5why分析法,为什么分析不下去了?...
  4. python 笔记:函数
  5. 零售下一个十年:刀兵仍在,锋芒遮蔽
  6. L3-020 至多删三个字符 [DP]
  7. debug模式的开关与功能 django
  8. 10分钟搞懂商业模式画布:9张分析图、6张模板
  9. 蓝牙模块的分类和对应的属性特点
  10. 阿里有centos7 安装MongoDB及win7下MongoChef的安装
  11. 基于onvif协议的嵌入式设备(摄像头)开发(客户端)
  12. 评职称自费出书多少钱
  13. python实现whois查询_python实现whois查询功能的方法
  14. android P 锁屏初探 ——3 power键锁屏流程
  15. python的十句名言_让人恍然大悟的十句名言(双语版)
  16. 人工智能机器人发展前景,使用/教程/实例
  17. c++写俄罗斯方块小游戏
  18. HDU 5514Frogs
  19. 消息Hander dispatchfalled; nested excepton is java.ang.NOSuchMethodError: org.springramewrk.utl.tring
  20. 互怼、IPO、雷潮、寒冬,2018 互联网圈的那些事儿

热门文章

  1. Tek DPO2024B示波器和电流探头A622的使用
  2. 网络逻辑漏洞、SQLMAP、Nmap及其它命令的使用方法
  3. 【CV】胶囊网络 CapsNet:胶囊之间的动态路由机制
  4. [UOJ#132][BZOJ4200][luogu_P2304][NOI2015]小园丁与老司机
  5. 调整w7计算机屏幕一直亮,win7系统电脑屏幕不休眠保持常亮状态设置的操作方法...
  6. 知物由学 | 用案例起底黑灰产的各种“骚”操作
  7. ArcBlock 参加美国华盛顿州 Blockchain Unconference
  8. 好男07演唱会将开唱 劲歌热舞点燃盛夏激情
  9. 2203-python跳转,窗口图标,提示框,消息盒子
  10. 2021年海洋工程装备行业发展研究报告