女孩,大陆籍,准备选择Rose-Hulman理工学院,第一专业需要在生物/化学/生物化学中选一个,想选生物化学,可double第二专业,是不是可以考虑计算机科学专业或者数据科学专业,更推荐哪个?CS是不是本科就可以找实习就业,若是数据科学是不是还是需要考研?
我看了一下,Rose-Hulman的第二专业可以选的是computational science,而不是computer science,这两个还是有很大区别的。Computational Science是用计算机来解决科学问题,重数学和科学建模,而Computer Science是研究计算机本身,重编程、算法、系统设计。学computational science毕业后是否可以做软件工程师?是可以的,但要注意行业预期偏差。雇主可能会默认你是做科学仿真、数值模拟的,而不是做商业软件开发。而且软件工程技术面主要考的是数据结构、算法、系统设计,而不是数值仿真。所以如果想转向传统软件开发,还需要自己额外补刷cs方向技能和项目经历。
这两个major怎么选?首先看一下对能力要求。Computational science对数学要求非常高(尤其偏微分方程、线性代数、数值优化、有限元方法);Data Science对数学要求中高(以概率推断、统计建模、回归分析、基础机器学习为主)。这方面可以根据自己对数学硬度的接受程度来决定。
接下来看职业目标。Rose-Hulman学生一般以本科毕业直接就业为主。毕业后想做software engineer(SDE),可以选computational science, 岗位数量多,工资高,对国际学生也友好。毕业后想做data analyst / data scientist,可以选DS,但近几年DS竞争变得很卷,岗位数量少,入门门槛抬高。
如果考虑读研究生,选专业要看申请方向。如果申请computational biology方向(偏生物物理建模、分子模拟),建议computational science。如果申请biomedical informatics、生物统计(偏医疗大数据、健康ai),建议data science。
关于CS是不是本科就可以实习和就业,数据科学是不是需要考研,从目前大家的观察来看,确实有这样的倾向,但一刀切的结论需要谨慎,理解背后的机制和细节更重要。首先,谈到就业,必须拆成两方面看,一是岗位数量,二是岗位竞争程度(申请人数和申请质量)。岗位数量来看,CS相关岗位数量远远大于DS。我在前几周答疑中也提到,h1b办理数量上,CS相关的占比远高于DS岗位。这直接说明SDE岗位的绝对基数更大,给国际生空间更宽。再看申请人数和竞争程度。两边申请人数都很多,但申请CS岗位的门槛更高。SDE岗位一般默认你得有正统的CS训练。而DS岗位(特别是entry level)相比而言,对背景更包容,因为DS作为职业本身起步晚(10年前根本没有这么标准化),岗位名称和职能超级多样(data scientist, data analyst, machine learning engineer, data engineer...全混在一起),很多不是CS科班出身的人,也能转行过来。但是这种“包容性”反过来也导致了极度拥挤。近几年DS方向的本科和硕士项目爆炸式开设(尤其是硕士),大量“科班”选手涌入。同时,大量其他专业的人也自学数据技能来抢DS岗位。结果就是DS entry level岗位申请人数疯狂膨胀,远超岗位增长速度。
那么HR面对海量简历,最简单办法就是用学历作为一刀切硬筛。本科DS vs 硕士DS,一刷就刷掉一堆本科生。本科CS vs 硕士CS,情况没那么极端 ,一方面岗位更多,另一方面更注重技术面表现。
如果单从“找到一份工作”的短期角度来看,本科CS直接就业比DS更容易。但如果看长期职业成长,尤其是在DS轨道(想做更核心的data scientist / ml engineer / ai researcher),硕士学历基本是必要的。同样适用于CS,长期来看,CS master不是必须,但是潜在加分项。如果想做更硬核方向(比如ai/robotics/security/r&d engineer),硕士很有用,因为你可以上更高级的课,有机会做更有分量的项目/研究。而且有一些advanced岗位明确标注preferred master's degree。