查看: 20615| 回复: 19
跳转到指定楼层
上一主题 下一主题
收起左侧

CMU 部分课程介绍

   
🔗
萨缪 | 只看该作者 |倒序浏览
全局:

[2019Fall] MS. EE@CMU

生活的诸多方面,有什么是你一度感觉很不适应、很不习惯的吗?现在适应的如何了?有什么方面是你希望自己能早点知道的,可以提醒新人注意吗?:


你以前是在哪个国家读的本科?在美国感觉学习负担压力大吗?感觉读本科和读研究生,有哪些不同?:


一周需要学习多久才能跟上?你觉得拿A拿B难吗?:


平常除了上课之外,跟教授们联系多吗?是否有机会跟着做些研究?:


平常除了多跟同胞交流,是否经常跟外国同学party? 一般一起玩什么呢?有什么值得注意的地方可以提醒新人注意的吗?:


你获取求职信息的主要途径是什么?学校里的career service/job fair多吗?你觉得有用吗?:


美国的学习和生活有什么方面是你特别喜欢的?:


美国的学习和生活有什么方面是你最不喜欢的?:


你来美之前英语水平如何?(比如托福考了多少),你觉得跟美国同学和老师学习和生活上交流有障碍吗?经过一段时间,是否有提高?主要通过什么途径提高?:


请介绍你们专业的录取人数、学生背景和就业情况:
国人居多,找工情况因人而异,根据身边统计学,想找的都找到了。


注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
# 在cmu上过的课

要从cmu ece专业毕业了,总结一下我在匹村上过的课,希望能给以后的同学们提供一些信息。每门课我会先大概介绍一下课程内容和project,然后描述其难度,workload以及如果让我再学一遍,我会做的事情。

.
## 2019fall

### 15-213/18-213/14-513/15-513/18-613 Introduction To Computer Systems

cmu最有名的课之一,也是很多中高阶课程的前置,教材是csapp。整个课程十分完善,slide/lab都是精心设计的,自底向上地把cs的各个部分介绍一遍,包括整数浮点数的表示,汇编,函数调用,内存层次,内存分配,虚拟内存,系统调用,IO,网络与并发,同步等。对于本科cs专业的同学来说,大部分知识点可能都学过,但213能让人更清楚地看到这些知识点的联系,从而对cs有个更系统的认识;对于本科非cs的同学来说,这门课用的是c语言, 可能稍有点不友好,但能让人最快时间入门cs,知道程序是怎么跑起来的,不再有雾里看花的感觉。我在面国内的几个大厂的时候,不止一位面试官特地问我学过这门课没有,考得不少八股文也是csapp里面的内容。

难度:中等。个别lab有些难,让人感觉智商不够(如datalab),大部分lab按部就班就ok,如果struggle,及时联系ta;考试和quiz都比较常规。
语言or技术栈:C
workload:中等。. 1point 3 acres
如果让我再学一遍:从头到尾读一遍教材;更多地和TA交流,一个人钻牛角尖很容易心累。



### 17-637 Web Application Development

. 1point 3 acres这门课主要讲如何用Django开发一个web application。slide内容包括html,css,js,ajax,git这些。这门课的优点是后半学期会让学生组个三人队按scrum的组织方式去开发部署一个全栈项目,所以能让简历缺乏项目的同学多一个全栈开发经历,并且这些开发方法学上的训练也是对以后工作的一个模拟。还有我们当时是用azure的app service部署的项目,这个姑且也算一个比较时髦的流程。缺点就是前半学期的作业(开发一个订餐网站)比较无聊,load分布也不太均衡,老师(Joshua和Michael)上课效果一般,知识也多是蜻蜓点水式的内容。作业好像在之后的学期换过。如果是自己之前用过Django并且开发过这类网站的话,基本可以当水课上。

难度:中等。作业对于之前完全没接触过的同学来说,会比较难,主要是上手需要一定时间;期中考试和quiz都比较常规,期末会难一些。
语言or技术栈:Django(Python) + html + css + ajax(js) + PostgreSQL
workload:中等。. check 1point3acres for more.
如果让我再学一遍:尝试使用Git更多的用法

### 18-749 Building Reliable Distributed Systems. ----

这门课是ece比较有名的水课,老师特别爱请假2333。slide内容围绕分布式系统的fault tolerance展开,介绍如何备份,如何达成consensus,AcID,CAP这些原则等等。这门课会有一个十个人规模的project,任选一个主题设计一个fault-tolerant的系统,实现passive/active replica, checkpoint, log, recover这些feature。. .и

难度:低。考试都是简答题,难度其实挺高的,需要对slide有比较深入的了解,但老师会curve,给分很慷慨。project实现老师要求也不难,毕竟十个人。
语言or技术栈:无。project技术栈组内成员自己决定,大部分用的java。
workload:低。没有平时作业,没有quiz,将水贯彻到底. Χ
如果让我再学一遍:无。
. 1point3acres
### 39-699 Career & Professional Development For Engineering Masters Students

