导航:首页 > 程序命令 > 程序员必经之路图片

程序员必经之路图片

发布时间:2022-05-18 21:46:14

‘壹’ java程序员的就业前景怎么样

Java就业方向大致分为两类:
成为管理人员,例如产品研发经理,技术经理,项目经理等。继续他的技术工作之路,成为高级软件工程师、需求工程师等。根据IDC的统计数字,在所有软件开发类人才的需求中,对Java工程师的需求达到全部需求量的60%~70%。同时,Java工程师的薪水相对较高。 Java软件工程师一般月薪范围在4000-10000元,远远超过了应届毕业生月薪2500元的平均水平。通常来说,在尚硅谷学习JavaEE和云计算后有一年工作经验的Java高级软件工程师的薪酬大致在年薪11—15万左右。
从Java的应用领域来分,Java语言的应用方向主要表现在以下三个方面:首先是大中型的商业应用;其次是桌面应用,就是常说的C/S应用;再次是移动领域应用。综上而言JAVA就业方向为:可以从事JSP网站开发、Java编程、Java游戏开发、Java桌面程序设计,以及其他与Java语言编程相关的工作。可进入电信、银行、保险专业软件开发公司等从事软件设计和开发工作。

‘贰’ 三流程序员如何转行

首先三流的程序员不叫程序员,那叫做码农。而你要是想混的好。那你就要摆脱码农的身份,往真正的程序员的方向走!

第一步,告别码农,学习新知识。

之所以叫码农就是因为你们收割的拿回来的不过是别人的辛苦产物。随便抄一下就能用了。所以就叫做码农。你们根本没有所谓的原创程序也没有拿得出手的技术和成绩,所以就一直把自己当三流程序员,其实你们就是码农。

所以你们应该先告别码农的身份,从一个程序员的角度来看待问题。不要遇到代码的事情就要去找别人做的东西。借鉴可以,但是东西还是自己做的好。

这个时段不但是要接受锤炼和多次的打击更是要学习新鲜的知识,跟上现在的程序员的潮流。这样你才能第一步脱开码农的身份。

第二步,跳槽去更能发展的地方,而不是在这里吃老本。

不要停留在你学习不到新鲜知识和东西的地方。程序员是最容易跳槽的职业。因为职业的构成就是要不断的跳槽出去学习然后进步的。所以不要担心自己跳槽的速度快或者经常要找工作。这是你要成为一流的可以混吃等成绩的程序员的必经之路。

这一条路上你不但要吃苦还要多学习多进步。这种情况可能会持续5-8年左右,所以一定要做好心理准备,切记做好心理准备!

第三步,巩固现有的,成为一个优秀的混的好的程序员。

一般来讲这个时候你已经快35岁左右了。但是更好的未来就在前方,下面就不用教你怎么做了。因为你已经习惯了一个程序员的生活了。下面就是坚持不懈继续努力的了。

‘叁’ 你印象中的程序员

没有情调,不懂浪漫,也许这是程序员的一面,但拥有朴实无华的爱是他们的另一面。

我个人感觉印象中的程序员就是,头顶英年早秃,发际线英年上移(开玩笑的说),其实我朋友做程序员的就会下意识的看我的头发,说不像啊,其实很多程序员的时毛发浓密的,并不是所有的都聪明绝顶,很多程序员的智慧是“掩盖”着的!

在网上看到一句关于程序员的话:

我的代码曾运行在几千万用户的机器上,作为一个程序员,还有什么比这更让人满足的呢?如果有,那就是让这个用户数量再扩大 10 倍。

我感觉程序员是值得我们尊敬的。,程序员的双手是魔术师的双手。 他们把枯燥无味的代码变成了丰富多彩的软件(现在我们使用的健康码,行程码)。

程序不是年轻的专利,但是,他属于年轻……

‘肆’ 一个程序员所要经历的步骤

程序员应具备的12种能力
毕业四年来,感觉自己也是从一名不合格的程序员一步步走过来的。回头反思一下,合格的程序员有很多标准和要求,下面是我总结的一个合格程序员应该具备的12种能力。中国软件行业的崛起,靠的是合格的程序员。任何华丽的管理制度都不能保证软件项目的成功交付,合格的程序员就是有力的保证,是项目成功的基础。写下这些,是为了给刚刚进入程序员这个职业的新同学们一点参考。我一直以为,当程序员是很辛苦的,如果不是真正的喜欢,很难坚持下去。如果真的不喜欢这个职业,也该尊重这个职业,尊重自己,赶紧改行。

1. 编程语言能力

不用多说,作为合格的程序员,精通一门语言是必须的。这种精通,不是说看了一本《24小时精通XXX》,抄了几个程序就能说精通的,要靠长时间的积累和浸淫。

2.编码能力

