1998年互联网崛起,程序人奋勇前行;If,程序基本逻辑,开启程序人生[if98];谨以此站献给奋斗中的你

发表文章 上传软件
当前位置: 主页 > 程序人生 > 学习心得 >

做博士还是做一个专业的程序员?收藏挑错

2018-07-17 11:49 采编:程序人生 阅读 投稿赚币
当我从大学毕业获得计算机科学学位的时候,我就想继续学习并获得博士学位。但是,我又想作为一个软件开发者去参与工作,所以我在这一行中工作了五年之后,又回去念了一年的博

当我从大学毕业获得计算机科学学位的时候,我就想继续学习并获得博士学位。但是,我又想作为一个软件开发者去参与工作,所以我在这一行中工作了五年之后,又回去念了一年的博士学位,在作为博士生的一年时间里,我发觉我更喜欢专业的软件开发。尽管这已经是多年以前的事情,但我觉得这里面我学到的一些经验现在仍然适用。

为什么要取得博士学位?

喜爱学习。我享受于学习计算机科学的每一分钟。我一直都很喜欢数学和电脑,并且我在查尔姆斯理工大学的硕士课程就包括了大量的数学课程和计算机课程(软件和硬件),以及常见的工程课程例如物理和力学。有这么多出色和聪明的理念:拉普拉斯变换,控制理论,信号处理,纠错码,堆排序,排队论,等等。因为所有这些学习的东西是如此有趣,因此为了能继续了解这样有趣的内容,我觉得我有必要继续去念博士。

别人会认为你很聪明。想去做博士的另一个原因做是为了显示自己有多聪明。在现代薪资体系中,学历是收入的另一个标准(尽管你需要花费数年才能获得博士学位)。

博士学位的具体情况

在用了五年时间为移动电话交换机开发软件之后,我决定是时候回去深造了,于是我去了瑞典隆德大学的通信系统系开始我的博士学位。他们的其中一个研究领域是拥塞控制算法,这很适合我,因为它适用于电信系统的同时大量应用了数学。他们也搞软件开发研究,这是额外的加分点。

除了回顾一些数学和排队理论,和上博士学位的课程外,我不得不决定研究方向。由于目的是发布结果,那么主题必须是尚未被研究过的。但是这里的问题是,没人期待结果如何(至少据我所知是这样的)。我结束了在分布式系统的研究,包括一些模拟。但是,我的感觉是,我研究问题在某种程度上是为了有内容可发表。

博士工作的第三部分(除了上课和研究之外)是教学。虽然我只是排队论课程的助教,但它让我意识到在大学任教需要花费多少的时间和精力。

在瑞典,你是被大学录用来做博士的,因此学校会支付你薪水。这听上去挺不错,但并不如你在行业中工作得到的多。在其他方面,我又回去做了一次学生。虽然当我在念硕士的时候我真的很喜欢做学生,但第二次去做真没多少乐趣。所以在做了一年的博士学生之后,我决定这不适合我,于是又回到了爱立信工作,担任一名软件开发人员。主要的原因是我觉得我的工作变成了编造问题,而不是工作于真正需要解决的问题,以及还有薪资更低,又被当作了一个学生,当然最重要的是软件开发比我在念博士期间做的程序有趣得多了。

我学到的经验教训

你没有必要成为学生的身份去学习。这是我最明显的教训,而且令人难以置信的是,我花了这么久的时间才明白这一点。在回到大学之前,我以为这里才是“真正”学习的地方。在之前我工作的五年时间里,总的说来,我并没有花多少时间来学习更多有关软件开发的内容:我学习了我使用的语言和工具,但仅此而已。

在做博士期间,我买了一本《Code Complete》,是它使我睁开了蒙蔽的双眼,让我意识到有多少学习软件开发的途径。它不仅有很多研究的例子、关于编程各个方面的调查,而且它还有关于软件开发很长一串的参考书单。这使我意识到,即使你不去上大学的课程,也可以保持不断地学习。

现在,许多年以后,得益于如Coursera和EDX这样的MOOC供应商,你甚至可以在业余时间攻读实际的大学课程。我抓住了这个机会,接受了第一批中的一门课程,“Introduction to Databases”,以及其他。

博士学位不会让你变得聪明。虽然的确有很多的聪明人获得了博士学位,但也有很多很多的聪明人并不具有博士学位。于是我意识到,是不是博士并不是聪不聪明的标记。同样的,能不能相出巧妙的点子和是不是博士无关。

变得泯然于众。我发现当我带着博士头衔和其他人接触的时候,我变得非常谦逊。也就是说,我还不如以前能给人留下深刻的印象。我试图不论学历地来评估一个人。我合作过也见过形形色色的人,聪明的和没那么聪明的,聪明和学位不相关。

