看到几乎都在说算法,说说我个人的感觉。
1. 如果一定要做CS,方向不是只有开发和算法能概括的,开发包含很多领域。
2. 研究生期间认真学习,就找工作而言哪个方向都能找到好的……
3. 我觉得选方向还是首先考虑 兴趣+能力
看到有些说开发赶不上CS科班的。我觉得大部分CS本科的教学少有深入的,所有方向共同的核心课程更是只有几门。这几门课也没什么真正的难度,理解+记忆+练习(主要是数据结构和算法)都能很快学过。本科的课程设置主要是能让人对各个方向都有个基本了解。感觉更深入的学习是自学,工作和研究生阶段开始学的吧。
楼上说也有说算法的地位和薪水和开发不能比的……我并不十分了解这个行业(如有错误请原谅),感觉大部分所谓算法岗的工作内容是模型微调+数据处理相关吧,也许也需要和业务结合(?)我不知道这个过程有什么高人一等的地方了…… 国内ML职位的平均薪水的确比广义的开发岗位高,似乎这两年有接近的迹象。但也要注意到ML职位的招聘最低标准也是比开发高的,所以普通水平的开发职位和ML职位,我不觉得薪资优势会很大……
当然也要考虑行业的发展,如果做算法,未来深度学习这一套是愈发火爆还是一朝冷清我也不清楚……不管哪个方向都要找到自己不容易被淘汰的竞争力。
说下我个人的经历。我大二结束时兴趣也在AI。AI相关的课程上了数门,去实验室混经验也是做ML相关的(简单工作)。现在研究生的课程方向也是以AI为主,当然我尽力选了偏system的课。直到大四我才慢慢感受到对ML的兴趣并不是很大了,更想做system的工作。所以秋招选择回国做infra的工作。
都是个人的感觉,希望楼主根据自己的情况考虑。