我曾经看多很多程序员写的代码,在同一个jsp或者java源文件里,出现了三种以上的对方法的命名方式,有下划线间隔的,有全大写的,有拼音首字母的。就像一个菜市场,杂乱无比,估计10天后,他自己都无法看的懂。遵守编码规范,是一个程序员最基本的要求,可悲的是,很多程序员根本没有意识到这个问题的严重性。随意堆砌网上搜来的代码,根本不管可读性和可维护性,只要能实现功能就行了,心想做完这个项目,就拍拍屁股走人了,缺少最基本的职责素养。我经常把代码必须成程序员的孩子,你就是是孩子他爹,孩子他妈,是有感情的。对你自己的孩子,你能不仔细呵护吗?你是称职的父母吗?这是我编写的一个Java编码规范,供大家参考,这里可以下载http://gurudk.javaeye.com/blog/111734

另外一个就是注释,要注意不是为了注释而注释。对类,以说明职责为主;对方法,以说明意图为主;对方法体,以说明实现思路为主。对于大段大段的代码,要分段,使用空行隔开,并使用行内注释进行说明。

思维的条理性,写代码之前,先简单计划一下,用自然语言把流程写下来,用于整理实现思路。不要看了需求或设计之后,马上就敲代码了,敲完代码马上就debug。花点时间思考,敲代码只是最后一个很简单的工作,不要把自己变成一个代码打字员,编写边想,写了删,删了写。安安静静把实现过程想清楚,在脑子里先实现一遍。再去敲代码,水到渠成。

3.面向对象思维能力

如今,多数编程语言都是面向对象的编程语言。而这些面向对象的编程语言的共同的精髓就是面向对象的思想。掌握这些比面向对象语言本身更重要,比如对继承,多态,重载的理解。对面向对象基本原则的理解,比如开闭原则,接口隔离原则,单一职责原则等。在此基础上,应该掌握常用的设计模式,比如工厂模式,策略模式,观察者模式,模板方法模式,命令模式等等。我面试过很多程序员,没有一个能说得上几句的。

4.利用工具能力

工欲善其事,必先利其器。有了趁手的家伙,工作效率可以提升数倍。你编程序,有没有选择一个很好的IDE,以前听说编程高手都用记事本写程序,我觉得那是一种自虐。就像以前看到的一篇文章,说一帮户外旅行爱好者,出去旅游,背了重重的旅行包,里面装着什么压缩饼干等快速食品。他们宁可就着矿泉水啃压缩饼干,也不肯去1里路都不到的快餐店,农家菜馆吃饭。工具是为目的服务的,好用,提高效率就行,形式无所谓。

另外一个常用的工具就是日记本,好听点可以称为知识管理工具,我用的是myBase,感觉非常好用,在之前,我的所有的片段内容都是记录的单独的文本文件里的,非常不好找,管理也很混乱。

经常上互联网,看到好多好的资料想保存下来,作为日后查看之用.一开始,我用的是firefox自带的书签,但是自己分类太累,多了之后不便于查找,很麻烦。后来用了得乐书签(del.icio.us)的firefox插件,非常方便,现在成为了我必备的一个工具。

还有一个最重要的工具就是搜索引擎了,我装了google forfirefox插件,感觉不错,还有英文翻译功能。按照我同事的说法,内事用,外事用google。很多技术资料都是英文的,用google搜索效率高一些。搜索引擎用好了,就等于打开了一扇通向知识宝库的门,使用搜索引擎,关键字选择很重要。

经常去浏览大牛的blog,逐个网站访问很麻烦,去看了又可能没有更新,可以借助于RSS订阅工具,我是用iGoogle桌面工具,每天早上花半个小时扫一下,大牛的最新文章尽收眼底了。

5. 英语能力

新的技术资料都是英文的,英语国家的IT技术走在我们前面至少10年(这是我自己估计的数字,可能正在缩小)。就连印度,一个连基础设施建设都不太完善的国家,因为其英语基础较好,其在软件外包领域的发展也非常迅猛,远远超过了我们。学英语,首先是有信心,其次就是花时间。多阅读英文资料,使用金山词霸,google的firefox插件等工具配合,贵在坚持。

6.学习能力

在IT也混饭吃不容易,整个环境进化的太快,你不学习,就等于落后了。学习要有针对性,别今天学ruby,明天学python,后天php的。首先要认清自己的目标,自己短期目标是什么,1年后,3年后,5年后的目标是什么。结合这些目标,确定自己的学习计划,人的精力毕竟是有限的。当然,多掌握几门编程语言也是好的,可以扩充自己的知识面,重要的是为自己的目标服务。

要想系统的学习一门技术或工具,看书是最好的方法。看完后,然后上网找相关资料,进行深入学习。学习要抓紧一切可以利用的时间,比如电脑启动要花1分多钟,旁边放一本书,可以看上几页了。公交车上,地铁上也可以看。

