俗话说“不想当CTO的程序员,不是好码农”,不管是初入职的编程小白,还是已经工作一段时间的程序老猿,初心总是希望自己在技术道路上不断的打怪升级。
当然,在职位上也希望早日走上人生巅峰,迎娶白富美。那么,对于一个普通程序员来讲,他的晋升之路都要经历哪些关键阶段,又都需要具备怎样的工作能力呢?
倔强青铜——程序员
这就是大家经常自嘲叫码农的阶段。
工作内容
对外宣称:把需求或产品实现为用户可用的软件产品。
实际工作:复制粘贴、照葫芦画瓢;
此阶段主要负责执行,大概经历1至3年不等,因为经验较少,此阶段程序员一般需要求助别人,或与别人一起完成一个任务。
秩序白银——中级程序员
具有调试软件的基本技能。
能力:分析,设计,开发,测试,实施及评估。
相较于码农阶段,中级程序员有了略丰富的项目经验和行业经验积累,不再是单纯复制粘贴,基本可以独挡一面!包括检测代码中的错误、创建和编写简单的单元测试、并可以为项目中遇到的问题提出有效的解决方案。
荣耀黄金——高级程序员
到了这个水平,你的技术开始增强,此时的你不仅可以完成任务,开始注重代码的质量,能够写出工业级的代码。
你的经验可胜任模块级的系统设计,承担完成较为复杂的技术,能有效的自我管理,有帮助别人快速解决问题的能力。
所以,一个高级程序员,他的职责很清晰:
1、负责产品核心复杂功能的方案设计、编码实现
2、负责疑难BUG分析诊断、攻关解决。
尊贵铂金——架构师
到了架构师级别,表示你基本成为一位准专家了。
架构师的任务是为公司产品的业务问题提供高质量技术解决方案。可能每条产品线都设置了架构师,也可能多条生产品线的的后端是由一个架构师设计的平台提供;
你的职责主要包括:需求分析、架构设计、功能设计与实现等;
永恒钻石——技术经理
作为技术经理,不仅要着重于技术方面,需要知道某种功能用哪些技术合适,需要知道某项功能需要多长的开发时间等。还需要承担提高提高自己的沟通协作水平、管理团队水平等。
主要包括
任务管理:开发工作量评估、定立开发流程、分配和追踪开发任务;
质量管理:代码review、开发风险判断/报告/协调解决
效率提升:代码底层研发和培训、佳代码实践规范总结与推广、自动化生产工具、自动化部署工具
技术能力提升:招聘面试、试题主拟、新人指导、项目复盘与改进
至尊星耀——技术总监
如果一个研发团队超过20人,有多条产品线或业务量很大,这时已经有多个技术经理在负责每个业务,这时需要一位技术总监。
技术总监的职责:
组建平台研发部,与架构师共建软件公共平台,方便各条产品业务线研发。
通过技术平台、通过高一层的职权,管理和协调公司各个部门与本部门各条线。
对于很多码农来讲,能做到这一步,就可以说是走上人生巅峰了。此阶段,更考验的你管理团队的能力了!
强王者——首席技术官
首席技术官是与CEO、COO、CFO同级的领导者,是技术和业务融合的领袖。
在国内,CTO大部分则偏重于研发管理,相当于技术总监的Plus版。大部分CTO的是领导技术团队开发各类产品,解决技术问题,管理不同的项目,排期交付。
还有一部分的职能类似于架构师或总工程师,作为技术侧的权威,为下一步的发展方向做研究探讨,为CEO提供建设型决定参考。
CTO的职责主要包括:搭建技术架构、梳理流程制度、组织知识培训、进行高层级业务支撑、打造个人品牌影响力;
同时,还要具有前瞻性视野、敏锐的市场嗅觉,战略落地的能力