程序员未来的发展方向

来源:长沙北大青鸟大计校区|发布时间:2016-12-28 10:48:02

  大学生在校期间可能会有这样的疑问:将来就业干啥好呢?

  如果你是学计算机的,将来想进入软件和互联网行业, 恭喜, 这是个好行业, 薪水很高, 也不需靠关系, 一切靠实力说话, 不需要有个好爸爸。

  坏处是,  这个行业需要极为繁重的脑力和体力劳动 , 加班也是司空见惯的事情。

  接下来的问题是: 现在软件和互联网大概有哪些方向?  看看下文的解释:

 

1、首先是需求从哪里来?  

 

1.1  客户的项目

    如果做的是客户的项目, 需求当然是从客户那里来的,当然客户绝对是软件开发的小白(其实也不能这么绝对啦, 我也见过极少客户中很优秀的软件人才),他们很难清楚的描述自己真正的业务要求, 这时候就需要有个人隆重出场了: 业务分析师 ,  对于大公司, 业务分析师是专职的, 对于小公司,项目经理或者开发骨干也就硬着头皮上了。  业务分析师需要把需求理理清楚, 交给后面的架构人员做设计。 

    业务分析师如果在某个行业干久了, 就会变成业务专家,  例如你把国内各大银行的核心系统项目都做了个遍, 那你对银行业务的熟悉程度甚至可能超过银行的特定人员, 这时候你就超级值钱了, 不仅仅能分析业务, 更能够帮助银行优化业务, 你说牛不牛?

 

   问: 业务分析师需要懂技术吗?   

 

   答: 最好是懂一点,你分析出来的东西是要码农们实现的, 如果不考虑现有的技术,一味地迎合用户, 肯定会被码农们骂死。 

 

   如果你是由程序员成长起来的业务专家, 技术精湛, 那就坐着数钱玩吧。 

 

 1-140509164Q1426.jpg

 

 

 

1.2  公司的产品
    如果你做的是产品, 例如微信, QQ,  淘宝 , 魔兽世界,征途, 大话西游, 那需求其实是自己公司的人来定义的。 

定义这个需求的现在有个时髦的职业: 产品经理。   像张小龙就是微信的超级产品经理,  史玉柱就是征途的骨灰级产品经理。

产品经理主要根据用户的心理和体验来设计产品, 让大家用的爽,好的产品经理现在非常吃香, 也属于紧缺人才。

 

   问: 产品经理需要懂技术吗?

   答: 需要, 最好是从程序员成长起来的, 知道一个产品设计实现的难度, 要不然只顾自己爽 , 也会被码农骂死。

 

2、设计和开发

2.1 架构师

    听起来很高大上的一个职位, 但是需要强悍的技术实力和深厚的技术积累

    架构师的成长需要历练, 需要技术的广度, 和适当的深度。

    设计优雅,灵活,可扩展的架构是架构师的主要工作

    不能追求最新,最热的技术, 还要考虑现有团队的能力,技术的成熟度。

    回复“架构师”查看《程序员都能搭建SSH了, 还要架构师干什么?

    人员需求:★

    难度指数:★★★★★

 

2.2 web后端码农

    后端码农主要实现业务逻辑, 提供接口给前端使用。

    Java 当然是用的最多的, 但是也有别的相对小众的像Python, ruby on rails 等, 还有就是PHP,简单粗暴 中小网站常用,无论哪一个,学习起来都不是很难

    这一块的人员需求是比较大的。

 

    人员需求:★★★★★

    难度指数:★★★

 

2.3 web前端码农

   主要是Javascript , CSS, JQuery 等, 最近几年大家重视浏览器端用户体验, 浏览器端做的越来越炫, 所以也很火 

   人员需求:★★★★★

   难度指数:★★★

 

2.4手机端码农

   主要是Android, iOS , 由于移动互联网的发展, 现在很火爆, 需求量很大, 相对而言iOS的门槛高一些,程序员也少一点,不过工资高一点。

   人员需求:★★★★

   难度指数:★★★★

 

2.5 系统编程码农

    有些需求很简单, 有些需求很复杂, 需要支持海量的用户 ,海量的并发, 像淘宝的双11, 像微信的春节抢红包

    需要做云计算,虚拟化,分布式处理, 支持系统水平扩展。

    对于海量的数据,还需要做大数据分析,从中提取有价值的信息, 例如Hadoop。 

    由于需要对操作系统,数据库,服务器端系统做定制开发, 甚至自己搞一套, 小公司一般没有这样的技术能力, 主要是BAT这样的公司在搞。

    人员需求不是很大, 对码农来讲, 需要在一个领域钻研的非常深, 技术稳定度比较好。

    人员需求:★★

    难度指数:★★★★★

 

