首页 > 代码库 > 软件开发中的工作事务与微技能分级评估

软件开发中的工作事务与微技能分级评估


        工作三四年后,是否感觉自己开始做一些没有提升的事情?是否在做一些低水平重复建设的事情呢? 

        通过对软件开发中的工作事务与微技能进行评估和分级,可以清晰地理解自己的工作构成、评估自己的当前水平、定位下一步发展的方向和思路。

 

        难度系数 *** 1

        1.  完成初级的页面测试;

        2.  编写简单非专业的文档;

        3.  能够理解基本业务;

        4.  日常普通的交流;

   

        难度系数 *** 2

        1.  完成一个简单的脚本实现临时需求, 15-20 min;

        2.  完成一个函数或方法的单测, 5-15 min ;

        3.  下载所需要的软件和工具,60min 取决于大小及网速;

        4.  搭建软件开发环境, 20min (假设软件均已下载准备就绪);

 

        难度系数 *** 3

        1.  完成一个带命令行的脚本实用工具,30-45 min ;

        2.  完成一个小改动需求,小的 bugfix ,20-40 min ,含测试;

        3.  部署Java应用运行的服务器环境;

        4.  编写脚本实现软件开发环境的自动化搭建;

        5.  学习业务并梳理成文档;

        6.  绘制系统业务流程图、思维导图等;

        7.  理解小组成员的想法和构思,比较流畅地与小组成员交流;

 

        难度系数 *** 4

        1.  权衡优先级,进行一天的工作内容规划,15-20分钟;

        2.  总结业务、项目与学习实践心得,60 min ;

        3.  实现略有难度的数据结构的算法,比如树结构编程;

        4.  编写实用而专业的业务文档、项目文档或技术分享文章;

        5.  有能力与团队成员就技术工程议题进行交流讨论并发表见解;

        6.  能够理解比较复杂的业务并将其分解为可以规划和实施的子业务;

        7.  理解项目进程并能适当调节个人活动与项目总体进度保持同步;

        8.  理解产品设计与开发要点并能有效实现;

        9.  理解和完成前后端组件的交互、前后端团队的协作;

        

        难度系数 *** 5 (P5)

        1.  实现复杂结构的编程, 复杂结构可能是List, Map 嵌套的复合结构,或者图结构;

        2.  实现复杂算法的编程, 比如最短路径算法,迷宫回溯算法; 

        3.  完成并发异步的编程, 比如 Ajax 编程, 并发实现词典的单词统计计数;

        4.  能够实现针对特定需求的可扩展的微框架的设计与实现;

        5.  理解分布式系统的整体架构设计,并完成普通业务开发;

        6.  完成一项需求的概要设计和详细设计(含数据库设计);

        7.  绘制子系统或子模块的整体框架图或架构设计图;

        8.  完成一项之前没有做过的技术工程工作,比如线上大流量服务分流;

        9.  研究一个模块的源代码实现;

      10.  快速学习和应用一门新技术,比如HBase ; 

      11.  指导初级工程师完成日常技术工作;

      12.  理解、研究和讨论一项议题,并在会议上做出适当的发言;

      13.  演示自己的工作成果;

      14.  编写测试框架和测试用例,实现可重复自动化测试;

      15.  对一个业务主题做仔细的调研,并完成项目立项工作;

      16.  分享自己在学习或工作中掌握的新思想、新技术、新成果;

      17.  规划个人的季度总体目标及实施计划;

      18.  执行个人的季度总体目标及实施计划;

      19.  参与和完成中型项目的开发;

 

        难度系数 *** 6  (P6,Z4)

        1.  独立完成一个中型需求的开发,涉及需求理解、详细设计与实现、测试部署等综合技能;

        2.  实现分布式系统下的复杂业务开发,涉及事务、并发控制等;

        3.  完成大型跨团队项目的开发与合作;

        4.  独立负责一个中小系统的日常开发与维护工作;

        5.  能够对系统的业务与模型进行抽象和解耦,实现可扩展性设计;

        6.  绘制整体应用的整体框架图或架构设计图;

        7.  理解公司、部门、团队的总体目标及方向;

        8.  规划个人的年总体目标及实施计划;

        9.  执行个人的年总体目标及实施计划;

      10.  规划小组的整体图景和方向;

      11.  执行小组的整体图景和方向;

      12.  指导初中级工程师做出优秀的成果和贡献;

      13.  完成一次良好的晋升面试;

      14.  为普通项目做技术选型;

      15.  演示团队的工作成果;

      16.  能够推进某个团队事务的如期完成;

 

        难度系数 *** 7 (P7)

        1.   实现一个子业务的服务化迁移;

        2.   实现一个子系统的重构;

        3.   规划跨业务团队的总体目标及实施计划;

        4.   带领小组成员实现季度、年规划目标;

        5.   为重大项目做技术选型、架构设计或技术咨询;

        6.   指导中高级工程师做出优秀的工作成果和贡献;

        7.   在某个专业技术领域发挥着突出的技能和贡献,比如推动团队代码质量的提升;

        8.   综合运用知识、技能、经验、直觉等完成技术难题的攻克,比如交易引擎的设计与开发;   

        9.   综合运用知识、技能、经验、直觉等创造性地改善现有工作的效率,比如自动化生成测试;

 

        难度系数 *** 8 

        1.  带领部门团队成员实现部门季度、年规划目标;  

        2.  持续领导部门级的发展战略和实施计划的执行;

        3.  为跨团队中型项目做架构设计或技术咨询;

    

        难度系数 *** 9

        1.  实现跨部门的季度、年规划目标;

        2.  持续领导跨部门的发展战略和实施计划的执行;

    

        难度系数 *** 10

        1.  实现整个组织的季度、年规划目标;

        2.  持续领导整个组织完成有意义的季度、年度目标,并为社会承担相应的责任;

        

 

软件开发中的工作事务与微技能分级评估