一门只有3学分的课,只上半个学期,会介绍如何写简历,如何建立connection,如何准备面试等等。它讲授的东西对于第一次来美帝找工作的同学来说我觉得挺有用的,至少能缓解一下焦虑。它的优点在于会督促学生尽早完成自己的简历,老师会一个个地改一遍,让你的简历在语言和格式上不会有硬伤。

## 2020spring

. ----### 15-640 Distributed Systems

比较好的一门课,老师是神似爱因斯坦的印度老爷爷。这门课就是讲分布式,具体内容好像fall和spring会不一样。这里我只介绍spring的。slide包括rpc,分布式的各种semantics,latency,cache(一致性, evict policy...),scaling, resiliency(二阶段锁,Paxos等)。这门课有4个project,第一个project是做C写RPC,不难,不过要注意一些设计,不然很容易像我一样写出魔鬼代码;第二个是用Java写一个带Cache的Proxy,这个project我觉得是这门课最难的也是最有收获的,就是代码量多了之后,设计得不行的话,各种feature耦合在一起,debug时心智负担很重,贼难受;第三个是auto-scaling调参,难度不大,但不太好玩;第四个按部就班实现二阶段提交协议,还是有收获的,难度和代码量都适中。

难度:中高。
语言or技术栈:C, Java。
workload:中高
如果让我再学一遍:认真学习上课提过的经典设计(二阶段提交,Paxos,GFS等);合理安排时间,尽早开始考试复习和project设计,临时抱佛脚真的会崩……. check 1point3acres for more.

### 18-709 Advanced Cloud Computing

ACC也是很多国内同学会选的课,老师是Greg为主的几个人。这门课按老师说法是Phd-level,但基本也都是master在上,和其它课程的不同是会要求读很多论文。可能跟cloud computing包含了太多东西有关这,门课讲得很杂,包括云存储,调度,MapReduce,Spark,GFS,k8s等,每个topic都会有不少论文要读。这门课讲得还可以,Greg也是谷歌学术学术近20000引用的大佬,上课也很幽默,但3个project设计就一言难尽,load和难度很不均衡,TA也基本没有帮助。第一个project是在AWS上做Auto-Scaling策略,写terraform,代码量不大,但写得人很无奈。因为这套东西大多数人都没用过,照猫画虎还行,后期调参就很折磨。第二个project是spark从入门到精通,这个是我在CMU做过的最难顶的project,对于我这样的spark新手来说,难点有两个,一个是训练时间太长,几个测试点都要几个小时才能出结果;一个是不熟悉API,很多优化trick不了解。这两点一叠加导致我在这个project上花了很多无用功。第三个project是k8s写schedule策略,这个project比较简单,但可能太过简单了。
. Waral dи,
难度:高。这门课让我看到了自己自学能力的局限性,也见识到CMU是真的不缺dalao。. check 1point3acres for more.
语言or技术栈:terraform, pyspark, go(k8s)。. 1point 3 acres
workload:中高
如果让我再学一遍:读一读各种readings;多和同学交流,闭门造车累了就和人聊聊吧,至少能缓解下压力;放弃一些次要的东西,认真学习Spark。

### 17-514 Principles of Software Construction

由Charlie和Josh主讲的非常好的一门课。课程主要讲Java和软件设计,包括如何设计软件架构,如何设计API等,这门课也是对我实习帮助最大的一门课,很多东西我在实习的时候都用上了。课堂体验极佳,Charlie思路很清晰,Josh工业经验丰富,两个老师经常跟说相声一样唱和。作业比较复杂的是设计卡卡颂,需要想的仔细一些,但难度并没有那么高。这门课还有个优点是对代码风格要求比较高,督促人写出clean and readable code。
. 1point3acres
难度:中等。这门课project拿分不困难,不过考试感觉还是需要认真准备的。
语言or技术栈:Java,UML. 1point 3 acres
workload:中等。
如果让我再学一遍:把effective java认真读一遍;java并行学得再扎实一些。

## 2020fall. Χ

### 18-746 Storage Systems

SS也是设计得比较好的课,前半学期讲单机存储,从SSD和Disk到文件系统,再到RAID;后半学期讲分布式文件系统,主要包括AFS,NFS等各种文件系统,以及backup,GFS,BigTable等。project有两个,第一个是做Flash Translation Layer,需要支持GC以及设计wear levelingscheme。第二个project是做cloud-based file system,这个project我觉得设计得非常好,也很有趣。简单来说,需要用FUSE实现一个定制的file system,使得体积小于阈值的文件存在本地,超过的存到云端(s3),之后逐步支持deduplication来减少云端存储的消耗,支持snapshot来允许回档,支持cache来减少云端和本地的数据传输。这个project的writeup写得比较好,会引导学生去模块化自己的代码,然后考虑各个模块的层次如何安排。不过这两个project的最后一个checkpoint都不简单,如果想拿满分需要花费更多的时间。