2.6 安全

   互联网时代, 你的信息一不留神就有可能被偷走, 安全变的越来越重要。 

   所以单单实现了功能, 满足了性能还不够, 很多公司,尤其是BAT对安全非常重视。 

   这个方向也需要对技术钻研的很深才可以

   人员需求:★★

   难度指数:★★★★★

 

3、测试

   这个对技术要求不太高,但也需要测试相关的知识, 能够设计测试用例, 准备测试数据, 执行测试。 

   现在敏捷开发流行, 对测试也要求懂开发知识, 至少能够开发一些自动化的脚本。

   很多女生后来转到了测试岗位, 我想主要是女生比较细心吧。

   我在IBM见过一个非常优秀的测试人员: 她不仅仅能出色完成上面说的工作, 还可以参与设计开发的讨论, 经常能从测试角度提出开发人员都没有想到的问题,极大的帮助提升了软件的质量。

 

4、数据库管理员

   几乎所有项目都需要数据库的支持, 对于大型,超大型项目, 会有一个叫做DBA的职位。他对数据库知识极为精通,平时对数据库进行管理, 开发时能帮助开发团队设计数据库,并且找出性能瓶颈, 进行性能调优。 

 

5、美工/文档

   美工: 就是对界面进行美化了,一般是由美工先出界面原型, 大家讨论,修改,确定后美工会生成各种界面元素,像图标,按钮等。

   现在对美工也有一定的技术要求, 不仅仅是画界面,还要把html模板做出来, 所以美工需要懂得 HTML,  CSS, 甚至部分Javascript。 

   程序员拿到html模板后,往上添加业务代码即可。 

   文档编写人员:小项目一般是有人兼职做, 大的项目,产品会有人专职写文档, 我2003年的时候参与过上海证券交易所的项目, 看到有个专职的文档编写人员写的Word , 是在是太专业了, 那个精美  啊,完全是可以直接出版的水准。  

   我把它copy下来,自己都想山寨一个, 照葫芦画瓢都做不出来。

 

6、项目管理

    项目已经开始了, 业务分析师, 架构师, 开发,测试等人一群人如饿狼扑食,势必要把项目撕个粉碎。

    可以这么多人怎么协作?  如何管理? 进度能不能按要求完成?   这就需要项目经理出马了。 

    项目经理,说白了就是带着大家做项目, 主要和人打交道, 需要协调各个方面的关系, 保证项目的进展顺利。 

 

    问: 项目经理需要懂技术吗?

    答: 当然需要, 最好是开发出身, 要不然你就听不懂那帮码农再说什么, 只能在表面漂浮着, 没法深入项目,别人也就不服你 , 肯定是带不好团队的。 

 

7、运营

   如果你是在开发自己的产品, 开发完成以后, 马上就会遇到一个问题, 怎么推广?

   在互联网时代,世界是平的, 竞争异常激烈,一个好的软件,或者App, 或者网站, 缺乏运营, 你的技术再好也不行。

   运营其实就是想方设法让你的产品被人知道, 被人用起来,这里边水很深,例如怎么写个软文? 怎么在社交网络,微信,微博进行营销? 怎么统计,分析,精准的定位?

   这方面, 2014年以前的小米绝对是典范。 雷军的7字诀:专注,极致,口碑, 快,  黎万强的《参与感》 都是经典。

   好的互联网运营人才奇缺, 当然非常的吃香。

   对编程不感兴趣的同学,不妨看看这个方向。 
   说了这么多职业方向, 你会发现, 绝大多数都要求懂一定的技术, 所以我其实想想说的是:

   刚参加工作, 不妨先从程序员开始,  慢慢的再寻找自己感兴趣的方向。

 

 

上一篇:编程和未来的职业
下一篇:普通人如何找到自己的一技之长,并靠它赚到钱?

热门话题

招生热线: 4008-0731-86 / 0731-82186801

学校地址: 长沙市天心区团结路6号

Copyright © 2006 | 湖南大计信息科技有限公司 版权所有

湘ICP备14017520号-3

关注我们
在线咨询
嘿,我来帮您!