首页 程序人生 谈谈程序猿的职业方向

谈谈程序猿的职业方向

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


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


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


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


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手机端码农


主要是 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 字诀:专注,极致,口碑,快, 黎万强的《参与感》 都是经典。


好的互联网运营人才奇缺,当然非常的吃香。
对编程不感兴趣的同学,不妨看看这个方向。 


说了这么多职业方向,你会发现,绝大多数都要求懂一定的技术,所以我其实想说的是:
刚参加工作,不妨先从程序员开始,慢慢地再寻找自己感兴趣的方向。


声明 本站内容部分来源于网络,仅供参考学习交流并不代表本站观念,如无意中侵犯您的权益( 包括/图片/视频/个人隐私等信息 )请来信告知,本站收到信息会尽快处理并回访,联系邮箱:laodilailiao@foxmail.com

站心网

大学生在校期间可能会有这样的疑问:将来就业干啥好呢?如果你是学计算机的,将来想进入软件和互联网行业,..

为您推荐

彩虹目录列表程序v1.5源码下载

彩虹目录列表是一款用PHP开发的目录列表程序,无需数据库,安装简单,使用方便。功能特点:在线预览图片、视频、音频、文本文件、Markdown文件、Office文档等自动识别目录下的README.md文件并展示(类GitHub)后台管..

创造型职业程序员的无奈

编程是为数不多的一种既能满足个人爱好,又能赚钱的职业之一。烹饪是另一个这样的例子。在一般情况下,大多数职业要么不可能让你待在家里(例如医生和电工),要么你没有兴趣在家里做(例如清洁)。同样的,大多数好..

程序员为什么会有职业瓶颈?

1寒冬的思考2019年初,俗话说"金三银四"。这时候面试不知道你们慌不慌张。因为2018年冬天是寒冷的。其实18年的低温持续时间不算很长,我也没有披上军大衣。但是突如其来的互联网寒冬影响了不少人,互联网寒冬当然主..

.NET 主程序的.dll.config文件有什么用?

.dll.config 文件通常是在开发过程中自动生成的,它的主要作用是为某个类库(.dll 文件)提供一个独立的配置文件,以便开发者可以为该类库单独定义或测试配置项。以下是生成 .dll.config 文件的原因和机制:1. 配置..

一个简单的大转盘抽奖程序(附.NetCore Demo源码)

最近闲下来在做一些demo,现在讲一下做的一个简单的大转盘抽奖demo,前端lottery,layui,后端.net core,sqlsugar,数据库用的mysql1.前端实现:前端用的是基于开源的lottery,其中有些改动的,使得前端可以自适应pc端..

关于程序员的职业规划

对于绝大部分从事互联网、程序员的群体来说,看中的不仅是一个白领工作,更重要的是他高薪资的待遇,就当前来说,IT行业发展速度突飞猛进,就业方向和前景更是百家争鸣,如果对自己没有一个明确的目标而漫无目的,那..

从程序媛角度去看项目管理

需求管理下图描述的是程序员从接到需求到开发环节的过程:一般我们首先会收到产品的PRD或交互稿,被询问今天什么时间点是否有空,进行需求评审。时光匆匆,回想起刚毕业那时,我望着冗长的PRD,直接跳过背景、目的等..

程序员不喜欢开放式办公室

英文原文:I Hate Open Floorplans 去年我参观了Adobe位于湾区的办公楼。他们的办公楼真是太夸张了,到处都是很酷的东西,楼顶上有个篮球场,还有风车,以及设计师沙龙。但是,当他们秀他们的开放合作式办公室时,..

降低程序员工作积极性的5件事

工作只是为了钱吗?如果只是为了钱,那为什么有些程序员还是毅然决然地辞职?事实证明,程序员之所以放弃一份薪资优渥的软件开发工作其最常见的原因是失去了激情。 下面就是导致程序员工作积极性骤减的5件事,不管..

做一个编写可调试代码的程序员

所有的程序最好能够以某种形式的日志记录下来,这样能方便我们即时知道现在在做什么。而且一旦出现异常,其重要性就愈加明显了。我们之所以要把程序员分成三六九等,很大一个原因就是,一个伟大的程序员会去写日志..

30多年程序员生涯经验总结

在我 30 多年的程序员生涯里,我学到了不少有用的东西。下面是我这些年积累的经验精华。我常常想,如果以前能有人在这些经验上指点一二,我相信我现在会站得更高。 1. 客户在接触到产品之后,才会真正明白自己的需..

程序员应该少写代码多思考

软件开发的一个最基本的事实是写代码,但是最大的误区之一就是把写代码当做工作。当我作为一个程序员第一次参加工作的时候,就犯了这样的错误。老实说,写代码真的是一件特有意思的事,它的强大功能,它的多种作用..

必须添加对程序集"netstandard, Version=2.0.0.0"错误解决方法

编译.net core项目出现如下错误:必须添加对程序集"netstandard, Version=2.0.0.0"。解决方法是更新.net core2,升级vs2017到15.4版本,升级framework到4.7版本。..

飞飞feifeicms定时自动采集插件程序,飞飞CMS自动采集功能

用途可采集单个资源站也可以采集多项资源资源站使用方法1.首先你要保证你的采集的资源站可以使用2.在飞飞后台创建一个管理员账号,给予采集权限3.下载压缩包,解压放在网站根目录里面有文件linux.php和cfg.phplinux...

.NET初级程序员面试题和答案

以下是10个.NET初级程序员面试题和答案:1. 什么是.NET?答:.NET是一个由微软开发的软件开发平台,用于创建各种应用程序,包括Web应用程序、桌面应用程序、移动应用程序和服务器应用程序。.NET平台包括了各种编程语..

微信小程序开发流程

微信小程序开发是一种基于微信平台的轻量级应用开发。以下是一般的微信小程序开发流程:注册小程序账号: 首先,你需要在微信公众平台注册一个小程序账号。这需要你的手机号和一个有效的邮箱地址。创建新小程序: 登..

人工智能AI会淘汰哪些职业?程序员会被替代吗?

最近OpenAI的ChatGPT大火,很多人都坦言人工智能太强大,可以完成很多日常工作,甚至比人做得更好。人工智能(AI)已经开始影响很多行业,因为它能够自动化很多重复性工作,提高效率和准确性。所以很多人担忧人工智..

.NET程序员常用的10大类库

1.Newtonsoft.Json:用于处理JSON数据的类库,提供了简单易用的API,用于JSON的序列化和反序列化操作。2.SqlSugar:国产ORM 用于简化数据库操作,支持多种数据库。3.Dapper:一个轻量级的ORM类库,简化了数据库操作,提..

从一个程序员的角度看东方甄选“小作文”事件

最近东方甄选“小作文”风波愈演愈烈,开始小编和观众吵架,后面东方小孙本来想要平息风波,而“摔手机”和泄漏董宇辉薪资待遇有激起更大的风波,导致东方甄选粉丝每天都几万,几十万的下降。作为一个消费者,开始是..

程序员:如何做0-1的突破

今天来跟大家分享一下,我们怎么样才能做一件有突破的事情。相信很多同学都熟悉,在工作里面不管作为一个新人还是开发骨干,甚至是技术的主管,都会面临一个问题,就是我们怎么样能够做出一个有突破的事情?这个问题..

发表回复

返回顶部