当然,不能只学习技术,要经常联系自己的软技能,比如沟通能力,表达能力。你可以把自己学到的东西,解释给自己的同事听,既加深了理解,又增进了同事之间的交流。学习的最高境界就是你能够把学到的东西解释给别人听,这才说明你理解了。在学习心理学上,称之为构成主义。

我学一样东西,总是先上网了解有没有相关书籍,如果想学,就买一本或者去图书馆找相关的书来读。我买的书,家里快放不下了(到目前位置,我买了1万多块的书)。我多半是把目录看完,了解这本书讲解的主要内容,然后需要的时候,我就可以立即补充它进入到我的知识结构。每个人可能都有自己的学习方法,意识到学习的重要,并能够根据需要补充自己的知识,这种能力更重要。

7.创造能力

普遍认为,东方人模仿能力很强,但创造能力差。我见过很多这样的程序员,经常说,“这个只能这么解决了,我想不出有什么别的方法。”可能他根本都没想过别的方法,或者懒得去想。对任何一个问题,找出两种以上的解决办法都是非常容易的,简单的google一下,可能就是数十种。悲哀的是,有些程序员经常止步于自己构建的狭小领地之内。对待客户也是这种态度,不是积极的帮助客户解决问题,而是推脱这只是唯一解决方案。

打破这一思维定势的首先的一个办法就是在面临一个问题时,首先想到的是“没有不可能”,或是“一切皆有可能”,前面那个是阿迪的广告语,后面是李宁的。只有这样去想,才能寻找解决问题的别的出路,即使最后我们试了很多种办法,还是只有着一种解决方案,但我们在这种寻找解决方案的过程中,常常会产生很多好的想法,这样才会使我们真正深刻思考一个问题。建议大家看一看《水平思考》这本书,他提供了一些进行创造性思考的方法和工具。

但我认为,坚持认为存在另一种解决方案的信念是第一位的,方法和工具都是其次。

8.文档能力

也许有人会质疑,程序员跟写文档有什么关系。大家开源软件也用过不少,看看Spring,hibernate,Struts等最流行的开源软件的文档就知道,他么的tutorial,他们的getstarted,他们的reference文档写的多么的易懂。其实写代码也相当于写文档,只不过用的是编程语言。同样,写文档,用自然语言,也相当于写程序,简单明了,清晰易懂,这样的“程序”谁看谁舒服。同样,对于想进阶到设计师或者需求分析员角色的程序员,文档能力更是非常重要。

word是一个最实用的工具,很多程序员,多级编号都不会用,索引目录也不知道如何生成,更别灵活应用样式了。很多排版都是所谓的dirty work。垃圾样式一大堆。其实,静下心来,稍微学习一下,就能写出一篇格式漂亮的文档。

9.抽象能力

抽象能力是认识事物从现象到本质的能力。如果你只是停留在“见山是山,见水是水”的层次,客户说什么,你就做什么,设计怎么做,你就怎么实现,从来不过问为什么,也不去想他是满足了用户哪些方面的需求呢。这样可能只解决了表面的问题,可能会引起返工。认识到本质,才能让你的程序具备更大的灵活性和可扩展性。在做企业应用软件开发中,抽象能力体现为对问题域的理解能力,对领域模型的抽象。合理的抽象也是代码重构的前提,每一次重构,都是向更好的抽象迈进了一步。

10.代码评审能力

代码评审和单元测试是保证代码质量的两种常用手段之一。代码评审能力,说明了你的审美标准,知道什么是好的,什么是不好的,什么是优雅的代码,什么是糟糕的代码,你才能让自己做的更好。

11.单元测试能力

没有单元测试的代码,只能说是半成品。因为没有什么能证明你的代码是可以运行的。测试驱动开发是一个非常好的敏捷过程的最佳实践。单元测试还可以作为回归测试,在修改代码时,起到警戒线标志的作用。是否具有单元测试的意识是区分程序员是否合格的重要标准。写不写单元测试是区分平庸程序员和优秀程序员的重要标杆。

12.DRY
DRY是一种原则,就是Don't RepeatYourself.出自《程序员修炼之道-从小工到专家》。这条原则可以用到很多地方,比如你经常要编译,打包,部署应用程序,供集成测试用。每次你都在重复你自己,写一个自动化脚本(比如用ant,批处理命令)来将这些工作自动化,以提高效率。

还有一个就是我们经常在不同的地方切换IP,如果每次手工做,也非常浪费时间,写一个bat命令可以解决,找一个小工具也可以解决。

编码时,对代码的复用也是在重复你自己,虽然拷贝过程很爽,但是维护一致性就要付出巨大的工作量,特别是将来维护的人不是你的时候,使用代码生成工具可以解决这个问题。类似的例子太多了,如果你发现你经常做一些重复的工作,就要警惕了,是否违背了这个原则,想一些办法将他们自动化。

‘伍’ Java的职业发展是怎么样的

1、软件设计师

