一、高级程序员
如果你是一个刚刚创业的公司,公司没有专职产品经理和项目经理,你就是公司的产品经理,你如果对你现在的开发员能力不满,那么你只需要的是一个高级程序员。
你定义功能、你做计划推进和管理,他可以带1-2个副手把你规划的功能实现了,他是主力干活者,有技术难题也是他来亲自攻克解决。
所以,一个高级程序员,他的职责很清晰:
1、负责核心复杂功能的实现方案设计、编码实现
2、负责疑难BUG分析诊断、攻关解决
二、研发Leader
公司再长大些。如果你就有一个研发团队(含产品/开发/测试),你就一套主产品,而且你的研发团队小于15人,那么你需要的就是一个研发Leader。
因为你已经有了1-2个高级程序员,核心难题攻克和核心功能研发进度与质量保证,已经可以靠他们自身能力解决掉了。那么你需要研发Leader干什么。
研发Leader的职责是:
1、团队任务管理:开发工作量评估、开发任务分配
2、团队生产质量提升:代码审核、开发风险识别/报告/协调解决
3、团队生产力提升:代码模板研发与推广、最佳实践规范总结与推广、自动化研发生产工具研发与推广
4、团队专业力提升:招聘面试、新人指导、领导复盘总结改进
三、技术总监
如果你的研发团队超过20人了,而且有多套主打产品线了,你可能已经有了多个研发Leader了,那么你需要一个技术总监。
技术总监的职责:
1、组建平台研发部,搭建公共技术平台,方便上面各条产品线开发。
2、通过技术平台、通过高一层的职权,管理和协调各个产品线组。现在每个产品线都应该有合格的研发Leader和高级程序员了。
四、首席架构师
因为你已经有了技术总监了,所以技术平台不错了。技术平台和各条产品线的协调互动,也是技术总监管着。
因为你已经有了各个产品线的高级程序员,他们在靠个人能力维持着核心功能模块的开发进度和代码质量。
因为你已经有了研发Leader,所以代码模板研发与推广、最佳实践规范总结与推广,这些事都已经在日常按份内职责开展了。
那么,啥时候需要首席架构师啊。
也就是说,需要分离管理族和专业族了。你会发现,这个阶段你的研发团队已经超过100来人了,需要有人专注来做架构规划、设计、日常维护。不能让研发总监和研发Leader又做管理又做技术一股脑都扔给他们,你就等着总结果产出。这是不对的。
需要从技术总监和研发Leader身上剥离职责了。让技术总监和研发Leader偏项目管理(管理族),把各个模块之间的架构设计工作,独立出一个岗位,就是架构师,来负责。
每个产品线都有架构师,在技术平台部门也有技术平台的架构师。那么,技术平台和业务产品线的架构互动,就是首席架构师在衔接了。让技术平台架构能够和产品业务系统的架构互相促进和支撑,就是首席架构师的份内之事。
架构师的职责是:
1、架构分析:从功能性需求中识别出需要增加的非功能性需求,好满足性能、可扩展、解耦/集成、安全、可运维、高可用、易部署、易更新。并且识别完非功能型需求,还要做技术选型、技术架构风险识别、技术实现工作量评估
2、架构设计与实现:非功能性模块的架构设计、接口设计、代码实现。所以需要的是有代码实现能力还要有架构思维的工程师,不需要画PPT的工程师
3、业务架构设计与实现:需要对跨系统的接口进行识别、实现、维护,需要对能写成公共代码类库的进行分析、识别、接口设计、实现、变更维护。
4、重构:架构师需要经常做Bug分析、非模板性和公共类库代码检查,以发现代码腐烂程度,以发现还有哪些代码没有做很好的架构与精心的代码设计。所以重构是经常性维护发生的,不是攒到某一刻动大手术,甚至推翻重做,那就不叫重构了。
五、CTO
你把架构师团队组织建立完成,再往大长,你才需要真正意义上的CTO了。否则你一开始就招真正的CTO,他也不满意,你的期望也不对。现在你的期望也对了,他的能力模型也正好和你的期望职能匹配了,你能给他的和他想要的也正好匹配了。
有的公司有软件系统产品副总裁,也有软件系统技术副总裁,而且把软件系统技术副总裁叫CTO,软件系统产品副总裁叫产品VP。这就很怪异。
真正的CTO,是软件产品和技术是统一管理的。
他做的事情,是商业、产品、技术、管理、团队相平衡的综合统管。
CTO的职责:
1、业绩达成:洞察客户需求,捕捉商业机会,规划技术产品,通过技术产品领导业务增长,有清晰的战略规划、主攻方向,带领团队实现组织目标
2、前沿与平台:到这个研发规模规模级别了,一定要有专门的团队做技术应用创新探索和前沿技术预研。而且要和技术平台团队、应用研发团队形成很好的联动作用,让创新原型试点能够很平滑的融入商业平台再让应用研发线规模化的使用起来。大量的前沿探索都死在了内部,做完试点就停滞了,这就需要CTO做好整体的衔接推动工作。
3、研发过程管理:站在全局立场来端到端改进业务流程,为业务增长提供方便
4、组织与人才建设:公司文化和价值观的传承;研发专业族团队梯队建制建设、研发管理族团队梯队建制建设;创建创新激发机制,激发研发人创新向前发展,激发黑马人脱颖而出
相关推荐
ITIL(IT Infrastructure Library 信息技术基础架构库)是CCTA(英国国家计算机和电信局,现在已经并入英国商务部OGC )于20世纪80年代末开发的一套IT服务管理标准库,它把英国各个行业在IT管理方面的 最佳实践归纳...
一体化完整的BPM解决方案,彻底的免编程设计,从拖拉式流程设计器、表单设计器、报表设计器均符合免编程设计原则,并且,所有产品包括组织结构管理,电子表单、流程设计、报表设计全部符合微软产品用户已有的使用...
一体化完整的BPM解决方案,彻底的免编程设计,从拖拉式流程设计器、表单设计器、报表设计器均符合免编程设计原则,并且,所有产品包括组织结构管理,电子表单、流程设计、报表设计全部符合微软产品用户已有的使用...
据统计,在IT行业工程技术人员的学历结构中,研究生以上学历 约占18%,本科学历占65%,专科学历仅占百分之十几。实际上大量高学历者从事着低学 历人员就应该胜任的工作,造成人才的浪费。以网络工程的人员结构为例,...
然而,IT人才紧缺已成为制约IT行业发展,仔细分析,IT人才市场出现的供与求的断层,最根本的原因是企业与学校之间缺乏沟通,学校培养出来的学生不是企业想要的,他们缺乏相应的岗位应用能力也就是缺乏面向岗位的技能...
伴随着信息行业的蓬勃发展和人们办公自动化意识的增强,公司文档管理部门的的工作也越来越繁重,原来的公司文档管理系统已经不能完全满足相关人员使用的需要。为了协助信息行业开展公司文档管理工作,提高工作效率,...
学习课程 以上海交通大学软件工程系为例,除基础必修课程,通识课程及个性化教育以外,所需要学习的专业课程有: 专业必修类: 程序设计与数据结构 数据库原理与技术 计算机组成与系统结构 计算机系统概论 数字电路...
专业必修类: 程序设计与数据结构 数据库原理与技术 计算机组成与系统结构 计算机系统概论 数字电路与数字逻辑 软件工程概论 软件测试 面向对象分析与设计 编译原理与技术 操作系统 计算机网络 软件过程与管理 人机...
伴随着信息行业的蓬勃发展和人们办公自动化意识的增强,绩效考核管理部门的的工作也越来越繁重,原来的绩效考核管理系统已经不能完全满足相关人员使用的需要。为了协助信息行业开展绩效考核管理工作,提高工作效率,...
学习课程 以上海交通大学软件工程系为例,除基础必修课程,通识课程及个性化教育以外,所需要学习的专业课程有: 专业必修类: 程序设计与数据结构 数据库原理与技术 计算机组成与系统结构 计算机系统概论 数字电路...
地理信息产业是信息产业的一个重要组成部分,地理信息技术是IT技术的一个重要分支,地理信息系统软件是一类特殊的计算机信息系统软件,它是以各类空间数据及其属性为基础,为各种应用目的服务的一类计算机信息系统。...
目前尽管有线网络以其传输速 度高,产品品牌及数量众多和技术发展速度快等优点,在市场上有较高的知名度和较大 的市场份额,但是在一些特殊的环境和特定的行业里依然有许多令IT数据管理公司头疼 多年的LAN(网络/...
英语:中国在全球IT行业中的地位很高。 自2000年代以来,在形成国际公司分公司的过程中,中国Swift崛起为全球IT制造中心,截至2013年,中国生产的手机,计算机,和彩色电视。 中国的IT制造业的发展主要在珠江三角洲...
编写建议:列出本文档所涉及到的关于客户需求领域的行业或专业技术特有的(专用)名次/和术语并给出符合实际情况的解释说明;编写格式如下: 软件项目需求调研报告(3)全文共13页,当前为第6页。 中文全称 中文简称 ...
发现这两公司都有各自的特色~联龙公 司是以销售为主~需要的人才主要是懂计算机的有经验营销人员,嘉杰信息技术有限公司 是以计算机信息系统集成设计、施工和服务为主~需要的人才主要是精通计算机硬件或 精通计算机...
10、灵活的系统功能组合及可扩展性,系统采用了最先进的模块化设计组合技术,按使用功能进行模块设计,可根据用户不同的使用要求灵活组合各功能模块,还可根据用户的特殊使用需求,在原系统的基础上进行个性化的二...
尤其是IT类企业,如软件开发、测试行业的公司企业。而这些资源由于专业性强,升级换代快,分布广泛和虚拟化,给企业的计算机资源管理带来了一定的挑战。为了使这部分资源管理,更加专业化、科学化,最大程度地“善用...
安全监管 系统架构特点: 统一管理,分布部署该文设计的企业网络安全管理系统是采用网络安全管理中心对系统进行部署和管理,并且根据网络管理人员提出的需求,将网络安全代理分布地布置在整个网络系统之中,然后将...