根据美国劳动局统计的实际数据和预估,2014至2024年,在所有的STEM工作中,计算机相关岗位的增长率为73%,预期新设岗位和已有岗位到了2024年,将超过108万,每年将有超过10万人加入计算机领域!
每年都有大量的中国学生通过获得计算机科学硕士学位,从而进入Facebook、Google、Amazon、微软等顶级公司,起薪基本都不低于8.5万美元。
你,心动了吗?
一、计算机科学究竟是什么专业
计算机科学,英文全称是Computer Science,简称 CS,涉及计算机系统和软件的理论、设计以及应用,是基于对信息的采集、表示、处理、存储、通信和访问等方法程序(或算法)的可行性、结果、表达和机械化的系统研究。
计算机科学是一个很有难度,充满挑战性的行业,也是一个年轻的、充满机遇但又对智力要求非常高的学科领域。随着科技的发展,计算机科学和很多交叉领域相结合,如认知科学连接计算机科学和心理学、语言学、哲学和神经学; 生物信息学和计算生物学结合了计算机科学和生物学; 数字媒体设计连接了计算机科学、艺术和传媒。
计算机科学作为工具,已经深入到各个领域,所以如果你之前有其他学科背景,有了一定的计算机科学基础能力和良好的数学、逻辑分析能力,那么在申请美国研究生的时候选择范围广,未来的就业也是别有一番天地。
【官方说法】
何为 CS 专业?我们以一个例子来回答。今天我们可以问智能手机几乎任何问题,并能得到快速回应。“计算机科学”就是使手机实现这个功能的幕后推手 : 你的手机已经比 30 年前发明的任何计算机都强大, 将你的问题通过无线或者有线网络传递至 “云端”, 云即是计算机集群。
在优化的系统软件的协助下,功能强大的算法在众多特定计算机的复杂数据库展开搜索,然后将答案返回到你的手机上。可能答案出现在你手机上之时,你通常刚敲完、或者正在敲出你的问题。而整个过程中,相关信息的安全和私密性一样得到了保护。这就是计算机科学,0.2 秒的发生过程。
—— 乔治亚理工学院
【在读生评价】
我最喜欢格里.布雷迪(Gerry Brady)教授的算法课程,通过该课程的学习,我掌握了经典的排序、图形和动态编程算法,了解了时间复杂性和空间复杂性。整个课程的学习不是靠记忆背诵,而是利用经验教训来解决问题,教授的批判性思维使我受益良多!
参加iOS应用开发课程的最终项目展示课程,让我在短时间内获得未知领域知识,了解最新应用程序的设计、开发及展示。现在科技和编程语言发展快速,每隔一段时间就会有新的技术更新,这个项目不仅仅教授我新的知识,更是培养了我自我学习的能力,让我具备成为优秀软件工程师的基本素质。
——芝加哥大学 CS 某在读学生
二、计算机科学的就业形势分析
随着科技发展和社会需求的变化,计算机科学专业下设的分支也越来越多,所以根据不同的分支,其就业领域也丰富起来,如网络工程方向可以到国内外大型电信服务商、大型通信设备制造企业从事技术开发工作,也可以到企事业单位从事网络工程的设计、维护、教育培训等工作;软件工程方向在国内外众多软件企业、国家机关以及大中型企事业单位的信息技术部门等从事软件工程的技术开发、教学、科研及管理工作;网络与信息安全方向可为政府、国防、电信、电力、金融等部门的计算机网络系统和信息安全领域进行管理和服务;人工智能方向可进入研发机构或企事业单位的研发部门从事人工智能方面的研究等。
据美国劳工部统计,计算机和信息技术行业2014年的新工作岗位有390万,至2024年新工作岗位将增加至440万,增幅12%,增长原因主要是云计算、大数据收集和存储、物品互联网化以及移动计算的持续需求。据2016年5月统计,计算机和信息技术行业的平均年薪为82,860美元,比所有职业年薪平均值高37,040美元。
具体要求见下表
说到计算机科学未来的就业,可能你眼前浮现的就是天天写代码的 “呆子” 形象,然而在今天的技术驱动型经济体制下,计算机科学专业的就业岗位越来越广泛,如数据架构师、软件架构师/工程师/开发员、信息技术服务工程师、商业智能工程师等,如果你具有一些其他行业特质,如有商业背景,你可以往技术公司的管理层发展。
以卡耐基梅隆大学的计算机科学硕士2016年毕业生就业统计为例,61名毕业生有42名选择就业,9名继续攻读博士学位。下表罗列了就业人员的公司、职位及所在城市,从表中可看出主要的就业公司有知名的亚马逊、苹果、Facebook、谷歌等,主要岗位有软件工程师、开发工程师、研发工程师等,72%就业于硅谷周边的西海岸,平均年薪110,293美元。
据《2016年中国大学生就业报告》显示,计算机科学位列就业榜前三甲,薪水在所有专业中最高,入职后三年的工资涨幅可达120%。求职者应熟练各种计算机软件和编程语言,可以做社交网络、电子商务、技术型公司、大中型企事业单位的软件工程师、移动终端工程师、云存储工程师,还可以做会展业务、企业信息系统安全服务、大学教授或自主创业等。广泛的数字化加上中国强大的人口基数,社会对计算机科学人才的需求定会不断上涨。
以京东商城为例,软件工程师的基本月薪在15,000 ~ 30,000元,要求申请者精通计算机语言和算法,至少两年的工作经历,要求良好的团队合作能力和沟通能力。从各大招聘网站来看,在北京、深圳、上海等一线城市,计算机科学专业的毕业生一般年薪有12万元以上,主要就业领域含IT服务行业、电商平台、软件外包服务及其他技术行业等。
据美国大学与雇主协会针对2017届毕业生的统计,所有专业的就业数据中,计算机科学的就业率最高,为72%,本科生的平均年薪65,540美元,较去年增长7%。作为美国就业前景最好的三个专业之一,计算机科学就业范围广泛,可以在各行各业找到就业机会,人才需求地区主要包括硅谷、西雅图、纽约、波士顿以及芝加哥等。
以纽约为例,作为金融中心,城市属性的不同导致 CS专业人才就业途径十分丰富,可以到彭博咨询做软件开发工程师,可以到花旗银行做技术代表,可以到德意志银行担任IT分析师,还可以到摩根大通做分析师。另外,金融业、传媒业也能够为CS人才提供很多的就业机会,从事职业不限于设计开发类、技术支持类、销售类等工作。
三、计算机科学的岗位和能力分析
下表是软件工程岗位的职责和教育背景要求分析,从中可以了解到,软件工程师一般要求计算机科学或计算机工程相关专业的本科以上学位,熟练掌握Java、C、C++ 等编程语言,有一定的分析能力和沟通能力。
具体要求见下表
【就业评分】
毋庸置疑,无论哪个国家,CS 都是目前就业的大热门。找寻到一份工作,对于 CS 或者相关专业的毕业生而言,几乎没有什么难度。而随着计算机技术的发展,对于相关技术人才的需求是越来越大,并且可取代性非常之低。
虽然码农的日子,在外人看来是枯燥的,但只要本人乐在其中,同时又有丰厚的收入,如果还具备较好的软实力,走上项目管理或者创业的道路 ,带来的收益是巨大的。
【在职人士反馈】
从事股票研究时,长时间地接触 Excel 和 Visual Basic 让我感受到了编程的乐趣,于是我有了从事更专业的技术工作的打算,芝加哥大学 CS 硕士项目让我有了转换职业路径的可能。
项目提供了大量计算机科学核心基础课程,如编程、算法和数据库等,课程严格却也让人收获颇多,对计算机科学的热爱使我全身心投入,最终找到了自己喜欢的领域一—移动开发。
进入公司,发现最让我兴奋的是计算机科学的日新月异,每天都是挑战。在和其他团队合作时,会不时接触到新的设计模式和不同的工具,总有学不完的新知识。在芝加哥大学的学习让我有了过硬的基础知识,加上有效的学习方式 ,我很喜欢现在这个行业!
——芝加哥大学某毕业生
四、计算机科学的学科介绍
以乔治亚理工学院的计算机科学硕士项目为例,该项目多达11个分支。不同分支下的必修课和选修课如下表所示:
专业分支介绍
由于计算机科学的迅猛发展和社会需求的多样化,美国学校为了更能贴合社会需求,培养专业的人才,计算机科学硕士项目一般都设立不同的分支,以南加州大学的计算机项目为例,开设的分支主要分为理论、软件和计算机应用三个层面,具体如下:
1、数据科学 Data Science
为学生提供计算机科学核心背景以及专门分算法、统计和系统专业背景,以获取、存储、访问、分析以及可视化大型和多样化的实时数据,数据来源包含能源、环境、了卫生、媒体、医药和交通在内。必修课含算法分析、数据库系统和人工智能基础,选修课含数据系统、数据分析等。
2、游戏开发 Game Development
该项目分支是为了创建游戏学科和文学档案,以促进游戏开发的学术化和娱乐化共同发展。经过一年半的学习,学生将获得扎实的理论基础,对游戏认知、框架和开发具备丰富的项目经验。必修课含算法分析、本地控制台多人游戏开发、游戏引擎开发、3D图形和渲染、人工智能基础/数据库/网络技术 ( 三选一 ) 和游戏开发项目。
3、计算机安全 Computer Security
为响应各行业和政府的信息安全需求,该项目着重于计算机安全研究、开发和部署以及计算机系统安全运行相关的课程,研究主题包括安全系统开发、密码学、攻击统计分析,以及依赖安全技术确保系统的正常运行和管理等。必修课含安全系统、应用密码学、计算机通信、高级操作系统、算法分析、人工智能基础/数据库/网络技术(三选二)等。
4、计算机网络 Computer Networks
研究领域针对计算机通信、网络和分布处理。必修课含算法分析、人工智能基础/数据库/网络技术 ( 三选二)、计算机网络介绍、计算机通信、高级操作系统、网络互联和分布式系统实验室等。
5、软件工程 Software Engineering
该项目不仅提升学生的软件开发技能,还为非外包行业提供系统工程、客户协作和管理技能人才。项目研究具有前瞻性,主题含软件密集型系统、高精确性算法、COTS集成、移动和分布式网络中心构架以及软件快速开发和演进等。
项目还包含一系列的课程项目,让学生接触到真实案例 ,了解客户的真实需求和行业动态,旨在培养软件工程领域的领导型人才。该项目也可以用作致力于计算机科学深入研究和攻读博士学位的基础课程介绍。必修课含算法分析、人工智能基础/数据库/网络技术(三选二)软件管理和经济、软件工程、软件构架等。
6、智能机器人 Intelligent Robotics
该项目培养学生关于机器人的设计、建造、运行和应用能力以及计算机系统的控制、感官反馈和信息处理能力。必修课含算法分析、人工智能基础、机器人学、网络技术/数据库系统 (二选一)、有效计算、自组织、机器学习、概率推理等。
7、多媒体和创新科技
Multimedia & Creative Technologies
该项目意在培养学生从图形、视觉和/或网络和数据库等课程中建立专业化的计算机系统知识架构。必修课含算法分析、人工智能基础/数据库/网络技术(三选二)、计算机图形学、计算机动画与模拟、多媒体系统设计、3D图形和渲染等。
8、高性能计算和仿效
High Performance Computing & Simulation
该项目旨在培养新一代计算机科学研究生,利用高端并行计算机、高速网络和先进科学可视化等手段来解决挑战性的科学与工程问题,用最先进的计算机技术培训工程师解决现实问题。项目有两个方向,计算机科学和计算科学/工程应用,不同的学习阶段可以获得计算机科学硕士学位或物理科学/工程博士学位。必修课含科学计算与可视化、算法分析、人工智能基础/数据库/网络技术 (三选二) 等。
五、计算机科学的申请者背景介绍
硬背景说明
计算机科学硕士项目倾向于招收本科计算机科学专业的学生,但如果申请者本科期间修了较多的计算机及数学课程,如算法和理论、运行系统、编程语言、数据结构、微积分、线性代数、物理、统计等,也可以申请该专业的硕士项目。根据芝加哥大学计算机科学硕士项目统计,40%的学生本科是CS专业或辅修过C9,30% 的学生无CS 背景,本科专业涵盖商科、数学、化学等。
TOP50的学院基本都开设了计算机科学硕士项目,但由于申请者人数较多,对于申请者的硬性要求仍然很高,GPA建议不低于3.0,申请TOP30 的学校 GPA最好3.5以上; 对于语言,TOP50学校TOEFL最低要求约90分,IELTS最低要求7.0分,但录取者的平均分一般都高于7.0分; GRE大部分学校无最低要求,但建议总分在315分以上,数学部分165分以上。
所需软实力背景
如果申请者擅长倾听、注重细节、富于创造力、具有批判性思维能力、爱好数学、擅长定量分析、能长时间地集中注意力,那计算机科学是你的适合专业。
申请者一般可以通过参加学校的项目或实习或比赛来体现自己的计算机能力、数学能力、创新能力和沟通能力。申请者可以关注学校的各种项目,这样可以较为方便地取得有质量的推荐信。
另外,现在很多国内的大学和海外院校有合作关系,优秀的学生可以申请学期交换学习,也可以自己申请海外院校的暑期项目,用以提升背景,还可能取得海外教授的推荐信。在有能力的情况下,还可以参加国际型比赛,如 ACM 国际大学生程序设计比赛、国际青少年机器人大赛、TOPCoder 国际编程大赛、ICM 建模大赛等。