个人的想法分享一下,不过个人经历比较特殊,不太适合复制,看看就好
1. 做 side project 还是要做自己有兴趣的,不然做出来的东西半吊子,
也没兴致一直去维护。有兴趣的领域才有动力一直精进。
2. side project 做到有口碑,说实在也就是拓展潜在雇主。
有口碑,有缺相关人才的时候会先想到你。但这不代表不用基本功,
也不代表不用面试,毕竟还是要透过面试了解你到底做了什么,会什么,
个性和工作态度如何,适不适合这个团队。
3. 至于刷题,个人觉得只是重新熟悉那种模式还有练一下手感。
不然题目根本刷不完,而且如果是要面专业领域的东西,
范围广到连翻教科书复习都有困难。
我自己的例子是大学之前就喜欢弄机房,做系统管理,后来学长毕业手上有
工读的职位要找人接手,也是问我有没有兴趣弄。接的东西也是有系统管理
或是 Linux 套件整合之类的。毕业之后也是因为有点名声,系上学长当时
公司需要有人有相关经历去帮忙做机房、系统管理跟自动化,但是去也是面
了一轮四个人一整个下午,谈 offer 也是被老板问得答不出话来XD
后来找了第二个兴趣,业余做嵌入式 Linux kernel 开发,也是做到在社群
里有点口碑,有人把小案子丢过来给我做,不管是开发板的 bring up ,或
是维护下游 kernel 。然后也是变成现在的主要职业了。这个是我自己找的
就是了,但是相关经验不管是在职缺媒合或是专业领域面试上都满有帮助的
。然后依然是要面试。就算对方非常需要 "你这类的人才" ,最少也是见面
谈谈是不是真的懂相关领域,适不适合,目标有没有一致。
(不过换这份工作之后曾经有朋友来找,那个不知道要不要面试XD)
附带说,做 side project 过程中 "读过" 的程式码应该远超过 "写出来"
的程式码的量。我没有特别爱写程式,能重复利用的都会尽量找来用。
大概就这样吧