开门见山 - CS专业选课的第一原则就是以就业为导向!
在这里我们围绕几个潜在的就业方向提出一些建议:
- Software Development Engineer
- Machine Learning Engineer
- Data Scientist
- Data/Business Analyst
- Product Manager
1. Software Development Engineer(SDE)
SDE 面试第一轮往往考察的是算法与数据结构,因此data structure and algorithm与object oriented programming是重中之重。此外,作为一枚SDE,你需要了解如何实现进程/内存/文件管理,所以operating system必不可少;你需要知道微服务之间如何通信,所以computer network也得掌握;你需要动手存储结构化与半结构化数据,所以database还得好好学。
2. Machine Learning Engineer (MLE)
MLE 的侧重点发生了一些变化 - 首当其中的是machine learning与deep learning的理论基础,这里包括但不限于有监督与无监督算法,梯度下降与反向传播,etc;另一门尤为重要的课程是big data,当你每天面对大量的数据(PB级别),你需要学习如何用分布式计算与存储框架来解决问题,比如Spark和Hadoop;最后,因为MLE仍然是engineer,所以对不起,SDE会的你都得了解。
3. Data Scientist (DS)
首先说明一下现在的DS行业非常的卷,如果不是MSc/PhD学历,慎选。DS做的工作如果用两个字来描述,那就是建模。因为需要扎实的数学理论基础,所以probabilty and statistics请争取拿A。Data mining课程涵盖了机器学习算法以及大数据相关的开源框架;最后也是最为重要的一点,我们非常建议有意从事DS工作的同学选修一门seminar课程,具体来说就是读一读优秀的论文,做一个科研项目,最后撰写论文甚至是发表在顶级会议或期刊。对于DS这个岗位来说,出色的研究能力将会是大大的加分项。
下次我们会详细聊聊Data/Business Analyst以及Product Manager所需的技能以及应修的课程。
咨询 Alpha 小助手,获取更多课业帮助。