海洋饼干

我对编程培训机构毕业生的建议

原文链接: thinkfaster.co

原文作者 罗斯-威廉姆森 2018/02/08

在文章开头我要声明一点: 我是100%的编程培训机构毕业生。我认为这个想法非常棒,甚至比你日后学习生涯中得到的CS文凭更有意义。为了文凭你必须花一大笔钱,还要在校园待上4年。

培训机构要求的时间更短,当然价格也更便宜。假设你完成一个6个月的课程,那么相当于学习了与本科课程相当的知识量。而且你无需担心大学里那些必须完成的非专业课。

假如你离开了大学,正为文凭的含金量担忧,又或者你没有大学经历,那么培训机构是值得考虑的选择。

这么说吧,我也是一个web团队的招聘主管,而且最近几年一直在招聘。线上面试我们会让应聘者在白板上解决某个情境下的问题,做算法复杂度分析,并向我们展示他们的代码技巧。

你可以吐槽我们的面试流程有漏洞,任何人都可以,可这不是文章的主要内容。目前我们没有更好的招聘方式,我也没有试图重新打造招聘流程。我只是单纯地讲述所经历的事实。

我们同样乐于招聘初级开发者,无论是刚毕业的大学生还是培训机构的毕业生。

我认识到培训机构毕业生的问题是欠缺算法复杂度分析能力。我的一个朋友曾在一个很大的培训机构学习,他告诉我课程中他们只有一周时间学习算法复杂度。他们甚至没有时间深入了解相关知识。

我理解开发者在工作中很少有机会必须去分析代码,有些人会认为这更偏向于学术领域。可如果你说不出O(n)和O(n2)的区别,这就有些麻烦了了。假如你无法完成这个问题,我们接下来会考察你的代码技巧以及解决问题的能力。然后我们会评估你能否应对日常开发会遇到的更高难度的工程问题(尽管你之前的表现让我们的评估有些勉强)。

在工程师招聘流程中,我们了解到编程科班出身毕业生的一些特点。综合来看,这些学生在招聘中表现更优秀,无论是解决问题的能力还是算法复杂度分析能力都还不错。

但我并不认为这是关键所在。

一个培训机构毕业生完全可以与CS专业毕业生媲美,前提是他需要额外学习以下课程:

  1. 数据结构与算法
  2. 概率统计

你可以很容易地从社区大学或者在线课程中用最少的钱获取这些知识。

现在我意识到大部分人想要找到工作,甚至想立刻把offer拿到手。你可能必须放弃工作才能抽出时间学习培训机构的课程,毕竟6个月没有收入可不轻松。假如你又额外学习了以上的两门课程,你面临的压力会更大。

因此,尽量找到一份编程的工作,然后在工作之余学习这两门课程,这看起来比较可行。当然,这里的假设是你想得到一份通常更青睐CS毕业生的工作。如果你不在乎也没有任何问题。

另外,一旦你学习了这两门课程,请确保把你的学习经历写入简历。我们乐于见到持续学习的人,而那些有资源和动力去坚持学习额外课程的人注定会受到青睐。

我只是告诉你像我一样的招聘者寻找的是什么,而且我和很多持有相同观点的招聘者都有过沟通。

从培训机构毕业后你当然可以找到编程的工作,可如果你想拥有在IT市场自由跳槽的能力,你必须拥有以上的基础技能。

我仍然认为培训课程是个很棒的想法。我们需要开发者,非常需要,我认为对于想尝试新职业的人来说这值得尝试。而他们只需要在达到能媲美CS专业毕业生的水平之前小小地付出一下。

照片来源:KoiQuestion