UCSD CS75 MSCS 就读体验 求米
2306824
UCSD MSCS 准备要毕业啦,现在来地里分享一下就读体验。
1. 学校周边环境
学校坐落在离SD downtown 20分钟车程的富人区La Jolla。附近环境和治安都非常好,几乎没有什么homeless,就算是半夜出去遛弯感觉也很安全。学校附近5分钟车程以内有ralphs, vons, wholefoods等超市,离学校差不多15分钟车程有两家大华,日常买菜购物也非常方便。学校离海边非常近,甚至可以直接步行走到沙滩。离学校不远的la jolla cove景色非常不错,附近也有很多不错的餐厅。住在学校附近的话,有201,202,30,41几趟公交车可以直达学校,非常方便。
不过由于疫情 + 扩招因素,学校附近的租房非常昂贵(2B 4k +)。研究生住学校宿舍应该是相对划算的选择(一个月1k左右)。
2. 课程设置
UCSD的MSCS课程设置覆盖度还是非常全面的: theory, OS, architecture, AI/ML, PL, bioinformatics, networks, security, database 基本都有cover到。整体课程难度中等偏上,theory/system/architecture方向的课程一般都相对硬核,老师讲课速度比较快,并且要求有本科的对应课程基础。AI/ML最近开的课程比较多(250 series),有一些难度相对中等(比如CSE 255, CSE 256, CSE 258, CSE 250A, CSE251A),可以相对轻松的拿A。
有一点需要注意的是,同一节课不同的老师讲可能难度差别会很大: 比如CSE240A这门课,Tullsen的课程难度就比Zhao的大很多,并且需要很多prerequisite。而Zhao会给你提供很多课程资料和录像供学习,整体课程难度也相对简单,比较适合architecture基础薄弱的同学。
总的来说,UCSD MSCS项目不太适合转码的学生: 老师讲课基本都默认学生有本科对应课程的基础,并且会cover一些advanced topics。如果没有本科科班基础的话,应该会很难跟得上老师讲课/作业的进度。只有少部分intro课程会cover比较基础的内容(比如CSE251A)。虽然研究生可以上本科的课程来补补基础,但是可能会出现选不上课的情况,而且也不是所有的本科课都可以抵研究生的electives。
如果需要找工的话,不建议一学期上太多硬核课程(比如算法 + OS + networking),不然是完全没有时间面试+刷题的。
因为本人master阶段着重找工,所以没有选很多硬课,以下是我选的课程和感受(括号内是老师名字):
CSE 232 principal of database system (yannis): 数据库理论课,cover了诸如query processing/optimization, indexing, transaction management, concurrecy control等内容。课程内容非常dense, 作业难度中等,但是考试难度非常高(需要对数据库有比较深刻的理解,但是感觉在10weeks里面非常难达到这个水平)。虽然我本科上过几门数据库都拿了A,这门课还是拿了B。
CSE 251A intro to ML algorithms (taylor): 入门的ML算法课,介绍了常用的AI算法, 老师讲课比较慢,适合没有什么AI基础的人上。作业和考试难度也是适中,比较好拿A的一门课。
CSE 256 Statistical Natural Language Processing(Nakashole): 入门NLP课程,cover了n-grams, EM,markov models, neural language models等内容,没有考试只有coding作业。老师讲课水平很一般,经常不知所云。但是好在她提供了一些notes,看notes也可以完成作业。
CSE 234 Advanced Analytics and ML Systems (Kumar): 一门主要是读paper,写paper review和概念性quiz/exam的内容。主要是了解各种不同Data/ML System的优缺点和作用。课程比较理论,但是整体难度适中,老师也非常关心学生并且经常解答问题。
CSE 202 Algorithm Design and analysis(Russell): 算法课,主要是cover常见算法和数据结构(graph search, divide and conquer, greedy, dp, parallel algorithm, approximation algorithm)。 作业难度比较大,有些题目自己真的很难想出来需要去TA office hour,并且用Latex写作业也比较花时间(TA真的会看你写的每一个字,包括证明和伪代码),同时也比较看队友(允许5人组队)。这门课还有一个project需要自己design算法来解决某个生活中的问题(可以是某个游戏之类的),但是给分比较松。期末考试难度相对适中并且给了一周时间。
CSE 258 Recommender Systems and Web Mining (Julian): 入门的AI/ML课,整体比较简单比较偏实操,讲了一些ML algorithm 然后讲了如何实现简单的recommender system。作业和project都非常短,并且project 2允许组队。
CSE 250A Prob. Reason & Learning(taylor): 内容是AI背后的概率理论(markov chain, EM, hidden markov models, probabilistic graphical models, approxiamtion/inference)。整体偏理论的一门课,作业大部分是概率/数学题,搭配一些简单的coding。难度中等偏上,需要比较好的数学和概率基础,比较抽象。
CSE 240A computer architecture (zhao): 讲了instruction set architecture, pipelining, pipeline hazards, bypassing, dynamic scheduling, branch prediction, superscalar issue, memory-hierarchy design。作业和考试都比较简单,project是做一个branch predictor,可以实现一些paper里现有的branch predictor。
CSE 232B Database System Implementation(alin): project课,整节课就是做一个xquery/xpath evaluator。没有其他的evaluation。给的test case比较少,需要自己多测测。上课的内容听一听就可以了,很多内容和project没有直接关联。整体难度中等。
3. 就业资源
UCSD MSCS整体就业应该是算不错的,身边的同学大部分都找到了工作,但是学校给学生提供的career fair人均资源非常有限 (career fair人非常多,本人去过两三次career fair, 排了很多队,投递了很多简历,但是没有一份实习/全职是从career fair 拿到的,并且学校几乎没有什么co-op)。现在就业形势不好,但是如果只要有一个不错的实习经历,拿全职面试应该是不难的。如果没有实习经历的话,推荐学校找一些教授的Lab搬砖(可以在real portal/handshake找),发发论文什么的,也可以丰富简历。本人是在SDSC找了一个Lab搬砖了3年(本科 + 研究生),并且发了两篇论文,对后来找大厂实习和全职是很有帮助的。
4. 总结
整体来说,如果你有比较好的CS基础,并且想学一些比较advanced topics, 想做research,推荐UCSD MSCS。如果是转码和纯找工向,UCSD MSCS的workload可能有点太大了,学校人也比较多可能相对会比较卷。
1. 学校周边环境
学校坐落在离SD downtown 20分钟车程的富人区La Jolla。附近环境和治安都非常好,几乎没有什么homeless,就算是半夜出去遛弯感觉也很安全。学校附近5分钟车程以内有ralphs, vons, wholefoods等超市,离学校差不多15分钟车程有两家大华,日常买菜购物也非常方便。学校离海边非常近,甚至可以直接步行走到沙滩。离学校不远的la jolla cove景色非常不错,附近也有很多不错的餐厅。住在学校附近的话,有201,202,30,41几趟公交车可以直达学校,非常方便。
不过由于疫情 + 扩招因素,学校附近的租房非常昂贵(2B 4k +)。研究生住学校宿舍应该是相对划算的选择(一个月1k左右)。
2. 课程设置
UCSD的MSCS课程设置覆盖度还是非常全面的: theory, OS, architecture, AI/ML, PL, bioinformatics, networks, security, database 基本都有cover到。整体课程难度中等偏上,theory/system/architecture方向的课程一般都相对硬核,老师讲课速度比较快,并且要求有本科的对应课程基础。AI/ML最近开的课程比较多(250 series),有一些难度相对中等(比如CSE 255, CSE 256, CSE 258, CSE 250A, CSE251A),可以相对轻松的拿A。
有一点需要注意的是,同一节课不同的老师讲可能难度差别会很大: 比如CSE240A这门课,Tullsen的课程难度就比Zhao的大很多,并且需要很多prerequisite。而Zhao会给你提供很多课程资料和录像供学习,整体课程难度也相对简单,比较适合architecture基础薄弱的同学。
总的来说,UCSD MSCS项目不太适合转码的学生: 老师讲课基本都默认学生有本科对应课程的基础,并且会cover一些advanced topics。如果没有本科科班基础的话,应该会很难跟得上老师讲课/作业的进度。只有少部分intro课程会cover比较基础的内容(比如CSE251A)。虽然研究生可以上本科的课程来补补基础,但是可能会出现选不上课的情况,而且也不是所有的本科课都可以抵研究生的electives。
如果需要找工的话,不建议一学期上太多硬核课程(比如算法 + OS + networking),不然是完全没有时间面试+刷题的。
因为本人master阶段着重找工,所以没有选很多硬课,以下是我选的课程和感受(括号内是老师名字):
CSE 232 principal of database system (yannis): 数据库理论课,cover了诸如query processing/optimization, indexing, transaction management, concurrecy control等内容。课程内容非常dense, 作业难度中等,但是考试难度非常高(需要对数据库有比较深刻的理解,但是感觉在10weeks里面非常难达到这个水平)。虽然我本科上过几门数据库都拿了A,这门课还是拿了B。
CSE 251A intro to ML algorithms (taylor): 入门的ML算法课,介绍了常用的AI算法, 老师讲课比较慢,适合没有什么AI基础的人上。作业和考试难度也是适中,比较好拿A的一门课。
CSE 256 Statistical Natural Language Processing(Nakashole): 入门NLP课程,cover了n-grams, EM,markov models, neural language models等内容,没有考试只有coding作业。老师讲课水平很一般,经常不知所云。但是好在她提供了一些notes,看notes也可以完成作业。
CSE 234 Advanced Analytics and ML Systems (Kumar): 一门主要是读paper,写paper review和概念性quiz/exam的内容。主要是了解各种不同Data/ML System的优缺点和作用。课程比较理论,但是整体难度适中,老师也非常关心学生并且经常解答问题。
CSE 202 Algorithm Design and analysis(Russell): 算法课,主要是cover常见算法和数据结构(graph search, divide and conquer, greedy, dp, parallel algorithm, approximation algorithm)。 作业难度比较大,有些题目自己真的很难想出来需要去TA office hour,并且用Latex写作业也比较花时间(TA真的会看你写的每一个字,包括证明和伪代码),同时也比较看队友(允许5人组队)。这门课还有一个project需要自己design算法来解决某个生活中的问题(可以是某个游戏之类的),但是给分比较松。期末考试难度相对适中并且给了一周时间。
CSE 258 Recommender Systems and Web Mining (Julian): 入门的AI/ML课,整体比较简单比较偏实操,讲了一些ML algorithm 然后讲了如何实现简单的recommender system。作业和project都非常短,并且project 2允许组队。
CSE 250A Prob. Reason & Learning(taylor): 内容是AI背后的概率理论(markov chain, EM, hidden markov models, probabilistic graphical models, approxiamtion/inference)。整体偏理论的一门课,作业大部分是概率/数学题,搭配一些简单的coding。难度中等偏上,需要比较好的数学和概率基础,比较抽象。
CSE 240A computer architecture (zhao): 讲了instruction set architecture, pipelining, pipeline hazards, bypassing, dynamic scheduling, branch prediction, superscalar issue, memory-hierarchy design。作业和考试都比较简单,project是做一个branch predictor,可以实现一些paper里现有的branch predictor。
CSE 232B Database System Implementation(alin): project课,整节课就是做一个xquery/xpath evaluator。没有其他的evaluation。给的test case比较少,需要自己多测测。上课的内容听一听就可以了,很多内容和project没有直接关联。整体难度中等。
3. 就业资源
UCSD MSCS整体就业应该是算不错的,身边的同学大部分都找到了工作,但是学校给学生提供的career fair人均资源非常有限 (career fair人非常多,本人去过两三次career fair, 排了很多队,投递了很多简历,但是没有一份实习/全职是从career fair 拿到的,并且学校几乎没有什么co-op)。现在就业形势不好,但是如果只要有一个不错的实习经历,拿全职面试应该是不难的。如果没有实习经历的话,推荐学校找一些教授的Lab搬砖(可以在real portal/handshake找),发发论文什么的,也可以丰富简历。本人是在SDSC找了一个Lab搬砖了3年(本科 + 研究生),并且发了两篇论文,对后来找大厂实习和全职是很有帮助的。
4. 总结
整体来说,如果你有比较好的CS基础,并且想学一些比较advanced topics, 想做research,推荐UCSD MSCS。如果是转码和纯找工向,UCSD MSCS的workload可能有点太大了,学校人也比较多可能相对会比较卷。