其实很多程序员走到这个阶段已经在做软件设计师工作了,这是绝大多数程序员发展的必经之路。

程序员在编程序的时候,一方面会实现设计的功能,另一方面也在对设计有一个理解、认识、熟知的过程,进而慢慢地从学习别人设计,转向到自己参与或独立设计。

如果这个程序员真的非常非常喜欢程序员这个职业,则可以转向软件设计师。这个转变很大程度是程序员意识的转变,就是说要把编程的时间,逐步分摊到软件设计上,要把重点从编程实现转变到项目的功能设计上。

我这里强调的是“逐步”的一个过程,程序员要逐步减少编程的时间,增加设计的时间,要克服编程的强大吸引力,要主动地攀上设计这个台阶。很难有一个设计师是完全不编程的,而且我认为,会编程的设计师才是真正的设计师,一般这种转变需要花上一到两年时间。

2、 项目经理

也有一些程序员工作机遇比较好,不但负责了项目的设计工作,而且负责了项目管理工作,对项目经理这个工作有了一定的尝试。因此,这类程序员可以审视一下自己,是否合适这项工作,如果自己对这种工作比较满意,而且具备项目经理的要求,则可以向项目经理这个方向发展。

项目经理承担着项目管理的职责,对项目负主要责任。它和程序员的作用也不相同,项目经理的重点已经从编程转移到对人、对技术、对进度、对项目的管理。由于软件的项目经理与软件项目的相关性太大,因此,他必须要了解软件开发的各个环节、了解开发的各种技术和运用、了解开发队伍人员的水平和特点,所以他依旧和程序员脱不了干系。

从程序员到项目经理可以使得项目经理更好地理解程序员在项目中的地位和作用,了解软件开发的各种规律性的东西,从而保证项目的正常完成。

而且,项目经理的收入在公司中的地位也是比较高的。因此,我认为走向项目经理是程序员的另一个发展空间。

我想提醒一下,程序员在担任项目经理之前最好要把软件设计工作做好,这样在做项目经理的时候,就会有很好的基础。

3、 管理者

很多程序员希望自己能成为公司中的主管、经理、老总、老板,这样无论是收入和在公司的地位都相对比较高一些。另外,一方面程序员可能厌倦了年复一年的编程工作,对工作产生了抵触情绪,希望能摆脱这种步步紧逼的工作状态。

走向管理者其实要求程序员要比一般人做更多的准备,要做更多的转型工作,并不是想当管理者 就能成为管理者的。但是,如果程序员有这个志向和爱好,有积累了这方面的工作经验,自己也感觉在这个方面能够发展,更重要的是有这样的机会,走向管理者也 是可能的。

由于软件公司的管理者毕竟不同于一般公司的管理者,专业能力越强,管理起来就越得心应手的,没有专业能力的管理,遇到的问题很多,也很难解决。

因此,我的建议程序员最好要把编程、项目设计、项目管理等基础打打好,这样转型到管理者成功率就会高一些。

4、 软件营销

我一直说,程序员最大的缺点之一,就是眼光只盯在技术上,在入门阶段和成长阶段,这种情况还是属于正常的。但是,到了成熟阶段这种缺点将会严重影响程序员的发展。

程序员在工作中不免会接触到用户,不免会了解到用户的需求。从而了解到软件实际发挥的作用,进而了解了自身的工作价值所在。有的程序员则固步自封,不愿意和外界打交道,从内心里坚守技术底线。而有的程序员则喜欢和外人交流,喜欢把自己的软件推荐给用户,而且用户也乐意接受这种专业的介绍,用户的接受是程序员价值的直接实现,程序员因此获得了工作成就感。

这类的程序员可以将自己的专业知识和产品营销结合在一起,推动软件的销售和服务,转向软件营销职业。这个职业将是一个比程序员更有发展的职业,它可以直接反应程序员的工作能力和工作成果,程序员的收入和销售会直接挂钩。

因此,可以让有销售才华的程序员获得更高的收入,接触到更大的软件市场,看到更广的个人发展空间。

5、 原地发展

当然也有一些程序员惰性比较大,满足于现状,享受着眼前的胜利果实,这也无可非议。对待这些程序员,我们不要强求他们改变自己的想法,我建议是原地发展,把本职工作做得更好,把自己的技术水平往上再提高一步。

在这个过程中他们的能力和自信心都会得到提高,他们的想法不会一直一成不变的。磨刀不误砍柴功,刀快了自然会去砍柴的。

不管做哪一行,都该尽早做好职业规划,人都是需要有一个目标去激励自己,Java程序员更是如此。朝着一个目标逐步提升自身实力总会比原地打转好,相信聪明的你该知道怎么做。

‘陆’ 程序员工作到底能干多久程序员的前途如何

