本文由“光环国际”——中国IT项目管理PMP培训上市公司转载。
大学生在校期间可能会有这样的疑问:为了以后的就业做什么?

如果你是学计算机的,以后想进入软件和互联网行业,恭喜你,这是个好行业,工资高,而且不需要靠关系。一切靠实力,不需要好爸爸。
不好的一面是,这个行业需要极其繁重的脑力和体力劳动,加班对我们公司来说是常有的事空。
接下来的问题是:软件和互联网的方向是什么?看看下面的解释:
1.第一,需求从哪里来?
1.1客户的项目
如果你在做一个客户的项目,需求当然会来自客户。当然,客户肯定是软件开发小白。他们很难清楚地描述他们真正的业务需求。这个时候需要有人隆重登场:商业分析师。对于大公司来说,业务分析师是全职的。对于小公司,项目经理或者开发骨干会咬紧牙关。业务分析师需要把需求梳理清楚,交给背后的架构师进行设计。
如果一个商业分析师在某个行业长期工作,他就会成为一个商业专家。比如你做过国内各大银行的所有核心系统项目,你对银行业务的熟悉程度甚至可能超过具体的银行人员。这个时候,你就无比珍贵了。你不仅可以分析业务,还可以帮助银行优化业务。你觉得很牛逼吗?
问:业务分析师需要了解技术吗?
答:最好明白你分析的东西是要由编码员来实现的。如果无视现有技术,一味迎合用户,肯定会被编码员骂死。
如果你是一个程序员成长起来的业务专家,技术娴熟,那就坐着数钱吧。
1.2公司产品
如果你在做产品,比如微信、QQ、淘宝、魔兽世界、西游记,需求其实是自己公司里的人定义的。
现在有一个时髦的职业定义了这种需求:产品经理。张小龙是微信的超级产品经理,史玉柱是征途的铁杆产品经理。
产品经理主要是根据用户的心理和体验来设计产品,让大家都用得好。好的产品经理现在很吃香,也很缺人才。
问:产品经理需要懂技术吗?
回答:可以,最好是从程序员成长起来,知道一个产品设计和实现的难度。不然你只顾自己,会被程序员骂死的。
2.设计和开发
2.1建筑师
听起来是个高大上的职位,但需要强大的技术实力和深厚的技术积累。
架构师的成长需要经验、技术的广度和适当的深度。
设计优雅、灵活、可扩展的架构是架构师的主要工作。
不要追求最新最热的技术,还要考虑现有团队的能力和技术的成熟度。
人员:★
难度指数:★★★★★
2.2 web后端工程师
后端编码人员主要实现业务逻辑,为前端提供接口。
当然,使用最多的是Java,但也有其他相对较小的,如Python、ruby on rails等。,还有PHP,简单粗暴,中小型网站常用。不管是哪一种,都不难学。
这方面的人员需求比较大。
人员要求:★★★★★
难度指数:★★★
2.3 web前端工程师
主要是Javascript,CSS,JQuery等。近年来,人们注重浏览器端的用户体验,浏览器端越来越耀眼,所以也很受欢迎。
人员要求:★★★★★
难度指数:★★★
2.4手机码农民
主要是安卓和iOS。由于移动互联网的发展,它非常受欢迎,需求量很大。相对来说,iOS的门槛更高,程序员更少,但是工资更高。
人员:★★★★
难度指数:★★★★

2.5系统编程工程师
有的需求简单,有的需求复杂,需要支撑大量用户,比如淘宝的双11,微信的春节红包。
需要做云计算,虚拟化,分布式处理,支持系统横向扩展。
对于海量数据,需要做大数据分析来提取有价值的信息,比如Hadoop。
因为需要定制开发操作系统、数据库、服务器端系统,甚至组建自己的一个,小公司一般不具备这样的技术能力,主要是BAT这样的公司在搞。
对人员的需求并不大。对于程序员来说,需要在一个领域深入学习,技术稳定性比较好。
人员:★★
难度指数:★★★★★
2.6安全
互联网时代,你的信息一不小心就可能被窃取,安全越来越重要。
所以实现功能,满足性能是不够的。很多公司,尤其是BAT,都非常重视安全。
这个方向也需要对技术有很深的研究。
人员:★★
难度指数:★★★★★
3.测试
这个技术要求不算太高,但是也需要测试方面的知识,能够设计测试用例,准备测试数据,执行测试。
现在流行敏捷开发,测试也要求会开发知识,至少会开发一些自动化脚本。
很多女生后来转到测试岗位,我觉得主要原因是女生比较细心。
我在IBM遇到一个非常优秀的测试人员:她不仅能出色地完成上述工作,还能参与设计和开发的讨论。她经常能从测试的角度提出开发人员从未想到过的问题,这对提高软件质量有很大帮助。
4.数据库管理员
几乎所有的项目都需要数据库的支持。对于大型和超大型项目,会有一个职位叫DBA。他对数据库知识极其精通,平时管理数据库,开发时可以帮助开发团队设计数据库,并找出性能瓶颈,进行性能调优。
5.用户界面/文档
UI:就是界面的美化。一般设计师先展示界面的原型,经过讨论、修改、确认,美国工会生成各种界面元素,比如图标、按钮等。
现在对设计师有一定的技术要求,不仅要画界面,还要做html模板,所以美工需要懂HTML,CSS,甚至一些Javascript。
程序员拿到html模板后,就可以往里面添加业务代码了。
文档撰写者:人们通常为小项目兼职,人们会为大项目和产品全职撰写文档。我03年参与了上交所的项目,看到现在一个专职文档写手写的字太专业太精致了,完全达到了直接发表的水平。
我抄下来了,我自己也想抄,可是即使我试着抄也做不到。
6.项目管理
项目已经开始,一批业务分析师、架构师、开发人员、测试人员等。就像饥饿的狼,一定会把这个项目撕成碎片。
这么多人怎么合作?如何管理?进度能否按要求完成,需要项目经理。
项目经理,说白了就是带着大家做项目,主要是和人打交道,需要协调各方面,保证项目的顺利进行。
问:项目经理需要懂技术吗?
答:当然有必要。最好是做开发的,不然那些编码员说的话你是听不懂的。你只能浮在表面,不能深入项目,别人也不会接受你。这对球队肯定是不利的。
7.操作
如果你在开发自己的产品,开发完成后,马上会遇到一个问题。如何推广?
互联网时代,世界是平的,竞争异常激烈。一个好的软件,或者App,或者网站,缺乏运营,你的技术再好。
运营其实就是想让你的产品被人知道,被人使用。这里的水很深,比如软文怎么写?如何在社交网络、微信、微博进行营销?如何进行统计、分析和准确定位?

在这方面,2014年之前的小米绝对是典范。雷军7字公式:专注、完美、口碑、快速。黎万强的参与感堪称经典。
好的互联网运营商供不应求,当然很吃香。
对编程不感兴趣的同学不妨看看这个方向。
说了这么多职业方向,你会发现绝大多数都要求知道一定的技能,所以我其实想说:
刚参加工作的时候,不妨先从程序员做起,然后慢慢找到自己感兴趣的方向。


