前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >程序员的能力模型

程序员的能力模型

作者头像
春哥大魔王
发布2018-09-21 11:21:26
3.6K0
发布2018-09-21 11:21:26
举报
文章被收录于专栏:服务端技术杂谈

我之前说过,程序员如果想有未来,必须最少做到P7的水平,这样在未来找工作可以有很大的选择权。

同时P7具备的专业的开发技能和一定的架构知识,在程序员纬度上能力慢慢趋于全面。

而且我推荐技术团队的leader要到P7才开始带团队,从BAT来看,基础leader都是P7开始胜任的。

那么P7亦或是P8应该具备哪些技能呢?简单梳理了一下。


后台开发知识

关键词:理解原理,掌握后台架构设计方法论

标准:

  1. 深刻理解系统在实际运行过程中所经过的各个环节的相关知识,原理,如硬件(CPU,内存,存储架构等),内核(进程调度,内存管理模型),应用(设计模式,进程模式,同步异步设计),网络(协议栈,拓扑结构,收敛比等),清楚各个部分对实际系统服务的影响,对性能优化和系统扩展有清晰的思路。
  2. 深刻理解高并发,高可用系统设计理论,能够在实际场景中灵活运用。
  3. 熟练掌握IO,多线程,网络协议,数据存储,分布式相关框架中间件设计原理,并能够根据业务场景做定制开发。
  4. 熟练掌握柔性可用,过载保护,灰度升级等各类海量用户访问的架构设计方法和适用场景。
  5. 掌握业内在高并发高可用高性能方面的优秀做法和经验,能够根据业务实际特点采取积极措施,达到行业领先水平。

业务领域知识

关键词:理解产品核心体验,对业界多个业务有深入理解,行业趋势判断

标准:

  1. 对个人负责的业务的未来发展(包括产品,技术架构等)有一定了解,能指导平时工作。深入理解产品核心体验,在技术方案和产品体验上能和产品团队一起进步。
  2. 对业界相关多个行业方向有深入了解,在整体上可以和产品团队一起沟通并推动产品持续正向发展。
  3. 对业界发展趋势能够有正确判断,能够引领产品和技术团队,推动整个行业变革。

开发能力

关键词:能主导或核心参与大中型项目,能担任大型项目的技术负责人

标准:

  1. 精通1~2门主流开发语言。
  2. 熟悉1~2种常见软件工程开发模式,领会其中要领,并在具体项目中实践过。
  3. 主导或深入参与过一个中型项目研发工作,或在一个大型项目中研发其中核心子项目,担任其中研发负责人。
  4. 能够协同团队完成简单系统的研发工作,包括需求调研,设计,开发,文档,测试,上线等。
  5. 能够协调系统各模块等研发进度,推动系统按时交付。
  6. 具备良好的业界技术视野,精通软件工程方法论,能对现有工作方法,所用系统和工具在流程,使用方法等层面提出建设性意见。
  7. 担任过大型项目的技术负责人,有完整从立项到上线项目经验。
  8. 能够带领团队完成复杂系统研发工作,包括需求调研,设计,开发,文档,测试,上线。
  9. 能够主导项目推进和交付。

架构能力

关键词:子系统设计能力,完整系统设计能力,横向大系统设计能力&前瞻性

标准:

  1. 能够完成多方需求收集,形成技术需求文档。
  2. 能够选择合理的架构完成中型以上项目的架构设计(多进程,多模块,多服务器)。
  3. 能够预估项目所用的所有资源及项目的工作量,并预估项目的瓶颈和风险,选择合理方案。
  4. 能够把项目分解的层次分明,具有清晰的接口定义,可实现,同时能够给出测试方案。
  5. 考虑合理的地域或机房分布,系统灾备能力,运维发布及扩展性。
  6. 能够充分的估算出系统可达的性能,能够设计出高性能,高并发,海量数据处理系统。
  7. 能够对公司内部系统的架构有一定深度的认识和了解。
  8. 掌握海量服务的思想和理念,能够权衡技术方案,研发节奏,产品体验,作出合理取舍。
  9. 能够对业界架构有深入了解,技术视野宽。
  10. 能够跟踪业务对架构对需求,能够前瞻性对改进架构。
  11. 能够完成完整对架构设计,能够在业界处于领先地位。
  12. 设计的系统有足够的可扩展性。
  13. 在架构方向达到行业领先水平,能够在架构设计上引领行业变化。
  14. 完成横向大系统架构设计,该产品为公司创造重大影响力和价值。

业务运维

关键词:主导系统容灾容错设计实施,业务可用性保障,多业务可用性保障及创新建设

标准:

  1. 能够根据系统架构,资源状况进行系统容错容灾设计并主导实施。
  2. 能够设计系统的柔性,有损和灰度机制,推动系统监控准确度,覆盖度和完善。
  3. 能够对问题进行快速定位,分析解决。
  4. 针对某业务领域,主导建立完整对可用性保障机制和相应流程。
  5. 能够主导业务架构设计,根据业务发现,资源条件进行架构演进设计。
  6. 面向公司级多业务领域,能够主导建立完整对可用性保障机制和相应对流程,并在此基础上进行创新性建设,在行业有一定影响力。

执行力

关键词:目标拆解,资源协调,确定目标,用于担当

标准:

  1. 能够承担有挑战性项目或工作任务,并按要求高质量完成。
  2. 针对给定的问题目标,能够全面分析抓住任务关键因素。
  3. 灵活应变及保证任务的执行,并能不断改进积极寻找办法提高工作效果或工作效率。
  4. 能协调多方资源确保完成。
  5. 用于承担难度大,有挑战性的工作任务,并能够直面问题敢于承担风险和责任。
  6. 针对某一领域,能够迅速抓住关键目标。
  7. 针对工作上的困难,能够协调各方采取有效办法解决技术或设计问题,推动工作计划按要求前进直到最终目标。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 春哥talk 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档