难度:高。考试其实比较灵活,但因为有大量往年卷,所以刷题到位的话,不会太差。
语言or技术栈:C++
workload:中等。
如果让我再学一遍:认真读一读各种readings,尤其是谷歌那几篇。多花些时间把第二个project做到满分。


### 18-645 How to Write Fast Code I

一门比较底层的课。讲的东西主要是设计kernel,通过使用SIMD,并行(OpenMP, MPI),使用不同data layout等来加速代码。这门课应该也是ECE的水课,知识密度比较低,不过今年讲的东西和往年好像不太一样。老师是一个和蔼的华裔or日裔,讲课很慢,喜欢和学生交流,给分也挺好的。课程有四个作业,基本都是上课讲过的内容,一次期中考试(不过时间安排在11月中下旬,其实就是期末),一个3-4人的project。project是选择一个算法比如KNN, Ray Tracing等,利用课上学的技术去加速,算法的选择和加速效果其实不是太重要,重要的是利用好课上学的东西。

难度:中低。
语言or技术栈:C/C++. Χ
workload:低。
如果让我再学一遍:无。

### 11-601 Coding Boot Camp

刷题课。老师会带着学生用Java, python, javascript三种语言学习数据结构以及练习刷题技巧。这门课最大的特点就是针对性极强,就是帮学生找码农工作,所以每周都会有2次学生之间的模拟面试,一次是自己作为面试者,一次是自己作为被面试者,而且有不少印度同学帮你适应口音:). 课堂slides也讲得都是面试爱问的知识点,各种复杂度之类的。作业就是类似Leetcode的算法题。对于要/已经找到全职的同学来说,这门课也是比较好的水课选择。. 1point3acres

难度:低。
语言or技术栈:Java,Python, Javascript
workload:低。不过每周2次面试练习稍微麻烦了一点。 ..
如果让我再学一遍:无。



. From 1point 3acres bbs

评分

参与人数 20大米 +73 收起 理由
NaomiQQKB + 1 赞一个
Yun666 + 1 赞一个
catTom + 1 很有用的信息!
kk2019 + 1 赞一个
pikado + 50 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分


上一篇:Gatech OMSA Computational Track 就读体验
下一篇:DS@Umich项目介绍
推荐
cszhazha 2020-12-28 08:08:05 | 只看该作者
全局:
楼主说的课都是很多人都重点推荐过的,感觉把这些课都上过一遍,cmu master才真是值。cmu的课跟业界真的很接近,都开始用terraform了,别的水校跟cmu差距真的大
回复

使用道具 举报

全局:
BrownL 发表于 2020-12-27 18:49:12. 1point3acres
感谢分享。全都打算上。请问下楼主了解graphics方向的课吗?比如Computer Graphics, Computer Vision,Computational Photography
Graphics网上有公开资源,感兴趣可以看看http://15462.courses.cs.cmu.edu/fall2020/ 周围有同学上过说是有很多数学计算。 CV 16720强烈推荐,不过和graphics没太大关系,computer vision本质上是graphics的逆过程,一个是从图像里获取信息一个是利用信息生成图像…另外还有一门physics based method in computer vision和geometry based method in computer vision也可以考虑下
回复

使用道具 举报

推荐
krayc425 2020-12-28 11:36:34 | 只看该作者
全局:
感觉datalab是让你感受到跟别的大神智商差距的lab 同样的题可能你用30个operator别人用5个黑魔法就过了
回复

使用道具 举报

全局:
感谢学长分享!
回复

使用道具 举报

🔗
小鲤yyds 2020-12-27 21:56:39 | 只看该作者
全局:
原来datalab是难度比较高的啊。我上来做了datalab就感觉智商不够,以为后面的更难
回复

使用道具 举报

🔗
旻翰 2020-12-27 23:34:02 来自APP | 只看该作者
全局:
推 好想上...
回复

使用道具 举报

全局:
我也觉得datalab是很难的一个,因为限制了operator和operator的数量;
然后第二难的是cachelab的优化;. 1point 3acres
malloclab比较繁琐,难度不高,但需要细心。
回复

使用道具 举报

全局:
哭了…只有我觉得shell lab最难吗
回复

使用道具 举报

全局:
收藏收藏收藏
回复

使用道具 举报

🔗
BrownL 2020-12-28 10:49:12 | 只看该作者
全局:
感谢分享。全都打算上。请问下楼主了解graphics方向的课吗?比如Computer Graphics, Computer Vision,Computational Photography
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表