程序员、架构师……IT行业都有哪些晋升方向?
IT行业有多个方向,产品、运营、技术……而技术方向也有着许多的岗位,对于零基础想要学习IT技术的人来说,可能不是很了解这些。今天就给大家介绍一下IT行业技术方向的一些主要岗位,其中也能看出在IT行业的职业晋升方向。
01
程序员
程序员,英文名coder/programmer,大家常自嘲叫码农的阶段。这个角色职责是把需求或产品实现为用户可用的软件产品。此职位为执行级别。另外因为经验较少,一般需要求助别人,或与别人一起完(ban)成(zhuan)一个任务。
此阶段大概要经历3年,程序员的职责如下:负责公司运营系统的设计与开发工作,运营数据处理和分析
02
高级程序员
高级程序员学名工程师。
到了这个level,英文名可改叫做engineer或developer。
此时你的功力开始增强,这与你平时的积累努力是分不开的,祝贺你~
你的经验可胜任模块级的系统设计,承担完成较为复杂的技术,能有效的自我管理,有帮助别人快速解决问题(trouble shooting)的能力。
此阶段你需要经历到7、8年左右的体验,中间要经历一段深刻自我历练的过程。般人在5年前后遇到一个门槛,碰到天花板+彷徨期,或者你打心眼里不在喜欢编程,可尝试转为其它角色,如产品经理,售前售后支持等岗位,也不失为好选择。
当我们熬过这段儿,就会“山随平野尽,江入大荒流“,渐入佳境矣。高级程序员定义软件功能、做开发计划推进和管理。可以带几个帮手把产品规划的功能实现,你是团队中的”大手“,遇到难题也是你亲自攻艰克难。所以,一个高级程序员,他的职责很清晰:
负责产品核心复杂功能的方案设计、编码实现
负责疑难BUG分析诊断、攻关解决
03
架构师
到了架构师级别,想必你已经学会降龙十八掌,可登堂入世,成为一位准(lao)专(you)家(tiao)。
我们大喊声:“单打独斗,老衲谁也不惧!“,遂开始领导一众技术高手,指点武功,来设计和完成一个系统,大多是分布式,高并发的系统架构平台。
架构师的任务是为公司产品的业务问题提供高质量技术解决方案。可能每条产品线都设置了架构师,也可能多条生产品线的的后端是由一个架构师设计的平台提供。通过上面架构师的部分成果,总结其职责如下:
需求分析:“知彼”有时比“知已”还重要。管理市场,产品等的需求,确立关键需求。坚持技术上的优秀与需求的愿景统一,提升技术负债意识,提供技术选项,风险预判,工期等解决方案。
架构设计:在产品功能中抽取中非功能的需求,由关键需求变成概念型架构。列出功能树,分层治之,如用户界面层、系统交互层,数据管理层。达成高扩展,高可用,高性能,高安全,易运维,易部署,易接入等能力。
功能设计与实现:对架构设计的底层代码级别实现。如公共核心类,接口实现,应用发现规则、接口变更等。
04
技术经理
人生就是不断上升的过程,你已经到达经理的层次了。
如今的你,需要不断提高领导力,需要定期召开团队会议讨论问题。
技术经理有时候也可能叫系统分析员,一些小公司可能会整个公司或者部门有一个技术经理。
技术经理承担的角色主要是系统分析、架构搭建、系统构建、代 码走查等工作,如果说项目经理是总统,那么技术经理就是总理。
当然不是所有公司都是这样的,有些公司项目经理是不管技术团队的,只做需求、进度和同客户沟 通,那么这个时候的项目经理就好像工厂里的跟单人员了,这种情况在外包公司比较多。
对于技术经理来说,着重于技术方面,你需要知道某种功能用哪些技术合 适,需要知道某项功能需要多长的开发时间等。
同时,技术经理也应该承担提高团队整体技术水平的工作。
你需要和大家站在一起,因为人们也都有解决问题的能力,更需要有以下的能力与责任:任务管理:开发工作量评估、定立开发流程、分配和追踪开发任务质量管理:代码review、开发风险判断/报告/协调解决
效率提升:代码底层研发和培训、最佳代码实践规范总结与推广、自动化生产工具、自动化部署工具
技术能力提升:招聘面试、试题主拟、新人指导、项目复盘与改进
05
技术总监
如果一个研发团队超过20人,有多条产品线或业务量很大,这时已经有多个技术经理在负责每个业务,这时需要一位技术总监。
技术总监的职责:
组建平台研发部,与架构师共建软件公共平台,方便各条产品业务线研发。
通过技术平台、通过高一层的职权,管理和协调公司各个部门与本部门各条线。现在每个产品线都应该有合格的技术经理和高级程序员。
06
CTO:首席技术官
首席技术官,英文名Chief Technology Officer。是与CEO、COO、CFO同级的领导者,是技术和业务融合的领袖。
国内与国外对CTO的定义有些许不同。
美国对CTO的职责是设计公司三年内的产品和服务的技术发展方向,较少参与技术团队的日常管理和项目管理事务。基本是前瞻性的策略思维,比如Google的谢尔盖.布林一直保持对技术方向的敏锐,比如无人驾驶汽车,人工智能等走向。
在国内,CTO大部分则偏重于研发管理,相当于技术总监的Plus版。它相当于美国互联网公司常设的工程师副总裁+CTO的工作并集。但总体事情比美国的CTO层次低,大部分CTO的是领导技术团队开发各类产品,解决技术问题,管理不同的项目,排期交付。还有一部分的职能类似于架构师或总工程师,作为技术侧的权威,为下一步的发展方向 做研究探讨,为CEO提供建设型决定参考。
从普通的程序员到CTO,需要的不仅是时间,更重要的是不断学习,程序员的职业晋升每提升一步都需要学习更多的东西!
IT行业有多个方向,产品、运营、技术……而技术方向也有着许多的岗位,对于零基础想要学习IT技术的人来说,可能不是很了解这些。今天就给大家介绍一下IT行业技术方向的一些主要岗位,其中也能看出在IT行业的职业晋升方向。
01
程序员
程序员,英文名coder/programmer,大家常自嘲叫码农的阶段。这个角色职责是把需求或产品实现为用户可用的软件产品。此职位为执行级别。另外因为经验较少,一般需要求助别人,或与别人一起完(ban)成(zhuan)一个任务。
此阶段大概要经历3年,程序员的职责如下:负责公司运营系统的设计与开发工作,运营数据处理和分析
02
高级程序员
高级程序员学名工程师。
到了这个level,英文名可改叫做engineer或developer。
此时你的功力开始增强,这与你平时的积累努力是分不开的,祝贺你~
你的经验可胜任模块级的系统设计,承担完成较为复杂的技术,能有效的自我管理,有帮助别人快速解决问题(trouble shooting)的能力。
此阶段你需要经历到7、8年左右的体验,中间要经历一段深刻自我历练的过程。般人在5年前后遇到一个门槛,碰到天花板+彷徨期,或者你打心眼里不在喜欢编程,可尝试转为其它角色,如产品经理,售前售后支持等岗位,也不失为好选择。
当我们熬过这段儿,就会“山随平野尽,江入大荒流“,渐入佳境矣。高级程序员定义软件功能、做开发计划推进和管理。可以带几个帮手把产品规划的功能实现,你是团队中的”大手“,遇到难题也是你亲自攻艰克难。所以,一个高级程序员,他的职责很清晰:
负责产品核心复杂功能的方案设计、编码实现
负责疑难BUG分析诊断、攻关解决
03
架构师
到了架构师级别,想必你已经学会降龙十八掌,可登堂入世,成为一位准(lao)专(you)家(tiao)。
我们大喊声:“单打独斗,老衲谁也不惧!“,遂开始领导一众技术高手,指点武功,来设计和完成一个系统,大多是分布式,高并发的系统架构平台。
架构师的任务是为公司产品的业务问题提供高质量技术解决方案。可能每条产品线都设置了架构师,也可能多条生产品线的的后端是由一个架构师设计的平台提供。通过上面架构师的部分成果,总结其职责如下:
需求分析:“知彼”有时比“知已”还重要。管理市场,产品等的需求,确立关键需求。坚持技术上的优秀与需求的愿景统一,提升技术负债意识,提供技术选项,风险预判,工期等解决方案。
架构设计:在产品功能中抽取中非功能的需求,由关键需求变成概念型架构。列出功能树,分层治之,如用户界面层、系统交互层,数据管理层。达成高扩展,高可用,高性能,高安全,易运维,易部署,易接入等能力。
功能设计与实现:对架构设计的底层代码级别实现。如公共核心类,接口实现,应用发现规则、接口变更等。
04
技术经理
人生就是不断上升的过程,你已经到达经理的层次了。
如今的你,需要不断提高领导力,需要定期召开团队会议讨论问题。
技术经理有时候也可能叫系统分析员,一些小公司可能会整个公司或者部门有一个技术经理。
技术经理承担的角色主要是系统分析、架构搭建、系统构建、代 码走查等工作,如果说项目经理是总统,那么技术经理就是总理。
当然不是所有公司都是这样的,有些公司项目经理是不管技术团队的,只做需求、进度和同客户沟 通,那么这个时候的项目经理就好像工厂里的跟单人员了,这种情况在外包公司比较多。
对于技术经理来说,着重于技术方面,你需要知道某种功能用哪些技术合 适,需要知道某项功能需要多长的开发时间等。
同时,技术经理也应该承担提高团队整体技术水平的工作。
你需要和大家站在一起,因为人们也都有解决问题的能力,更需要有以下的能力与责任:任务管理:开发工作量评估、定立开发流程、分配和追踪开发任务质量管理:代码review、开发风险判断/报告/协调解决
效率提升:代码底层研发和培训、最佳代码实践规范总结与推广、自动化生产工具、自动化部署工具
技术能力提升:招聘面试、试题主拟、新人指导、项目复盘与改进
05
技术总监
如果一个研发团队超过20人,有多条产品线或业务量很大,这时已经有多个技术经理在负责每个业务,这时需要一位技术总监。
技术总监的职责:
组建平台研发部,与架构师共建软件公共平台,方便各条产品业务线研发。
通过技术平台、通过高一层的职权,管理和协调公司各个部门与本部门各条线。现在每个产品线都应该有合格的技术经理和高级程序员。
06
CTO:首席技术官
首席技术官,英文名Chief Technology Officer。是与CEO、COO、CFO同级的领导者,是技术和业务融合的领袖。
国内与国外对CTO的定义有些许不同。
美国对CTO的职责是设计公司三年内的产品和服务的技术发展方向,较少参与技术团队的日常管理和项目管理事务。基本是前瞻性的策略思维,比如Google的谢尔盖.布林一直保持对技术方向的敏锐,比如无人驾驶汽车,人工智能等走向。
在国内,CTO大部分则偏重于研发管理,相当于技术总监的Plus版。它相当于美国互联网公司常设的工程师副总裁+CTO的工作并集。但总体事情比美国的CTO层次低,大部分CTO的是领导技术团队开发各类产品,解决技术问题,管理不同的项目,排期交付。还有一部分的职能类似于架构师或总工程师,作为技术侧的权威,为下一步的发展方向 做研究探讨,为CEO提供建设型决定参考。
从普通的程序员到CTO,需要的不仅是时间,更重要的是不断学习,程序员的职业晋升每提升一步都需要学习更多的东西!