狭窄化的问题vs.大范围的问题。研究人员通常研究那种很窄的问题。例如:给定某个到达分布和良好准则,那么最优的拥塞控制策略是什么?虽然这些都是要学习和理解的重要内容,但是我更感兴趣那些大范围的“是什么导致软件成功”的问题。以电话交换机为例,为了成功,它必须在很多方面都执行良好。它必须有足够的能力,但是不能崩溃,它必须很容易配置,它必须很易于寻找故障,等等。拥塞控制只是众多问题中的一部分,只给出这个问题的解决方案是不够的。

我意识到我更享受工作于大型软件系统所要面对的挑战,即必须每个方面都做到位,而不是研究一个很窄的细节性问题。

拥有用户的快感。当我启动博士程序的时候,我才发现有用户的重要性。研究于我自己选择的问题,而没有任何人热切地等待着结果,真的让人特别提不起劲,相比之下,工作在有着许许多多用户的系统上,那就别提有多兴奋了。我添加的功能和我修复的bug将对很多人产生直接的影响,我真的很怀念那样的感觉。

 

选择的价值。由于我在开始博士之前已经工作过一段时间了,所以我知道选择是什么。我的意思是,大多数人在拿到硕士学位之后立即去读博士,意味着,他们不知道非学术界的工作是什么样子的。在大多数情况下这可能无所谓,但有时知道你错过了什么很重要。

结论

我很高兴我尝试过做过博士,但我也很高兴,我在一年后选择了离开。做一个专业的软件开发人员让我更有幸福感。而且,我很高兴这并不意味着学习的结束。与此相反,我依然可以学习很多有趣的领域,并且有大量的学习资源可用

相关标签:
程序人生if98.com,专注IT人成长、所需、职场,欢迎参与撰稿、分享资源!

扫一扫关注程序人生公众号

免责声明:本文内容由[程序人生]用户自行发布或编辑转载,本站不拥有所有权、不承担相关法律责任。 如发现有涉嫌抄袭的内容,可邮件 web@if98.com 举报,并提供证据,一经查实,本站将立刻删除涉嫌侵权内容。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

站长推荐dedecms模板

站长推荐资源下载

站长推荐文章

  • 我的编程之路:从好玩到玩好

    先解释下标题吧:好玩指的是爱好、觉得有趣,玩好指的是把事情搞定、让事物变得更好。 第一次接触电脑 我最早接触电脑是小学四年级的时候,一九九几年,那是一个秋天,有一位

    if98comzyq 2018-06-19 17:39:52发布 学习心得 298阅读 0 评论

  • 给未来程序员的15个顶级职业建议

    好吧,我觉得10条不够,应该有15条职业建议。不过首先,我想解释一下出色的职业生涯是什么样的。 他们的进步曲线并不是每个月都会上升一点的直线图形。(即便是普通人的职业生

    if98comzyq 2018-07-17 11:46:44发布 学习心得 276阅读 0 评论

  • 程序员你为什么迷茫?

    你曾经充满热情,是一位开源软件倡导者,你崇尚全栈工程师才有未来的理念,你渴望改变世界。但是现在你每天都处于焦虑之中,你每天不断地学习各种技术Kotlin、Swift、React Native、

    if98comzyq 2018-06-19 17:30:21发布 学习心得 165阅读 0 评论

  • 如何伪装成一个年薪20万刀以上的码农?

    年轻的程序猿朋友们,从东岸、中部、南加迁徙到硅谷的你,是否希望远处的美女向你投来崇拜的目光?希望身边的朋友觉得你很酷很牛逼?今天我们来聊聊如何在硅谷装成一个牛逼(

    if98comzyq 2018-07-17 11:47:09发布 学习心得 126阅读 0 评论

  • 程序员的工作总结

    在新的公司工作半年了时间飞逝,作为一名工程师,也要时刻对自己反省,这样才能够有所提升,在工作中我总结了一下几点,这个可能也是大家常见的一些问题,好记性不如烂笔头,

    if98comhcw 2018-06-13 11:59:41发布 学习心得 96阅读 0 评论

  • 做博士还是做一个专业的程序员?

    当我从大学毕业获得计算机科学学位的时候,我就想继续学习并获得博士学位。但是,我又想作为一个软件开发者去参与工作,所以我在这一行中工作了五年之后,又回去念了一年的博

    if98comzyq 2018-07-17 11:49:03发布 学习心得 94阅读 4 评论

论坛推荐

关于我们

微信公众号

扫码关注官方微信

返回顶部