构建之法-3-软件工程师的成长

2019-05-06  本文已影响0人  BigLong
软件工程师的成长.png

本章主要是关于个人成长。如何衡量软件工程师的能力?软件工程师常见的思维误区。职业发展以及技能的反面。


3.1 个人能力的衡量与发展

3.1.1 能力衡量

当你在简历上写下“职业软件工程师”时,有没有想过自己到底有多“职业”呢?就像篮球运动员的职业简历上一样,包含出场数、命中率、防守、助攻等数据。我们可以衡量软件的工作量和质量:

  1. 项目有多大:代码行数(Line of Code, LOC)或者功能点数(Function Point)
  2. 花了多长时间:n个人 * m月
  3. 质量如何:bug数量或者返工的次数
  4. 是否按时交付:交付时间不仅越快越好,还要稳定。即估计与实际用时接近。
3.1.2 个人成长

3.2 软件工程师的思维误区


3.3 软件工程师的职业发展


3.4 技能的反面

巴克斯顿说技能的反面是“Problem Solving”—“解决问题”。

当你在简历上写下精通xx时,却把时间花在解决一些低层次问题上,那你其实就不精通xx。

提高技能的方法就是不断的练习,把低层次的问题都解决,变成不用经过大脑的自动操作,然后才有时间和脑力来解决较高层次的问题。

image.png

在中间部分是学习区,也就是我们要尝试、失败、学习、再尝试。。。逐渐就构建扩大了底部舒适区。一开始不要直接上手很难的领域,相当于直接进入顶部恐慌区,反而适得其反,出现拖延症现象。

书中,作者以玩魔方为例,如下:

魔方的技能有哪些层次呢?下面是我粗浅的看法。

1. 听说过魔方的玩法,理论上了解(已经知道:通过扭动魔方的各个层面,直到六面出现一样的颜色为止)
2. 对口诀知其然,能在实践中根据某种口诀玩成六面(作者达到了这种水平)
3. 对口诀知其所以然,能够根据情况加以变化
4. 同上,唯手熟尔。几十秒就可以搞定的(学校冠军们达到了这种水平)
5. 同上,但是转得特别快,十几秒就能转好的那些人,还能有一些例如闭眼睛还原魔方的绝技的(世界冠军们达到了这种水平)
6. 能够设计出新型的魔方

那怎么才能考察出一个人是否“精通”魔方呢?我想了这样一个办法:

a . 给面试者一个各面打乱颜色的魔方;
b . 要求他把六面还原;
c . 如果还原了,要求他把魔方恢复成我最初给他的那个混乱的局面,必须一模一样。

精通魔方的同学,来吧。
上一篇 下一篇

猜你喜欢

热点阅读