
1.专业简介
软件工程专业是2002年国家教育部新增专业。软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,使学生在掌握计算机科学与技术方面知识和技能的基础上,熟练掌握从事软件需求分析、软件设计、软件测试、软件维护和软件项目管理等工作所必需的基础知识、基本方法和基本技能,培养能够从事软件开发、测试、维护和软件项目管理的高级专门人才。
上面的文字可能比较抽象,我们再看一下清华大学软件工程专业的培养目标:
计算机专业很早就有,而软件工程专业却是一个相对较新的专业。“软件”大家已经比较熟悉了,我们在电脑上、手机上都用着各种各样的软件和APP。可以简单的理解“制作(开发)软件”和“软件工程专业”的关系,就像“造建筑”和“土木工程专业”的关系。
2.主要课程
以北京航空航天大学软件工程专业为例,专业属工科,必修课程可分为两类:
【专业课程】
【基础课程】
可见课程设置主要以扎实的计算机基础与经典工科教育为主,再加上软件工程领域的原理、方法论和实践课。各种“编程”与“编程语言”的课基本都是选修课,可以根据自己的兴趣自由选择。
3.开设院校与排名
大部分院校的软件工程专业都放在软件学院,在2001年经教育部和国家计委批准,全国首批试办成立了35所示范性软件学院,大致可以代表国内软件工程专业最好的学校。它们分别是:
上述37所示范性软件学院在全国第四轮学科评估结果为:
我个人对于各种排名不敢苟同,比较认同的观点是“本科看学校,研究生看专业”。加上软件工程是一个比较看自学的专业,因此个人建议是尽量选择名气大的学校。
4.就业方向与前景
计算机相关专业应该算是“万金油”专业,基本上各行各业都有需求,所以就业面十分广泛,薪水也比较不错。比较受大家欢迎的就业方向有:
具体从事的岗位除了众所周知的“程序员”以外,还有涉及到软件开发整个过程的相关职位,比如项目经理,售前工程师,测试工程师,运维工程师等。另外只要是计算机相关的岗位,也都是软工同学可以考虑的去向。
详细说一下程序员吧,就像学医的同学大部分人毕业后会当医生,学软工的同学大部分人毕业后会当程序员(也叫搞开发,技术岗)。就像医生会有儿科医生、五官科医生、外科医生等不同的细分,程序员也会有很多细分,以拉勾网(一个程序员招聘网站)的分类为例:
比如你擅长制作网站,那你对应的岗位很可能就是“web前端开发工程师”。一般在学校里并不会分这么细,这都需要同学们根据自己的兴趣选择其一去钻研,努力打磨自身本领。
5.个人建议
上面的内容都相对客观,最后分享一些自己的观点吧,兼听则明偏听则暗,仅供学弟学妹们参考。
a.要不要学计算机/IT方向?
观点:有个比较粗暴的说法叫“富金融,穷IT”,对于很多家境普通的同学来说,学IT都是个错不到哪去的选择。IT相对其他方向更容易找工作,薪水也相对不错。
b.要不要报软件工程专业?
观点:如果选择IT方向,建议优先选择“计算机科学与技术专业”,这两个专业所学内容相似度高,找工作也差不多,但软工的学费大都比较高昂(主要是政策原因)。另外“计算机科学与技术专业”是最经典的计算机相关专业。
c.我是电脑小白,我能不能学好 / 适不适合学软件工程?
观点:我有很多同学在上大学前都没怎么碰过电脑,有的人甚至连开关机都不会,但他们最后都能学好。虽然大一刚开始容易自我怀疑(因为也有不少人在高中就已经非常厉害了,一进大学看起来什么都会),但只要努力去学,都能追上甚至反超那些有经验的同学。不过每个人都有自己的长处和短处,选专业时“扬长避短”+“选自己感兴趣的专业”会更适合自己,也更有可能把专业学好。我个人觉得,对于“自学能力强”与“脑子比较聪明灵活”的人来说,学软件工程学起来可能会更游刃有余。
