快好知 kuaihz

程序员的12个层次与德雷福斯模型

我总结了一下,学习编程,开发软件,大抵分如下 12 个阶段

看书,看视频,看博客,听课等等

对着书敲代码

脱离书自己敲代码

自己实现一些小DEMO

进项目看代码

在别人指点下写代码

自己独立在别人搭建好的框架内填写代码

自己独立负责别人设计好的模块的实现

自己独立负责一个软件模块的设计和实现

负责较大的软件模块,拆分模块,分子任务给他人

负责一个小项目,设计,拆分,分派任务

做较大的软件系统的架构设计(架构师),或专注特定领域,解决疑难杂症

你在哪个阶段呢?欢迎留言讨论。

这12个阶段,是我自己总结的。实际上,有一个知名的德雷福斯模型,描述了专业技能的成长阶段

德雷福斯模型在Andy Hunt的《程序员思维修炼》一书中有讲到。德雷福斯模型将技术人才的成长分为五个阶段,简要介绍下。

阶段一:新手 ,< 10%

新手在该领域很少或根本没有经验

新手非常在乎他们能否成功。没有太多经验指导他们,不知道自己的行为是对是错

如果给新手提供与情景无关的规则去参照,他们就会变得能干起来

阶段二:高级新手 ,55~60%

他们可以独自尝试任务,但仍难以解决问题

他们想要快速获取信息。他们不想在此刻寻根究底或重新温习一遍基础知识

能够根据过去的经验,逐步在正确的情景中采纳建议,但比较吃力

他们没有全面的理解,而且的确不想有

阶段三:胜任者 , 15%左右

能够建立问题域的概念模型,并有效的使用他们 开始寻求和运用专家的意见,并有效利用 这一水平的人通常被认为“有主动性”和“足智多谋” 既可以指导新手,也不会经常骚扰专家

阶段四:精通者 ,10%左右

需要全局思维。他们将围绕这个技术,寻找并想了解更大的概念框架

他们能够纠正以往不好的工作表现,自我改进开始出现

他们会学习别人的经验

拥有理解和运用各样经验之谈的能力。这些经验之谈,是可以应用于当前情景的基本原理

有足够的经验,知道下一步会发生什么,如果没有发生又需要改变什么

可以有效的运用软件模式

可以充分利用思考和反馈

阶段五:专家 , 2 ~ 5%

他们有丰富的经验,可以在恰当的情景中选取和应用这些经验

专家根据直觉工作,而不需要理由

专家知道哪些是无关紧要的细节,哪些是非常重要的细节

我说的12个阶段,可以和德雷福斯模型的5个阶段关联起来:

新手:1 ~ 6

高级新手:7 ~ 8

胜任者:9

精通者:10 ~ 11

专家:12

如果我们想一直走技术路线,那德雷福斯模型和我总结的12个阶段,是很有价值的参考。努力成为少数的20%吧!

如果还想在职场有技术之外的发展,可能要参考——软件架构师的金字塔能力模型——了:

这个模型来自《软件架构师的12项修炼》,不过,像关系技能、个人技能和商务技能,并不是软件架构师的专享,任何想要更好发展的人,都应该修炼。

是不是感到修炼的路很长?

别怕,这条路,是可以一步一步走过来的,最重要的,是要有方法,要持续行动。所以,现在开始,好好利用自己的时间吧!

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:福斯  福斯词条  德雷  德雷词条  程序员  程序员词条  模型  模型词条  层次  层次词条  
攻略

 在求职面试需要注意的几个事项

在求职求职面试时,大多数求职面试考官会要求应聘者做一个自我介绍,一方面以此了解应聘者的大概情况,另一方面考察应聘者的口才、应变和心理承受、逻辑思维等能力。千万不...(展开)