不是资科毕业却又想当工程师?这有4个超实用建议

不是资科毕业却又想当工程师?这有4个超实用建议

本週的读者提问是「一个非电脑科学背景的人,如何应徵软体工程师?」。这是一个好问题,儘管我有两个电脑科学学位,但我在自己写的《Developer Hegemony》书中曾怀疑在学费昂贵大学唸电脑科学的投资报酬率不一定就好,也不一定会跟有志成为工程师的人推荐这条路。

好,所以如果你没有获得学位,那该怎幺做?下面是读者原文。

「如何在没有电脑科学学位的情况下,获得一份工程师职缺?我到现在看到所有的入门级职缺都明定需要相关科系毕业。网路或其他地方也只有教你要看书、要会写程式,但这些我都会啦。现在我在哪里找工作?我没有看到任何入门级职缺不需要电脑科学学位的。」

首先要思考:为什幺公司不开这种不需要学位的缺?

你可能会认为公司起码在面试会给你一个合理的解释。你跟他们说你会写程式,甚至可以上机考或回答更多细节证明你会,这就不是面试的目的吗?证明你真的会?难道市场上工程师供不应求是假的吗?

这点在宏观经济面上没错,但到了任何一家公司的实际运作面就有差了。在这网路化时代任何公司都比以前更需要工程师,而且理论上应该在面试过程中提供面试者证明自己的机会。

但更重要的是:这些公司比起拥抱机会,更怕找错人进了公司。

装逼人才伤害最深

坦白说,「陌生面试」是 徵才最可怕的一种方式 。一群不认识的人坐在一起大眼瞪小眼,理想中他们看似彼此慷慨地坦诚相见,不会在技术层面上彼此上下交相贼,然后再由直觉、冲动和其他各种非科学事物决定要不要用这个人。

而且某种程度上所有公司就算自知不可能每次 100% 都找到完美人选,但他们还是会尽量表现出自己做最会用人的模样,所以他们会偶尔会尝试一下,然后不小心聘到一个外表光鲜亮丽的非典人才。

聘到这种人很惨。所以每间公司的面试流程都会尽量制式化,来把这种机率降到最低。如果你面试的人写着有十年工作经验,还压着两个「高阶软体工程师」头衔的人,你怎幺验证?这相对简单,但如果你要的是不用什幺经验的初阶工程师呢?如果他真的没经验又没学位,最后还真的是个装逼仔,那蠢的反而就是你。

所以这篇文章就在教你怎幺在缺乏学位的状况下获得职缺,并在别人眼中是个好选择而不是装逼仔。

1. 从贡献开源社群开始

最简单的第一步,就去 Github 找个开源案子参与进去,案子可是一大堆,取之不尽。

为了这个目的,你应该在互动中表现你的编码能力与观点,而且关键是向未来的雇主证明这一点,所以你这些互动应该公开,让所有人都可以看到。

但我还会在这边下一点功夫。当你开始为开源案做出贡献时,选择一些你认为可能在求职中最有影响的部分。这是一个来自你想应徵的公司里员工一起做的活跃案子吗?你想去哪些公司工作?如果你跟他们一起工作并结交这些人,他们就很可能在求职中发挥关键作用。

所以赶快去参与跟你想去的公司有关的开源案吧,然后向他们证明你会什幺。

2. 做出一个有潜力的专案

儘管它可能更累,这是另一招有效的社群证明。你可以自己建一个有用的专案,而不是单纯为其他人专案做出贡献。

这绝对会花你更多时间与心血,只是要注意如果你建的是一个没有人注意或关心的专案,最后也可能无功而返。在 Github 写了一些代码还不足以让潜在雇主主动去挖掘它。

但如果你作出了一些大家会想去开始下载和使用的东西,那事情就不一样了。我还建议你要为其他开发者额外再做一些东西,例如某种 API、资料库或开发者专用的产品。这是你让你最想留下印象的人注意你的最好机会。

3. 写部落格

另一种可供选择的方式是去写某种跟程式码技术有关的部落格。你可以考虑写专案或开源案贡献力量的同时,也写部落格来分享这方面的经验。也许你可以写一些有关小技巧或深入研究技术与框架的文章。

无论如何,这会为你提供一些社群的可信力。但就跟写 APP 或资料库一样,这会是一个花你更久时间的过程。很少面试官会说「没有学位或经验没关係,你部落格写得不错所以就进来吧。」但是,如果你能有效散布你的文章,并开始获得一些粉丝和影响力,就可能在某些关键时刻,从技术社群获得正面评价。

4. 找一个跟写程式相关的职缺先卡位

前面三个作法都需要长时间经营,透过社群来帮助证明的能力,而且需要几个月的时间才能也所回报。

但第四招会更快、更确实一点。你可以应徵一个你认为可以让你转职为工程师的非编程工作。我第一份工作在技术上名为「软体测试工程师」但其实就是测试员,只是过了大概一年,公司就把我的头衔改为软体工程师。

以下是可能适用这招的几种职缺。

我很难在这给出一份详尽清单或特定职缺,因为每间公司实际上的状况会有很大差异。但你应该懂了,扩大你搜索工作的範围,方便作为你的跳板让你成为工程师更近一点。

5. 报一间电脑培训班

这是「尽一切努力都失败」后的最后一招。如果你没有时间花在前三招经营社群的部分,也找不到相关的职缺可以卡位,那试着报名一间电脑技能培训班。

对,如果你一开始就会写程式的话,这招会伤了你的自尊心,但也能让你在一定程度上可以验证之前所学的内容。

你也可以换个方向,选择一个你没学过的语言去并扩展你的能力。然后当你毕业后,就会在履历中获得认证,以及相关在工作资源部分的帮助。

但这是关係问题,而不是工作能力问题

没有学位或相关经验确实不容易应徵上工程师,因为这些公司都是利益导向,越让其他公司承担越多的新手风险越好。所以关键是让自己在他们眼中这种新手风险越少越好。

本文讲了这幺多。但是其实这一切都归结为「关係」。你会写程式,但不代表那些公司就要相信你。学位或过去工作经验可以证明你的能力,但你没有。所以你需要主动去证明,并那些可能会推荐或以某种形式为你担保的人建立关係。

你越早开始建立这种人际关係,你就会越早被聘为工程师。

相关推荐