【转】.NET开发人员的瓶颈和职业发展
现在社会比前几年浮躁了,越来越多的人抱怨薪水低,高薪工作不好找;
诚然这有CPI的压力,可是也有很多人没有认清自己的职业发展.
很多.NET程序员个各种纠结,想拿高薪又拿不到,想提高又不知道怎么能提高.
我也经历过这样的阶段.......各种纠结和迷茫,各种悲剧......不知道路在何方,在此我把我的经验和看法分享给大家,希望能给大家一点帮助.
(本文只代表我的个人观点)
关于职业/薪水瓶颈的问题:
(在本文中,我们假设薪水就是能力的真实体现,不考虑运气等因素,并且薪水以上海为标准,其他城市乘以相对比例)
瓶颈一: 入门 (薪水<0)
在这个阶段没有老师就是各种悲剧,各种概念的混合,各种纠结,各种蒙....基本上这个阶段的薪水<0 (贴钱人家也不要你)
如何突破瓶颈:没啥好说的,看书自学吧, 或者找人培训
瓶颈二:初级开发人员(年薪<5万)
在这个阶段,开发人员会拖控件,会处理一般小公司常见的业务需求,懂得搜索一些关键字来完成自己的需求, BOSS交代的任务大部分能完成..不过仅仅限于自己的知识范围内
代表产品: 各种什么小企业站点,几千块那种,偶尔有点稍微难一点的就很难实现,或者用非常挫的方式来实现,代码中各种神奇...
代表人群:北大青鸟等地方出来的.....大学不好好念书 混出来的
(很多朋友说我对北大青鸟有成见, 我对这培训公司没啥成见, 只是起点不一样而已, 我的起点水平还不如北大青鸟的呢,以后能达到的高度和你现在在的位置关系不大,主要还是看你的成长速度, 很多大学生出来比培训出来还不靠谱. 此外 就平均水平来说 我个人认为培训机构出来的 能干活,便宜 [这也是某些公司看中的方面] )
关键点是: 加深对.net的理解,了解.net周边的相关技术,要调整好心态,有专研精神
如何突破瓶颈:多找高级人员,看看人家是怎么工作,怎么思考 怎么解决问题的; 听到别人说到某些东西 最好都留心一下,google下看看是什么东西 和你的工作能不能配合起来
书已经可以开始看了,最好是问资深人员你需要看什么书,一般这种问题人家还是愿意回答的, 要注意不要被某些垃圾书误导了
瓶颈三:中级开发人员(年薪<12万)
这个级别的程序员不仅仅经验够了,知识面也相对好一点, BOSS交代下来的任务可以很顺利的完成, 擅长于已知关键字的情况下搜索解决方案
基本上.net附近的知识都懂一些,例如javascript html sqlserver ext componentart 等等
.net内的大部分东西都听过或者用过, 例如linq lambda wcf socket
代表产品:各大中型公司的最底层开发人员,开发点不重要的应用,写的代码在高手看来....好歹还能跑...BUG不是很多....在不重要的应用中就无所谓啦, 稍微重要点的系统或者代码就不敢让这些人做了,
各中小学公司的中层开发人员,有可能一个人做一个项目,或者带两三个虾米做项目;做的项目修修补补还是能用的,最常见的就是做点增删改查.
代表人群:工作3年内的.net开发人员,经常有重复劳动,最喜欢的就是什么代码生成器,以为牛逼的不得了. 很多人都会卡在这个瓶颈,主要问题是不知道要下一步怎么走
关键点:这个阶段的开发人员由于公司和项目的需要,经常很忙,或者从事重复性的工作, 职业视野不够开阔,不知道路在何方
如何突破瓶颈:看看你的领导或者其他比你高级的人员是怎么工作的,参加各种技术论坛和讲座;看书,视频
例如 mix11 chanel9, 可以看看CLR via c#之类的东西, 要考虑长久的 最好一口气突破下一个
瓶颈四:高级开发人员 (年薪<25万)
在这个阶段的技术人员,狭义上的技术基本上达到一个很大的瓶颈(狭义的技术主要是说具体怎么实现,什么asp.net生命周期,控件开发,多线程 lock等等)
大部分.net配套的技术和产品都已经会使用或者能在很短时间内学会,例如DNN,Nhibernate之类的
有一自己的一套想法或者一套解决问题的办法,有自己最熟悉的一套工作方式和工具
由于长期从事某个一个行业或者领域的开发,会某个方面的技术特别的熟悉, 例如长期做ajax应用 对于HTTP HTML CSS javascript都比较了解,
甚至在某个方面的技术达到精通的地步,会在公司方面作为特别的技术牛人出现 可以解决很多其他team member的技术问题
有很强的学习能力,没涉及过的技术和体系 可以很快的自学, 有准备的情况下, 狭义的技术面试题难不住他们
但是对广义的技术还是比较欠缺,对于.net体系之外的东西知道的还不够, 对于核心的CLR IIS和windows 平台有些了解 不过还不够深入
代表人群: 小公司里面的技术牛人, 大中公司里面的team leader 一流公司的底层
关键点:这群人现在有较多的职业发展的选择,不过每条路都不是很容易, 而且职业发展前几年的黄金时间过去,接下来的发展速度会降低
如何突破瓶颈: 在这里 你会发现你的朋友圈会对你的职业生涯有很重要影响, 大部分这个级别以上的工作不会在招聘网站上见到, 主要还是靠朋友介绍
要考虑看广义技术上的书籍,而不是单纯.net的书籍, 如果要单纯的继续在.net上提高,已经很难有书可以帮到你,大部分时候要靠PPT 零碎的资料,朋友的聊天才能有所突破
瓶颈四之后 突破瓶颈四以后的路就很宽广了.....
这个阶段的职业发展 我认为有以下几条路线:
1.领域专家 例如长期从事电信项目的开发,那么这个时候你的价值就会成为 电信业务知识+技术知识 (其实选行业比选语言赚钱多了) 要走这条路 要提前几年准备, 而且别选错行业...
2.管理层(开发经理,项目经理) 中国大部分人准备走这条路线, 不过说实话 这条路比技术路线要难走;主要是要转变技术人员的思维.还有就是实践机会
3.纯技术路线 这条路在中国的中小企业很难走, 大企业也不是很容易, 最好的办法就是去外企 (所以你需要提前准备你的英文和人际关系)
4.创业 这条路线我不熟悉
5.架构师 这条路可遇不可求......最难的是经验.....例如电子商务方面的,最好找个类似的公司混进去看看人家怎么玩的.
6.换个行业
一些在我职业生涯中的关键点
1.要保持良好的心态 不要因为暂时没法达到你的目标而气馁
2.什么都会不如精通一个,了解多个
3.要时时刻刻保证对自己的投资, 例如学习,看书,扩展社交网络等
4.要做一件事情就做好,要么就不做
5.如果很长一段时间感觉没进步,你可能需要反思一下了
6.能力上去了 一切都不是问题
7.最好每年都做一个计划 然后再有一个中期的 例如5年的职业规划
如何获得你喜欢的职位:
1.不同的职位出现在不同的地方, 一般所有瓶颈4和以下的职位都会出现51job之类的招聘网站, 而这个级别和之上的职位一般出现在 a.一流公司自己的网站 b.猎头 c.朋友圈
2.即使你能力不够 也可以考虑去面试, 面试是一次非常好的学习机会; 在面试中你可以发现你自己的弱点 (you don't know what you don't know) 而且这也是一个好机会让你知道你的市场价
3.如果很想获得一个职位, 提前准备, 例如目标公司的职位描述,公司文化,侧重点
4.走内部推荐一般更靠谱
5.越往上走 越难, 要提前很多做准备, 例如你可能现在觉得硕士学位没用, 可是当你要用的时候再读就来不及了 (工程硕士也好)
最最重要的当然还是能力啦
对不同人生阶段我影响比较深的书籍和资料
1.英文学习资料, 最新的技术文档都是英文的, 最牛的技术人员一般也都说英文 (这个是事实, 中国技术比欧美还烂很多)
2.CLR via C# 经典书籍;
3.Code Complete 1/2; 算法导论(这个东西随便看看就好,难度比较大)
4.技术网站 MSDN stackoverflow iis.net asp.net github channel9 mix11
原文链接:http://www.cnblogs.com/PurpleTide/archive/2012/05/16/2502547.html
【转】.NET开发人员的瓶颈和职业发展的更多相关文章
- .net 开发人员的瓶颈和职业发展
.net 开发人员的瓶颈和职业发展 现在社会比前几年浮躁了,越来越多的人抱怨薪水低,高薪工作不好找; 诚然这有CPI的压力,可是也有很多人没有认清自己的职业发展. 很多.net程序员个各种纠结,想拿高 ...
- .NET开发人员的瓶颈和职业发展
现在社会比前几年浮躁了,越来越多的人抱怨薪水低,高薪工作不好找; 诚然这有CPI的压力,可是也有很多人没有认清自己的职业发展. 很多.net程序员个各种纠结,想拿高薪又拿不到,想提高又不知道怎么能提高 ...
- .net开发人员等级
.net 开发人员的瓶颈和职业发展 现在社会比前几年浮躁了,越来越多的人抱怨薪水低,高薪工作不好找; 诚然这有CPI的压力,可是也有很多人没有认清自己的职业发展. 很多.net程序员个各种纠结,想拿高 ...
- 【转发】linux开发人员常用命令
每个开发人员到了他们职业人生的某个阶段的时候,将会发现自己要寻找有关Linux的信息.我并不是这方面的专家.但是掌握了以下8个命令,我几乎可以得到我任何需要的东西. 注意:以下的命令都有很多扩展的文档 ...
- 安晓辉大神的感悟:如果你发现了自己的学习模式,愿意学并且能坚持,我觉得没什么能阻挡你征服软件世界的脚步(对于开发人员来讲,最大的风险是:在职业规划上没有延续性地乱跳槽。时刻要牢记在心的:培养自己的稀缺性) good
从技术支持中途转战软件开发,如今从事编程工作已十多有余,2014年CSDN博文大赛编程语言组冠军.CSDN Qt论坛的版主安晓辉老师从今天开始,坐镇CSDN社区问答栏目的 第十四期,届时会接受广大网友 ...
- SAP成都研究院35岁以上的开发人员都去哪儿了?
2006年成立的SAP成都研究院,位于天府软件园B区.如今,因为研究院发展的不断壮大, 已经搬迁到天府软件园E区了,因此,发生在图片building各种充满悲欢离合的故事,已经成为一部分小伙伴脑海中难 ...
- 国内及Github优秀开发人员列表
自从入了Android软件开发的行道,解决问题和学习过程中免不了会参考别人的思路,浏览博文和门户网站成了最大的入口.下面这些列表取名为:国内及Github优秀开发人员列表,就是浏览后的成果. 虽然下述 ...
- 【特别推荐】Web 开发人员必备的经典 HTML5 教程
对于我来说,Web 前端开发是最酷的职业之一,因为你可以用新的技术发挥,创造出一些惊人的东西.唯一的问题是,你需要跟上这个领域的发展脚步,因此,你必须不断的学习,不断的前进.本文将分享能够帮助您快速掌 ...
- 产品经理如何赢得开发人员的尊重和支持?-摘自infoq
对于产品经理来说,赢得开发人员的尊重和支持,从某种意义上讲,是产品迈向成功的坚实一步.最近,知乎社区上的开发人员和管理者在前.后两个帖子中对此展开了激烈的讨论,其中不乏真知灼见. 林志霖Cray认为产 ...
随机推荐
- netbeans下将全部jar包打成一个,俗称fat jar
netbeans的java项目中.默认会将配置好的外部引用jar包,复制到dist文件夹的lib文件夹中去.假设须要公布出去.就须要将dist文件夹生成的jar和lib文件夹都拷贝出去公布,不方便. ...
- jfinal-QuartzPlugin后台任务调度
配置方法: 1. 在jfinal的Start.java中插件位置配置QuartzPlugin /** * 配置插件 */ public void configPlugin(Plugins me) { ...
- Android Studio-ApplicationId 与 PackageName
BuildType 中所设置的『applicationIdSuffix』属性,按照这个属性的字面翻译为:『applicationId 的后缀』 Android 应用都有自己的包名.包名是设备上每个应用 ...
- 前端JS开发框架-DHTMLX
一:介绍 dhtmlxSuite是一个JavaScript库,提供了一套完整的Ajax -驱动UI组件.我们能够使用dhtmlxSuite构建 简洁界面,快速性能,和丰富用户体验的企业级web应用程序 ...
- SignalR安装以及安装问题
正常节奏 介绍 SignalR 是 ASP.NET 团队正在开发的一个 Microsoft .NET Framework 库和 jQuery 插件,可能包括在以后版本的 ASP.NET 平台中. 它提 ...
- Java为什么会超时
java程序,最终是转成c运行的,我们写的程序会转成c代码,并且由底层的c程序调用,可以理解成我们程序最后变成被调用的c函数 底层的C程序是java虚拟机,由它读取我们的.class文件,翻译成c ...
- 功能测试中遇到的一些有意思的bug
2016.1.25 1. Xss攻击型的bug Xss攻击即跨站脚步攻击,通过插入恶意脚本 ,实现对用户浏览器的控制. Bug现象:新增物品时,物品名称输入一段JavaScript代码,在提交时此代 ...
- 删除sd卡的文件
public static void deleteAllFile(){ String path = Environment.getExternalStorageDirectory().getAbsol ...
- centos 7.x编写开机启动服务
centos 7以上是用Systemd进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度.关 ...
- 在ModelSim波形图中以参数名显示变量
在ModelSim波形图中以参数名显示变量 在使用Verilog HDL编写有限状态机等逻辑的时候,状态机的各个状态通常以参数表示,但当使用ModelSim仿真的时候,状态机变量在wave窗口中以二进 ...