千千万万的程序员们一直困惑程序员的前途如何、程序员工作到底能干多久的问题。目前比较普遍的认识,程序员的职业通道有两条进阶路线。一条 是技术路线,即由程序员、高级程序员、系统分析师,到架构设计师。在这条路线上,立足于从业务模型到计算机软件模型的转换,成为高端的软件技术工作者。另 一条是管理路线,即由程序员,经开发小组负责人、项目经理,再到企业中高层管理者。程序员加强自己管理意识的培养,多站在组织的角度来分析问题和解决问 题,成为优秀的管理者,甚至职业经理人。 近年来,产品管理成为企业多产品经营形势下一个越来越受重视的管理课题。特别是知识经济环境下,诸如互联网与软件、创意、传媒等现代新型产业链中, 其几乎可以忽略不计的复制成本,有竞争力的产品与优秀的产品管理成为了制胜的关键。基于产品的商业化运营,在越来越具聚合效应的网络时代,扁平经营、草根 聚合、精准营销、直通车服务等全新的经营环境常常造就了赢者通吃的局面,以产品为中心的企业管理逐渐形成独立的产品管理体系,被众多企业所关注和采用。 在软件企业中,随着产品管理的兴起,可以说,走向产品,是程序员在技术与管理之外的第三条职业通道。越来越多的程序员开始转型做产品工作,特别是对 那些具有创业意识的程序员而言,走向产品是一条必经之路。腾讯的马化腾和360的周鸿祎,他们都是由程序员做起,然后开创自已的产品和事业。 产品管理的兴起,产生了以产品经理为中心的产品工作职业方向。产品职业方向可以从产品系列的职务与岗位两个维度来观察。职务上,有首席产品官 (CPO)、产品总监、产品经理、产品专员、产品助理,其中尤以产品经理一职最为中心;岗位上,有产品竞争分析与用户需求管理、产品创意与策划、产品原型 设计、产品运营规划、产品实现过程跟踪、产品商品化实施、产品运营、产品经营成果分析与跟踪、产品升级维护管理、产品管理体系与制度建设、产品人员技能培 养等。这些基于产品而设计的岗位以有效满足用户需求为中心,它不同于其它以专业技术和职能效率为中心的因职能分工而产生的岗位。 产品管理是近些年随着IT和互联网的快速兴起而被各企业所重视,而现在的各大院校并没有产品管理相关的专业,各类培训机构也少有类似培训课程,从事 产品工作的人员大多是从不同专业、不同岗位转型过来的。相比较而言,程序员有着营销、测试、客服等岗位走向产品的人员所难以比拟的优势。有些公司甚至做出 了规定,欲从事产品工作,必须要有多年的软件开发经验。程序员转型从事产品工作所具有的独特优势主要包括以下几点: 第一,程序员能够更好地理解产品的实现方案,所策划的产品更具可行性。做产品策划工作,也许缺的不是点子或创意,而是有效可行的方案。多年的程序员 工作经验,对软件技术和软件实现方案的判断,可以规避那些天马行空的产品想法,工作更有成效。比如在整理用户需求时,程序员的前期有效判断和可行性辨别, 会大大提高产品的策划质量与速度。程序员出身的产品人员可以和研发人员进行无隙的沟通,用更便于研发人员理解的语言和思路来进行产品方案的解读和跟进。 第二,程序员的软件开发工作,与其说是代码的编写,不如说是逻辑语句的组织。程序员一般都具备严密的逻辑思维能力,这是进行纷繁而杂乱的需求分析和 产品概念设计必备的优势,更有利于从中分门别类理清脉络关系,转换为产品功能规划,把产品做成精品。例如需要往U盘写文件,产品人员可能只想到正常的操作 逻辑,但程序员可能会想到更多异常情况,如:U盘损坏、传输过程中拔出、断电、传输的文件损坏、U盘写保护、重复文件、焦点位置、空间不足等等。再有,好 的用户体验的产品,在本质上,就是产品功能的逻辑展示,或者说用户操作的逻辑引导。 第三,程序员往系统分析的技术方向发展,从本质上来说,同往产品策划方向发展是相通的,都需要对真实世界本质关系有着充分的理解与把握。能够走向系 统分析员的优秀程序员,完全有可能成为一个优秀的产品策划人员。差别在于系统分析员的工作成果是面向程序员、面向计算机,而产品策划是面向用户、面向市 场。每一名程序员也必定是某个软件产品开发工具的使用者,有深厚的软件产品使用体验,具有从用户出发来表述问题的基础。 第四,程序员一般都具有快速学习能力,保持对计算机相关行业动态和技术革新的观察与思考,这在一定程度上会培养对行业与技术的洞察力。产品策划和设 计工作,最后能否获得市场的成功,考验的正是这种洞察力。因为产品工作是时时围绕解决的是什么人的什么问题来开展,也就是始终围绕做正确的事。只 有对行业与技术有洞察力的人,才能够站在用户需求的角度来理解与体验,激发创意,做出好产品来。 当然,程序员虽具备上述独特优势,并不等于程序员转做产品工作,就一定能够成功。要策划出好的产品,要成为一名优秀的产品经理,他们也面临着各种挑战: 第一,创新和结构化思维的冲突。 结构化思维可以说是程序员的典型标志,这种思维模式对于把一件事情做好是很重要的,但它往往也会是创新思维的天敌。创新却是产品工作的灵魂,程序员需要不断打破常规激发灵感才能做好产品工作,就必须克服已经形成的思维定势。 第二,团队协作与英雄主义的矛盾。 程序员往往习惯于单打独斗的工作方式,崇尚技术牛人,缺少团队协作意识和与人沟通的技能。产品工作则需要大量的沟通协调,甚至组织领导工作,强调的是团队作战。在合作精神方面,想要转向产品工作的程序员的确亟待加强。 第三,商业意识和市场运营知识匮乏。 特别是在全面产品管理思想下,产品人员需要有很强的市场营销方面的知识和商业化运作的策划与分析能力,仅仅把产 品做出来是不够的,卖得掉才是硬道理。产品策划的环节,面临着营销模式、目标用户、渠道选择、竞争策略等的选择与设计,这也是摆在技术出身的程序员面前的 重要课程。 每个企业,都会根据自身所在行业特点和本企业的资源优势,来部署不同形式的产品管理机制。程序员针对自己的性格特点和能力特征,抓住产品管理这一方兴未艾的职业机遇,走向产品,以优秀产品经理的能力模型培养来规划学习道路与职业生涯,是值得重视的一个职业方向。 ------------------------------------------------------------------------------ 安徽高新专修学院

