学徒程序员:兼谈德国的教育体系

开发 项目管理
这套体系在德国有很长的历史。木匠和很多其他工匠都有自己的学徒体系来传授技术和经验,这一习俗传承了数百年。其中心思想在于,有些职业的成功,更多的是靠经验技能而非理论认知,因此对于这些职业,教育时间应该用在实际动手上,而非只是看和听。

十六岁那年,我辍学了。学校不适合我。对我来说,计算机要有趣得多。不论对错,我都觉得在学校里是浪费时间,我真正的教育是回到家后才开始的。我对于学校再无好感,这意味着我也不再花心思去学习。他们把我诊断为某种学习障碍,并开始对我进行治疗。我只想逃得远远的。

我决定辍学,去当学徒程序员。这在北美人看来是个愚蠢的决定,因为他们都是去大学获取计算机科学的学位,但是在德国,高中辍学去当学徒是一件很正常的事。人们称之为双重教育体系,可能这正是德国获得成功的主要原因之一。

apprentice

这套体系在德国有很长的历史。木匠和很多其他工匠都有自己的学徒体系来传授技术和经验,这一习俗传承了数百年。其中心思想在于,有些职业的成功,更多的是靠经验技能而非理论认知,因此对于这些职业,教育时间应该用在实际动手上,而非只是看和听。

许多德国的公司都招收学徒,就像北美公司招收实习生一样。如果有公司收你为学徒,那么这个位置是受国家保障的。如果这家公司倒闭了,你第二天就会被安排到另一家公司。公司之间结成一张网,确保这个位置的存在,这张网遍布全国。

与北美公司的实习生不同,在德国,学徒是被视作正式初级员工对待的,只不过工资更少一些(我当时是每月 400 美元),且每年有 60 天不用上班,去职业学校上课。职业学校会传授学生所选工种的理论知识,3 年学习期满考试合格后发给证书。顺利完成整个过程的学生学徒会获得职业资格。

我进入了本地一家名为 BOG Koblenz 的公司,它是西门子的子企业,有着招收学徒的传统。我至今还清楚地记得面试时的一道题:

“一个池塘中的百合花每天都以翻倍的速度增长。第一天是 1 朵,第二天 2 朵,第三天 4 朵,第四天 8 朵,第五天 16 朵,第六天 32 朵,依此类推。如果第三十天的时候,池塘装满了百合花,那么第几天的时候,池塘里有一半都是百合花?”

一点都不难。

和我一起开始当学徒的还有三个人。第一天我们参观了这家 150 人的公司,这个规模对于当时的我而言已经很大了。第一年我们干了不少活:头 3 个月在餐厅,然后 3 个月帮忙记账,再 3 个月待在仓库里,最后 3 个月在前台接待。他们告诉我们,这是通过仪式。

在餐厅的 3 个月里,我很快认识了公司里的人,并知道了他们喜欢喝哪种咖啡或茶。我把他们都招待得好好的。我最喜欢的一个小组在二号楼的地下室里工作。我不记得他们的头衔是什么了,但他们肯定是在进行一项秘密开发工作。

他们和公司里其他人做的事情完全不一样。公司里大部分人都用一种名为 Rosie SQL 的深奥的编程环境,那东西对我而言就像天书。而这个小组的人用的是 Delphi。我爱 Delphi!它是把人放在机器之上的编程语言。它能让程序员快速实验、做出原型,并获得满足感。它的名为 VCL 的窗口管理库比我以前见过的任何东西都要伟大。更重要的是,小组的头头是 Jürgen。

Jürgen留着花白的长发,50 多岁,摇滚乐迷,非常适合去参加地狱天使帮派(译者注:美国以骑哈雷摩托横冲直撞而闻名的团体)。他是一个反叛者。他拒绝穿公司的制服,拒绝使用正式的语言,常用馊点子公开召集别人。尽管如此,每个人都很尊敬他。我努力表现出想为他工作的意愿。我借来了 Delphi 的手册,并在送咖啡的间隙努力学习。

与此同时,我每周五都去职业学校上课,每年有两次,我们要在学校待两个星期上课并参加考试。这种学习的方式更适合我。它与工作紧密相关。我跟着 Jürgen 的小组学到了很多基础的东西。我们学习了算法、Big O等,甚至还学了点基础的焊接和电工。

