面试中。问得最多的一个面试问题是:“你希望你之后三到五年的发展是什么样子?”。一般就说:“成为在某一方面能够独当一面的技术专家“。这个是不是感觉很难!经过多年工作后,这个真是一个很难的问题。因为兵无常势,所有的东西都在变化,这个变化的节奏弄的我晕头转向,一早的时候看好的东西可能会被淘汰。。

一、行业背景很重要

行业背景非常重要;工作3-5年后必须确定自己的行业背景,比如一直从事电信行业,一直从事银行项目,一直从事ERP行业等等。

从程序员说起,一个程序员很清楚的明白自己不可能是一直写代码的,就算写代码也要知道业务逻辑,满足什么需求;浅而一显的说隔行如隔山,每个行业的业务都不一样,甚至差别很大很大,比如你一直从事流媒体的研究,让你跳槽到一家银行项目,这个时候差不多你就是这个行业白板,一切从头学吧,以前的行业经验都用不上了;而且,一个公司公司招人,就是希望找到那些很容易上手,不需要培训业务很久的程序员;所以想要频繁跳槽的朋友,一定要注意这点;

如果在一个行业呆久了,几乎就可以成为这个行业的专家;现实中,我们可以经常看到,一个项目组的某个leader,代码写的一般,但是却可以做到跟客户流畅的沟通,控制着新需求的提出,bug的修正等等;而且,你会发现客户也很愿意跟他打交道,因为那些老的项目只有他能维护,他甚至熟悉系统的每一张表结构——-可想而知他这是在这个行业呆的时间有多久啦。

第二、合理的职业规划

什么是职业规划呢?—-就是你短期或者长期的一个职业计划!大道理不讲,咱简单一点的说。先问你几个问题:

a.你工作几年了,你愿意一直和新入行的新手一样就是个简单的程序员吗?

b. 你愿意一直写代码,而不关心其他吗?

c. 一个项目的前期需求,设计,后期部署维护,领导找到你,你说咱搞不定,行吗?

程序员不是敲代码的机器。第一年刚入住不懂的太多,很正常,你可以一切听从你上级的安排,敲敲代码,看看数据库,测试自己和别人的代码;如果,第一年保持这个状态,第二年肯定是不行的,第二年,一个普通程序员而言,一年的经验你完全可以入行了,是时候该学习怎么进行需求分析,怎么设计数据库,怎么写各类文档,怎么写更好的代码?这是程序员的基础要求!基本素质能力。

三、什么是高级程序员呢

首先具有分析设计能力,其次能进行技术攻关,而且具有某行业深厚背景的程序员!

所有,一个项目立项后,你要积极的参与到前期设计中,跟老同志们一道思考分析问题,学习经验!这样子,你就是真正的成长!

温馨提示 !!!千万不要认为程序员就是写代码的哦!!!

而且,通过一个项目的开发,你要能粗略的统计出一个功能的开发时间;比如一个模块有18个小功能点,你开发了74个小时,每个小功能点平均2小时——这时在前期就能评估工作量啦。当然,每个人的效率和工作质量是不同的,因人而异,但是大概的工作量应该是可以统计出来的,用于统计一个项目的工作周期;

据不完全统计,迄今为止,中国程序员的数量已经超过了100万。而且,随着IT培训业的持续发展和大量的应届毕业生进入社会,程序员面临的竞争压力越来越大。那么,作为一名程序员,怎样努力才能快速成长为一名高级的程序员或者架构师,或者说一名优秀的高级工程师或架构师应该有怎样的技术知识体系,这不仅是一个刚刚踏入职场的初级程序员,也是工作三五年之后开始迷茫的老程序员,都必须要面对和想明白的问题。

最后,程序员不仅仅敲代码。知识是学无止境,能力,潜力是靠自己挖掘出来的,还有不要老想着跳槽,多多反思自身问题,能力学习能力。

                                                                                                                                                                                                                                                                                                     -END