‘柒’ 程序员工作到底能干多久程序员的前途如何

千千万万的程序员们一直困惑“程序员的前途如何”、“程序员工作到底能干多久”的问题。目前比较普遍的认识,程序员的职业通道有两条进阶路线。一条 是技术路线,即由程序员、高级程序员、系统分析师,到架构设计师。在这条路线上,立足于从业务模型到计算机软件模型的转换,成为高端的软件技术工作者。另 一条是管理路线,即由程序员,经开发小组负责人、项目经理,再到企业中高层管理者。程序员加强自己管理意识的培养,多站在组织的角度来分析问题和解决问 题,成为优秀的管理者,甚至职业经理人。近年来,产品管理成为企业多产品经营形势下一个越来越受重视的管理课题。特别是知识经济环境下,诸如互联网与软件、创意、传媒等现代新型产业链中, 其几乎可以忽略不计的复制成本,有竞争力的产品与优秀的产品管理成为了制胜的关键。基于产品的商业化运营,在越来越具聚合效应的网络时代,扁平经营、草根 聚合、精准营销、直通车服务等全新的经营环境常常造就了赢者通吃的局面,以产品为中心的企业管理逐渐形成独立的产品管理体系,被众多企业所关注和采用。在软件企业中,随着产品管理的兴起,可以说,走向产品,是程序员在技术与管理之外的第三条职业通道。越来越多的程序员开始转型做产品工作,特别是对 那些具有创业意识的程序员而言,走向产品是一条必经之路。腾讯的马化腾和360的周鸿祎,他们都是由程序员做起,然后开创自已的产品和事业。产品管理的兴起,产生了以产品经理为中心的产品工作职业方向。产品职业方向可以从产品系列的职务与岗位两个维度来观察。职务上,有首席产品官 (CPO)、产品总监、产品经理、产品专员、产品助理,其中尤以产品经理一职最为中心;岗位上,有产品竞争分析与用户需求管理、产品创意与策划、产品原型 设计、产品运营规划、产品实现过程跟踪、产品商品化实施、产品运营、产品经营成果分析与跟踪、产品升级维护管理、产品管理体系与制度建设、产品人员技能培 养等。这些基于产品而设计的岗位以有效满足用户需求为中心,它不同于其它以专业技术和职能效率为中心的因职能分工而产生的岗位。产品管理是近些年随着IT和互联网的快速兴起而被各企业所重视,而现在的各大院校并没有产品管理相关的专业,各类培训机构也少有类似培训课程,从事 产品工作的人员大多是从不同专业、不同岗位转型过来的。相比较而言,程序员有着营销、测试、客服等岗位走向产品的人员所难以比拟的优势。有些公司甚至做出 了规定,欲从事产品工作,必须要有多年的软件开发经验。程序员转型从事产品工作所具有的独特优势主要包括以下几点:第一,程序员能够更好地理解产品的实现方案,所策划的产品更具可行性。做产品策划工作,也许缺的不是点子或创意,而是有效可行的方案。多年的程序员 工作经验,对软件技术和软件实现方案的判断,可以规避那些天马行空的产品想法,工作更有成效。比如在整理用户需求时,程序员的前期有效判断和可行性辨别, 会大大提高产品的策划质量与速度。程序员出身的产品人员可以和研发人员进行无隙的沟通,用更便于研发人员理解的语言和思路来进行产品方案的解读和跟进。第二,程序员的软件开发工作,与其说是代码的编写,不如说是逻辑语句的组织。程序员一般都具备严密的逻辑思维能力,这是进行纷繁而杂乱的需求分析和 产品概念设计必备的优势,更有利于从中分门别类理清脉络关系,转换为产品功能规划,把产品做成精品。例如需要往U盘写文件,产品人员可能只想到正常的操作 逻辑,但程序员可能会想到更多异常情况,如:U盘损坏、传输过程中拔出、断电、传输的文件损坏、U盘写保护、重复文件、焦点位置、空间不足等等。再有,好 的用户体验的产品,在本质上,就是产品功能的逻辑展示,或者说用户操作的逻辑引导。第三,程序员往系统分析的技术方向发展,从本质上来说,同往产品策划方向发展是相通的,都需要对真实世界本质关系有着充分的理解与把握。能够走向系 统分析员的优秀程序员,完全有可能成为一个优秀的产品策划人员。差别在于系统分析员的工作成果是面向程序员、面向计算机,而产品策划是面向用户、面向市 场。每一名程序员也必定是某个软件产品开发工具的使用者,有深厚的软件产品使用体验,具有从用户出发来表述问题的基础。第四,程序员一般都具有快速学习能力,保持对计算机相关行业动态和技术革新的观察与思考,这在一定程度上会培养对行业与技术的洞察力。产品策划和设 计工作,最后能否获得市场的成功,考验的正是这种洞察力。因为产品工作是时时围绕“解决的是什么人的什么问题”来开展,也就是始终围绕“做正确的事”。只 有对行业与技术有洞察力的人,才能够站在用户需求的角度来理解与体验,激发创意,做出好产品来。当然,程序员虽具备上述独特优势,并不等于程序员转做产品工作,就一定能够成功。要策划出好的产品,要成为一名优秀的产品经理,他们也面临着各种挑战:第一,创新和结构化思维的冲突。结构化思维可以说是程序员的典型标志,这种思维模式对于把一件事情做好是很重要的,但它往往也会是创新思维的天敌。创新却是产品工作的灵魂,程序员需要不断打破常规激发灵感才能做好产品工作,就必须克服已经形成的思维定势。第二,团队协作与英雄主义的矛盾。程序员往往习惯于单打独斗的工作方式,崇尚技术牛人,缺少团队协作意识和与人沟通的技能。产品工作则需要大量的沟通协调,甚至组织领导工作,强调的是团队作战。在合作精神方面,想要转向产品工作的程序员的确亟待加强。第三,商业意识和市场运营知识匮乏。特别是在全面产品管理思想下,产品人员需要有很强的市场营销方面的知识和商业化运作的策划与分析能力,仅仅把产 品做出来是不够的,卖得掉才是硬道理。产品策划的环节,面临着营销模式、目标用户、渠道选择、竞争策略等的选择与设计,这也是摆在技术出身的程序员面前的 重要课程。每个企业,都会根据自身所在行业特点和本企业的资源优势,来部署不同形式的产品管理机制。程序员针对自己的性格特点和能力特征,抓住产品管理这一方兴未艾的职业机遇,走向产品,以优秀产品经理的能力模型培养来规划学习道路与职业生涯,是值得重视的一个职业方向。沈阳师范大学火热招生中!

