软件工程师专业化与转管理的建议

Posted wintersun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程师专业化与转管理的建议相关的知识,希望对你有一定的参考价值。

        同是IT行业软件开发工程师, 部分人到30岁已对技术没有了兴趣, 想转管理. 但是他之前是否又真是专业的软件工程师呢? 据观察与了解很多这类人不是,  没有持续的学习的习惯已经落伍.  在研发团队管理上也只是入门级. 不管是继续做技术开发, 还是研发管理,  还是有一些建议:

专业化

      近年来IT行业各种观点、实践、技术、工具与术语层出不穷,想成为专业开发者,就得对其中的一大部分有所了解,并且要不断扩展这一知识面。 每个专业级开发人员必须精通的事项:

  1. 设计模式。必须能描述GoF的全部23种设计模式。
  2. 设计原则。必须了解SOLID原则,而且要深刻理解组件设计原则。
  3. 方法。必须理解XP、Scrum、精益、看板、瀑布、结构化分析及结构化设计等。
  4. 实践。必须掌握测试驱动开发TDD、单元测试UnitTesting, 面向对象设计与分析OOP/OOA、结构化编程、持续集成CI和结对编程。
  5. 工件。必须了解如何使用UML图、DFD图、结构图、Petri网络图、状态迁移图表、流程图和决策表。
  6. 架构模式。 MVVM, Microservice Architecture等,  软件体系结构.
  7. 系统设计与分析, 自动化测试, 持续集成/持续发布,分支策略, Code Review, 敏捷软件开发过程

你会发现以上这些都不是在学校里能够学习到, 都是需要工作后买书进行学习. 然后再加上不断实践与思考, 迭代. 之前笔者也写过软件开发的专业化. 都需要看什么书,国外有一个100本影响力最大编程图书参考http://cspray.github.io/my.so-archive/100-most-influential-programming-books.html

技术管理

      也是需要有长期积累与实践. 首先是否有系统学习过管理学的基础知识. 可参考《管理学(第13版)》. 是否有学习过项目管理知识体系. 可以参考书籍有《项目管理知识体系指南(PMBOK指南)(第6版)》, 《信息系统项目管理师教程(第三版)》。
      按行业发展趋势, 还需要了解工程师文化.

      工程师文化前提.
      1) 信任:Leader和产品对工程师绝对的信任是工程师文化的最基本条件。如果他说要用一个更优雅的方法解决一个问题,但要花更多的时间,请你选择相信他。好的工程师非常懒惰,他这么做一定是为未来的工作提高效率。
      2)卓越的技术领袖存在:领导如果对技术没有信仰,只把技术当成工具,就很难说这个团队会有工程师文化。说白了不是每个不懂技术的领导都懂得欣赏优雅代码产生的美和对未来产生的深远影响。
工程师文化的特征:

小团队:7-12人的团队是比较适合的团队大小。有人用pizza团队来形容一个团队的大小,就是一两张pizza可以喂饱这支团队。Facebook和Google经常有2-3个人的团队,小团队有如下特征:

Move Fast and Break Things(不破不立);
Huge Impact with Small Teams(以少为多,精准打击);
Be Bold and Innovative(勇敢追求卓越);

     技术创新:团队必须坚信技术可以为业务带来不同于现在的可能性,现在没看见不代表它不存在。技术挑战产品是因为也许你不知道还有更好的技术和架构可以更简单更有效地完成一个业务任务。团队激励不单纯以业绩为主的技术的创新.    

      我们再看一下技术团队Leader的职责:

技术图片


团队领导无法靠个人的力量完成所有的任务, 了领导可能会进行授权的部分:

技术图片

         除了硬技能,  团队管理者沟通能力也很关键, 有效沟通. 信息的有效程度又主要取决于以下几个方面:

       1) 信息的透明程度。当一则信息应该作为公共信息时就不应该导致信息的不对称性.信息必须是公开的。公开的信息并不意味着简单的信息传递,而要确保信息接收者能理解信息的内涵。如果以一种模棱两可的、含糊不清的文字语言传递一种不清晰的,难以使人理解的信息。对于信息接收者而言没有任何意义。另一方面,信息接收者也有权获得与自身利益相关的信息内涵。否则有可能导致信息接收者对信息发送者的行为动机产生怀疑。

       2) 信息的反馈程度。有效沟通是一种动态的双向行为,而双向的沟通对信息发送者来说应得到充分的反馈。只有沟通的主、客体双方都充分表达了对某一问题的看法,才真正具备有效沟通的意义。

      之前文章可以参考: 项目管理沟通计划软件项目研发中的沟通管理人际沟通风格介绍一.

领导力

       LeaderShip. 在管辖的范围内充分地利用人力和客观条件在以最小的成本办成所需的事提高整个团体的办事效率的能力,比较常见的领导力开发方法包括CEO12篇领导力提升、EMBA及EDP项目等。可以参考  精益IT组织与分享领导团队管理与领导者, IT技术团队管理之成长, 团队默契与团队信任, 学习型组织与企业, 领导人怎样带领好团队


Summary

     本文概况描述了软件开发工程的专业化, 转向团队管理者知识体系与能力, 项目管理, 工程师文化, 团队管理.


今天先到这儿,希望对您技术领导力, 企业管理,物联网,  系统架构设计与评估,团队管理, 项目管理, 产品管理,团队建设 有参考作用 , 您可能感兴趣的文章:
2017-2018年Scrum状态调查报告
2016年测试状态调查
2017年IT行业测试调查报告
项目管理-习惯发生范围变更
前端性能核对表Checklist-2018
大型电商互联网性能优化案例
国际化环境下系统架构演化
微服务架构设计
视频直播平台的系统架构演化
微服务与Docker介绍
Docker与CI持续集成/CD
互联网电商购物车架构演变案例
互联网业务场景下消息队列架构
互联网高效研发团队管理演进之一
消息系统架构设计演进
互联网电商搜索架构演化之一
企业信息化与软件工程的迷思
企业项目化管理介绍
软件项目成功之要素
人际沟通风格介绍一
精益IT组织与分享式领导
学习型组织与企业
企业创新文化与等级观念
组织目标与个人目标
初创公司人才招聘与管理
人才公司环境与企业文化
企业文化、团队文化与知识共享
高效能的团队建设
项目管理沟通计划
构建高效的研发与自动化运维
某大型电商云平台实践
互联网数据库架构设计思路
IT基础架构规划方案一(网络系统规划)
餐饮行业解决方案之客户分析流程
餐饮行业解决方案之采购战略制定与实施流程
餐饮行业解决方案之业务设计流程
供应链需求调研CheckList
企业应用之性能实时度量系统演变

如有想了解更多软件设计与架构, 系统IT,企业信息化, 团队管理 资讯,请关注我的微信订阅号:

技术图片

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 该文章也同时发布在我的独立博客中-Petter Liu Blog。

以上是关于软件工程师专业化与转管理的建议的主要内容,如果未能解决你的问题,请参考以下文章

软件工程课程建议

对于软件工程专业的思考

分析软件工程师必备技能

软件工程之建议

软件工程

现代软件工程—构建之法》第一章 中出现的计算机专业术语