《构建之法》学习(3)——软件工程师的成长
1.个人能力的衡量与发展
积累软件开发相关的知识,提升技术技能
积累问题领域的知识和经验
对通用的软件设计思想和软件工程思想的理解
提升职业技能
实际成果
IC在团队中的流程
通过交流、实验、快速原型等方法,理解问题、需求或任务
提出多种解决办法并估计工作量
与相关角色交流解决问题的提案,决定一个可行的方案
执行,把想法变成实际中能工作的代码,同时验证方案的可行性和其他特性
和团队的其他角色合作,在测试环境中测试实现方案,修复缺陷。如果此方案有严重的问题,那么就考虑其他方案。
在解决方案发布出去之后,对结果负责
衡量软件开发的工作量和质量
项目/任务有多大?
花了多少时间?
质量如何?
是否按时交付?
2.软件工程师的职业发展
职业发展——考级之路
职业成长——Steve McConnell版本
职业成长——大公司版本
职业成长——自我评估
3.技能的反面
通过玩魔方的例子说明了技能提升的规律,以及技能的反面——“解决问题”。
遇到问题不能一直上网查,特别是对于基础性的知识,要把它变成自己的东西,这样在写代码的过程中才不会一味解决低层次问题,才能把重心放在“算法技能”和“程序设计技能”上。