‘捌’ 寻找一张关于程序员敲代码的动态图片

平均天100行有效代码我觉得对得起自己了纯手工写C++

前做web报表系统人家写好了张报表我拿来照着套生产其报表连html估计天能干上万行几十张报表干……

关键花思考和查资料上时间比敲代码多得多
sdmjxsfcry参考哈·····

‘玖’ Java软件工程师的职业规划如何走

哇~ 你是为数不多提这个问题的人~

其实工作这么久我也在想这个问题,为什么周围的同事每天都愿意干着重复无聊的活儿呢?感觉大多数的人对于Java攻城狮的职业规划都不清晰,甚至是根本没有考虑过的。

而这个是需要在就业前就想好的啊!

下面我细说一下,看能不能解答你心中的疑惑~

大体来说,分五个方向:

1、 走向软件设计师

其实很多程序员走到这个阶段已经在做软件设计师工作了。这是绝大多数程序员发展的必经之路。因为,程序员在编程序的时候,一方面会实现设计的功能,另一方 面 也在对设计有一个理解、认识、熟知的过程。进而慢慢地从学习别人设计,转向到自己参与或独立设计。如果这个程序员真的非常非常喜欢程序员这个职业,则可以 转向软件设计师。这个转变很大程度是程序员意识的转变,就是说要把编程的时间,逐步分摊到软件设计上,要把重点从编程实现转变到项目的功能设计上。我这里 强调的是“逐步”的一个过程,程序员要逐步减少编程的时间,增加设计的时间,要克服编程的强大吸引力,要主动地攀上设计这个台阶。很难有一个设计师是完全 不编程的,而且我认为,会编程的设计师才是真正的设计师。一般这种转变需要花上一到两年时间。

