分享 软件技术人员的技术方向

wushexu · 2013年04月27日 · 最后由 heliang7 回复于 2013年04月28日 · 3545 次阅读

有技术方向自然就有非技术方向,不过这里只讨论技术方向,谈谈我的理解。

不同的技术方向没有高低之分,不管哪个领域要达到顶尖都很难。朝什么方向发展主要跟个人的兴趣有关。

前端工程师

这是很大的一类,几乎所有的软件公司都需要前端工程师。喜欢做前端的人,一般都有一定的审美水平,甚至有点艺术天赋。喜欢直观,不喜欢复杂逻辑。一般不想深入业务,理解不了系统分析师所思考的问题。很多人(大部分)可以自己开发架设一个网站,前端后端都做,(一些人)从而以为自己有全面的能力,什么都可以做,这只是一种错觉。

后端工程师

也是很大的一类,就叫后端工程师吧。这类人对 UI 兴趣不大,一段时间只对一项技术或一个领域感兴趣,甚至是永远专注于一个领域。如 ETL、报表、工作流、数据库、搜索、大数据等。如果不断拓宽知识面,有可能成为架构师。如果专注于一个技术领域,有可能成为这个领域的专家。基础是否扎实决定了能走多远。

系统分析师

系统分析师是一个技术方向,因为系统分析师首先要有相当深厚的技术功力,对技术有全局的理解。同时,业务理解能力、梳理能力很强。要把错综复杂的业务需求转化成软件系统,业务建模能力极为重要,优秀的系统分析师就有这个能力。做前端的,或者没做过复杂业务系统的,可能对业务建模没有概念,或者认识不深。要做复杂的业务系统,系统分析师必不可少。系统分析师比较适合担任项目经理的角色。优秀的系统分析师可能也是一个合格的技术架构师。

(技术)架构师

这里说的架构师是指能力水平,而不是架构师的职位。很多职位叫架构师并不是合格的架构师,尤其是小公司的。要求基础十分扎实,知识比较全面,学习能力很强,对技术有很深的的理解。并不要求懂多少具体的技术,而是对技术有全局的理解,需要哪样都可以拿起来。架构师看的东西,可能一般人难以理解。可能前几天看并行计算,这两天看数据挖掘,可能过两天看神经网络,再过两天看数理统计。 架构师负责整个系统技术上的把控,要求从可行方案中找出更好的方案,而不仅仅是找出一个可行的方案。工程师需要务实的品质,架构师尤其需要。基于实际情况考虑解决方案,而不是个人喜好。有些架构师只关注纯洁术,在处理大数据、高并发等技术问题上很有经验,结合复杂业务进行设计的能力稍弱,这就需要系统分析师的配合。业务分析、建模能力很强的的架构师十分难得。

算法工程师

很多公司并不需要算法工程师,但在有的公司算法工程师至关重要。在有些领域,最核心的技术就是算法。不同领域都会需要算法工程师,但其中应用的知识可能是通用的。比如贝叶斯方法可以用在推荐系统中,也可能用在图像识别软件中;蒙特卡洛方法可以用在某个金融软件,对未来利率变化进行模拟,也可能用在计算机棋类软件中。 能做算法工程师,数学和算法都要有深厚的基础。同时,学习能力也很重要,最好能看懂学术论文,了解最新的成果。如果从书本摘个算法就能解决问题,就不需要算法工程师了。一个推荐系统,命中率 0.9 跟 0.8 可能就有本质的区别。最好的算法工程师都是有学术研究背景的。半路出家做算法工程师是不太可能的。

安全工程师

有些公司不需要安全工程师。必备的知识和能力包括,密码学原理,网络原理,协议分析,公钥体系,以及包括防火墙,入侵检测系统,操作系统,Web 前端安全等等。 和算法工程师一样,也是一个很专业的领域。人的精力有限,我不太相信一个架构师同时也是一个优秀的安全工程师,或算法工程师。

其他

DBA 虽然随着 nosql 的兴起,关系型数据库的使用有下降的趋势,但 nosql 并不能取代关系数据库。在很多领域,事务性必须绝对保证,不容妥协。传统的 DBA 仍必不可少。 操作系统底层 做设备驱动程序、嵌入式系统、实时系统、虚拟化、甚至操作系统本身,都需要深入操作系统底层。

我们这里是 All in one .

记得几年前一次机缘巧合,参加一个由一群 500 强公司的白领组织的活动,其中一个环节,台上的培训师拿出一个九宫图然后问我:在没有任何提示的情况下,你会选择哪一种?我选了一个后,哪个咨询师说你的性格不适合当领导,而且性格决定命运,你的命运…..

现在回想起来,觉得哪个培训师说对了,就算我再努力也当不上领导,看来一切都是命中注定的啊~~~

#2 楼 @lgn21st 没干几年,就去当领导,也不是什么好事。中国这个酱缸社会啊,很难找到有沉淀的程序员。

#2 楼 @lgn21st 我觉得这种测试都是扯淡,人是很复杂的,哪是一个选择题能看清楚的啊

@lgn21st 曾跟你在一次 ruby 聚会上说过几句话,我跟你一个类型的人,不适合当领导,可能干再久,技术再好也不适合当,是性格决定命运。

#2 楼 @lgn21st 哪个图是适合当领导的?下次有人问我的时候,我好回答啊...

@lgn21st 同求,哈哈

我现在想占着后端工程师的坑抢系统分析师的饭 :P

#6 楼 @Saito @lgn21st 领导工程师...

这位培训师颇有江湖术士的范啊

A. 培训师可以对每个人都说"你性格不适合当领导", 说错的几率很小,说错了也能引起好奇... B. 我怀疑选任何一格的性格都不适合当领导,适合当领导的会说"你给我选一个"之类的...

#6 楼 @Saito #8 楼 @luikore

培训师的价值就在于让你意识到你不适合,然后让你明白是命运让你遇到他,他才是你的救星,辛亏今天他帮你点破,然后后面你想改变自己的命运的话…呵呵,不用培训师提醒,你知道应该怎么做了吧?

#9 楼 @lgn21st 一直瞧不起用嘴巴去忽悠钱的职业

#2 楼 @lgn21st rubyconfchina 这么大的项目你就组织的很好啊,谁说你不合适的。。。

不要跳入框框

@bydmm 最无奈的现实是啥职业没有能忽悠的嘴一样很难赚钱

#11 楼 @xmonkeycn 忽悠师可以这么自圆其说——”这恰恰说明你是一个执行者而不是一个领导者“

#14 楼 @fsword 果然是忽悠师。ls 有忽悠师的潜质!

想起日剧里面的“欺诈师”

需要 登录 后方可回复, 如果你还没有账号请 注册新账号