这本书按照“新手上路”“进阶通道”“高手修养”“行业大神”将软件工程师分为四个不同的职业阶段,阐述了在不同阶段所需的技能和素养。
新手阶段强调执行力,是会做的能力。给定任务,锁定目标,就要按照规范、遵循逻辑,把满足需求和健壮性要求的程序、软件做出来。
进阶阶段强调设计能力。这个时候,上级布置给你任务,但不会告诉你怎么做。相当于只给一个问题,你需要自己把具体的问题抽象、拆解,并独立设计解决方案。
高手阶段则需要融会贯通的能力。这个能力对应的是我们通常讲的架构师,也就是软件项目的总设计师。架构师不仅要看到系统从过去到今天是怎么变化的,还要看到是外界哪些需求、内部哪些技术导致了这些变化,并且预判系统未来要朝什么方向发展。你需要综合考虑技术的演进、需求的变化、系统的发展等多个维度。
大神阶段需要沉淀方法论。在这个阶段,大家都公认你是这方面的权威,你能够把控行业方向。同时你还能够沉淀出一个方法,这个方法不只适用于当前的领域,别人把你这套东西拿过来,还可以解决另外的问题。