2、 走向项目经理

也有一些程序员工作机遇比较好,不但负责了项目的设计工作,而且负责了项目管理工作。对项目经理这个工作有了一定的尝试。因此,这类程序员可以审视一下自己,是否合适这项工作。如果自己对这种工作比较满意,而且具备项目经理的要求,则可以向项目经理这个方向发展。项目经理承担着项目管理的职责,对项目负主 要责任。它和程序员的作用也不相同,项目经理的重点已经从编程转移到对人、对技术、对进度、对项目的管理。由于软件的项目经理与软件项目的相关性太大,因 此,他必须要了解软件开发的各个环节、了解开发的各种技术和运用、了解开发队伍人员的水平和特点。所以他依旧和程序员脱不了干系。从程序员到项目经理可以使得项目经理更好地理解程序员在项目中的地位和作用,了解软件开发的各种规律性的东西。从而保证项目的正常完成。而且,项目经理的收入在公司中的地位也是 比较高的。因此,我认为走向项目经理是程序员的另一个发展空间。我想提醒一下,程序员在担任项目经理之前最好要把软件设计工作做好,这样在做项目经理的时 候,就会有很好的基础。

3、 走向管理者

很多程序员希望自己能成为公司中的主管、经理、老总、老板,这样无论是收入和在公司的地位都相对比较高一些。另外,一方面程序员可能厌倦了年复一年的编程工作,对工作产生了抵触情绪,希望能摆脱这种步步紧逼的工作状态。走向管理者其实要求程序员要比一般人做更多的准备,要做更多的转型工作,并不是想当管理者 就能成为管理者的。但是,如果程序员有这个志向和爱好,有积累了这方面的工作经验,自己也感觉在这个方面能够发展,更重要的是有这样的机会,走向管理者也 是可能的。由于软件公司的管理者毕竟不同于一般公司的管理者,专业能力越强,管理起来就越得心应手的,没有专业能力的管理,遇到的问题很多,也很难解决。 因此,我的建议程序员最好要把编程、项目设计、项目管理等基础打打好。这样转型到管理者成功率就会高一些。

4、 走向软件营销

我一直说,程序员最大的缺点之一,就是眼光只盯在技术上。程序员在入门阶段和成长阶段,这种情况还是属于正常的。但是,到了成熟阶段这种缺点将严重影响了 程 序员的发展。程序员在工作中不免会接触到用户,不免会了解到用户的需求。从而了解到软件实际发挥的作用,进而了解了自身的工作价值所在。有的程序员则固步 自封,不愿意和外界打交道,从内心里坚守技术底线。有的程序员则喜欢和外人交流,喜欢把自己的软件推荐给用户,而且用户也乐意接受这种专业的介绍,用户的 接受是程序员价值的直接实现,程序员因此获得了工作成就感。这类的程序员可以将自己的专业知识和产品营销结合在一起,推动软件的销售和服务,转向软件营销 职业。这个职业将是一个比程序员更有发展的职业,它可以直接反应程序员的工作能力和工作成果,程序员的收入和销售会直接挂钩。因此,可以让有才华的程序员 获得更高的收入,接触到更大的软件市场,看到更广的个人发展空间。

5、 原地发展

当然也有一些程序员惰性比较大,满足于现状,享受着眼前的胜利果实,也无可非议。对待这些程序员,我们不要强求他们改变自己的想法,我建议是原地发展,把本职工作做得更好,把自己的技术水平往上再提高一步。在这个过程中他们的能力和自信心都会得到提高,他们的想法不会一直一成不变的。磨刀不误砍柴功,刀快了自然会去砍柴的。

而就我自己目前的情况而言,我选择的是1,先提升自己的技术水平,保证自己基本的竞争力,然后三五年后朝着管理方向走

阅读全文

与程序员必经之路图片相关的资料

热点内容
grub2命令行 浏览:618
无法获取加密卡信息 浏览:774
云服务器网卡充值 浏览:509
编程就是软件 浏览:49
服务器如何添加权限 浏览:437
引用指针编程 浏览:851
手机加密日记本苹果版下载 浏览:63
命令行括号 浏览:176
java程序升级 浏览:490
排序算法之插入类 浏览:227
gcccreate命令 浏览:73
海尔监控用什么app 浏览:64
系统盘被压缩开不了机 浏览:984
linuxredis30 浏览:541
狸窝pdf转换器 浏览:696
ajax调用java后台 浏览:904
活塞式压缩机常见故障 浏览:614
break算法 浏览:731
换电池的app是什么 浏览:771
单片机ad采样快速发送电脑 浏览:22