事实证明,所谓的学习障碍并不存在,我只是需要动手实践。我无法理解那些没有解决过的问题,更无法给出答案。在职业学校,我了解那些正在解决的问题,我有过亲身经历。这种感觉棒极了!我的自尊和自信很快得到了增强。

第一年结束后,Jürgen把我抽调到他的地下室小组。这大概是我职业生涯中最重要的一件事情。Jürgen 是一位大师级的老师。在他创造的环境里,可以很轻松地逐年实现 10 年的职业发展。那是我在 Shopify 努力想要创造的一种环境。

大多数时候,当我上班时,会发现一张打印了我前一天写的代码的纸,上面到处都是用红色记号笔做的标注。我用语不当的地方,有更好抽象可选的地方,以及本来能够做得更好的地方都被标出来了。他教会了我不要把自尊与自己写的代码搅和在一起。代码总是有需要改进的地方,能够得到反馈是一种礼物。

我还记得我们为通用公司写过软件。一个车商需要一套快速的系统来估算回收的二手车的价值。这是一个不小的挑战。Jürgen 把这个项目交给了我。快到要交货的时候了,公司专门出钱给我置办了一身西装。毕竟我们是为西门子工作的。

车商所在地离我们有一天的车程。出发的前一天,Jürgen 若无其事地跟我说,他临时有别的事情,不和我一起去了,我得一个人去交货。我感到不知所措,但最终还是努力给客户留下了好的印象,把一切都搞定了。

这种事后来时有发生。Jürgen 知道我的能力范围,并不时制造一些适当超出范围的情况。我通过尝试、犯错和实践增强了能力,很快就能够把职业学校学到的理论付诸实践。我成功了。

我的学位在北美不受承认,因此我在这里只是个高中辍学生。我在 Shopify 的合伙人拥有博士学位,因此我们经常开玩笑说我们的平均水平是本科毕业生。

但学位不重要。重要的是经验。那是我的学徒经历和双重教育体系教给我的:实践并快速地学习才是人生的终极技巧。如果你能做到,你就能不断制造奇迹,最终获得成功。

或许学徒经历对我而言,最重要的就是给了我一个领先的机遇。如果我也去上大学为了博士头衔而奋斗,也许现在我才刚刚走出学校。而实际上,我今年 32 岁,却已经有了 16 年开发复杂软件的经验。

感谢德国的双重教育体系,它让每个学生都能人尽其才。根据最近的一次统计,目前德国共有 356 种不同的职业可以招收学徒。从美发师到烤炉工,以及各种计算机编程专业。对于像我这样的实践学习者,学徒制度铺就了一条通往成功的道路。

对我而言那是完美的环境。我学到了很多,也很庆幸自己选择了这条路。我希望更多的国家在面对辍学和失业问题的时候,也能为他们的学生提供类似的选择。

(作者 Tobi Lütke 为 Shopify CEO 及联合创始人之一)

英文原文:http://tobi.lutke.com/the-apprentice-programmer

译文链接:http://www.ofgeek.com/2013/03/%E5%AD%A6%E5%BE%92%E7%A8%8B%E5%BA%8F%E5%91%98/

责任编辑:林师授 来源: ofGEEK
相关推荐

2012-07-12 09:31:49

程序员

2009-03-20 10:06:21

程序员PHP职场

2012-04-23 14:14:22

编码质量

2013-05-02 08:57:04

程序员创业

2018-01-23 09:37:59

程序员面试薪资

2013-12-25 09:39:36

程序员代码

2013-08-20 09:33:59

程序员

2015-04-20 09:50:58

程序员

2013-10-25 11:19:18

Google大数据Sanjay Ghem

2015-04-14 11:15:18

程序员创业程序员谈创业

2011-05-13 14:34:02

程序员

2016-04-08 15:17:35

七年阿里程序员

2017-11-14 21:30:15

2012-11-22 14:00:26

程序员

2010-05-12 16:19:32

程序员面试经验

2018-01-02 09:36:55

程序员加薪年终

2019-03-05 14:37:55

程序员加薪老板

2012-03-06 09:22:46

程序员

2015-05-25 09:33:16

程序员Bug

2019-06-18 14:59:43

程序员编程加班
点赞
收藏

51CTO技术栈公众号