我现在在Facebook做Software Engineer,也有三年了,之前是在美国读了计算机的研究生,做过Research,研究了Machine Learning,跟着Justin导师做了一个CV项目,关于人脸识别的,前端后端也都做过一些项目,最终还是选择了SDE,因为觉得最适合自己,我是一个对什么都有兴趣,但又不太喜欢单调的生活的人。来说说我觉得我觉得如何找到自己适合的职业/方向吧。
第一个我觉得需要了解计算机的几个分类,每个分类都是做什么的,然后需要哪些技术。
比如我找出的计算机的几个比较热门的职业:Software Development Engineer,啥都干。还有比较细的,Front end/Back end developer主要负责前端和后端的开发,Research Engineer,偏向于实验研究类,还有Data Science/Data Analyst主要负责数据类。之后搜集一些资料对比:
像我这种比较现实肤浅的人,就去看了薪资。总体来说薪资上Software Engineer是最高的,Data Science相对比较低,Front End也是相对比较低。如果想要做第一个就需要各种技能都掌握,万金油的感觉。像Front End就是HTML, CSS,现在的React等。究其原因,就是技术难度大的薪资越高。总体说,就是难度越大,薪资越高。当然不一定要挑出最挣钱的,毕竟CS就来钱挺快的。
之后就是找到适合你的。有人说找专业就像找另一半,有时候你喜欢的不一定是适合你的,有时候你擅长的不一定是你喜欢的。那么,如果找出你喜欢而且适合的呢?我觉得没有特殊的方法,就是试。我是从大一开始就接触不同的领域,比如找Professor做Research,自己设计APP,然后加了一个社团研究Meachine Learning。慢慢我也不不了解到了了解。最后我发现做Research需要心静,而且很长时间可能都没有成果,但还需要不断地试错,调试你的模型,记录不同的参数。不是很适合我这种喜欢闹腾,喜欢创新的人。然后Machine Learning也有些类似,我发现自己并不喜欢调试模型,而且各种linear model和non linear model乃至LSTM这些更复杂的模型我都不太喜欢深究。然后我又看了看自己排的乱七八糟差点砸了电脑的HTML文