大学毕业程序员达到什么程度(大学刚毕业的程序员好找工作吗)
程序员是吃青春饭的吗,可以干到多少岁?
作为一个技术老兵,在技术行业内混了十几年了,明显能感觉到目前国内软件开发工作,在某些行业就是吃青春饭般的存在,尤其是表现在互联网公司,而且公司越大加班的疯狂程度越强,互联网公司更加喜欢招收一些年轻人毕竟工资相对低一点,冲劲还足最关键能不惜体力的加班,国内互联网公司大部分做的事情跑马圈地,应用级的开发居多,所以难度不是很高,有了2,3年的工作经验就可以跟着做了,谁的执行力强能够加班更加被公司所喜爱,很多老程序员在互联网公司体验几年基本上就回归传统软件企业了。
很多公司在招聘的时候发现年龄超过35岁就开始有意设置门槛了,毕竟这个年龄段的程序员人生阅历也比较丰富,对于职场上的一些事情也摸得比较透彻,说的不好听就是职场的老油条了,公司出个什么政策这帮人看到比较彻底,不容易忽悠,年轻点的更加容易被接受,所以说成是吃青春饭的职业有点夸张,但一定程度上也能说得过去,国外40多岁继续做研发的环境要不国内还是好很多,但也在一定程度上找工作受到一定的制约,现在过40多岁如果还在写代码肯定被周围的人议论了,都这么大了也没混上个管理职位之类,现在这个年龄段还在一线写代码的数量也不在少数,基本上属于公司顶梁柱存在,绝大部分做着技术管理,并没有完全脱离技术岗位,遇到难点还是上阵去解决问题。
老程序员如何在技术生涯找好自己的方向点?
1.尽早向技术管理方向转移
越是拖到最后完成转型形式越是被动,管理是一种学问,不像是玩技术你把自己管理好久万事大吉了,技术类的管理如果在技术能力到位的情况下可以,以技术服人这样无形之中减少了管理的阻力,更加容易让底下的人信服,平时多补一些管理方面的基础。如果有转的想法今早实施,做什么事情都要趁早。
2.将技术进行到底
技术类在职场上的分支有两个主项,一个是管理方向,可以沿着这个路线一直做到副总或者更高的级别;还有一个技术专家方向,对别的事情不感兴趣就想着一辈子能研究点技术,也没有什么大的追求,在很多公司专门设置某个项目的技术专家称号,职位基本上和技术经理持平,算是同一个级别,同样是拿着这个级别的薪水。
技术职位如果技术足够强,可以考虑直接在这个方向一直走向去,无论国内还是国外对于高级的技术专家永远都是持开放的程度,金字塔上层的技术人才毕竟是少数,但也是技术领域一直欠缺的,如果喜欢技术并且干的还不错就可以考虑在这个方向上一直坚持到底。
3.转行做别的职业,闯出另一番天地
很多程序员中间转行挑战别的行业,只要能把一个职业做好一定能够把别的方向给弄好,尝试新的天地未尝不是一个方向,新的方向新的起点新的挑战,可能带来的是新的收获。
作为一个程序员也有随着年龄的增长有一种无形的压力在心头,能做的就是拼命提升自己的技术能力,担心年龄大了淘汰,只能是继续提升技术和管理水平。
希望能帮到你。
很多人都说程序员这个行业就是吃青春饭的,为什么会有这样的问题呢,难道程序员真的感到30岁就要退休了吗,或者必须转行吗?程序员难道不就是敲代码吗,难道年纪大了敲代码就不能敲不动了吗?不是都说程序员靠经验吗,经验越丰富,不就是技术越丰富吗?作为过来人,今天索性没啥事,就和大家一起聊聊这个话题吧。
首先、先说说为什么会有这样的传言,为什么会有这样的说法吧。
第一个 就是很多人在这个行业干久了,从大学毕业到30岁至少也得6,7年了吧,行业做久了很多人自己也会感到厌烦,也想换换新的行业,尝试一下新的岗位,当然转行有风险,所以很多人转行都是转比较靠近的,比如做运维、做产品、做教育、当然走管理路线也是,这些都是比较轻松好转的行业,基本风险不大。
第二个 就是很多做开发公司加班比较多,晚上下班回家比较晚,陪老婆孩子没时间,况且加班熬夜身体吃不消,搞不好把身体搞垮了,而且大部分程序员都是懒得运动,健身的人,作息时间不规律,最后30岁的人居然熬成了快60岁的大爷,这就是为什么很多人都说程序员就是秃顶(这里我要澄清一下不适所有程序员都是秃顶呀,至少我还完好的保留着头发),在这里不得不替这些人伤心3秒钟。最后连娶老婆都去不到,还有很多连说话都说不通的人,表达能力已经到达到了原始 社会 。
第三个 就是很多那种在公司混日子,技术能力差一点的,以为公司就是可以养老的人,技术干不过别人,工资不见长,可以说非常佛系的,在这个行业混了个6,7年,终于待不下去了,压力大呀,老婆孩子一家人的希望呀,最后选择了转行,最后离开的原因竟然是公司不需要这种人了,但是我们想想哪怕是争一口气也不会混到这么差呀。
其实呢,不是说程序员真的就是考吃青春饭,30岁之后就必须的转行,想想原因还是在这些人自己身上,年轻不愿意拼实力,不愿意积累点能量,真正有技术的人,想想公司能放走嘛、高薪难道还差吗,除非那公司真的做的有点过分,亏待功臣,卸磨杀驴呢,自己不争气在前,怎能怪别人呢。
当然加班、熬夜这些都是存在,但是其他行业也不好做,那些高管,有钱的职业经理人,哪一位不辛苦呢,而且其他行业也是一样,老板虽然压榨,但是真正想要福利好的,除非公务员,不然工资很低,所谓功高者后禄,这个不会假。
另外当然也有很多愿意尝试新行业的人,愿意挑战,尝试新的开始这也有很多。总的来说,程序员真的是不是吃青春饭呢,不能一概论之,有经验,有能力的人,高薪,谁愿意走。
绝大多数程序员确实是吃年轻饭。
不管你愿意不愿意承认,等你到40岁之后就知道了。
这里有个界定,从事研发的排除在外,从事开发的包括在内。要注意研发和开发是两个不同的概念。
一般研究所,研究生院中的程序员多叫工程师,这类人是越老越值钱。年纪大经验越多,能力扎实,对做研发突破苦难起到至关重要的意义。
而开发不同,开发更多是面相年轻人来做的,你开发一款软件给60岁的老大爷们,且不说你开发的好不好,老大爷他也不会用。
一般从事开发的程序员在35-45岁时是个分水岭,能力强,有水平能熬到领导层,或者能独当一面,那么就留下来。如果不能基本就被淘汰了。而这部分留下来的人只是少数。
为什么程序员要年轻化?第一,上面说过,开发主要针对的用户是年轻人,那么只有年轻的程序员才知道年轻人喜欢什么爱好什么。让一名60岁的老程序员写一个 游戏 ,能火起来的概率不大。第二,年轻人无牵挂,肯吃苦,能加班熬夜,工资待遇又相对低。上了年纪的程序员家里有老婆孩子需要管,还有父母需要照顾,也没有了年轻时干劲,思想也渐渐和 社会 主流脱钩,并且工资还极高。这个时候如果这个老程序员不能为企业创收,那么辞退一名老程序员,省下的薪水可以在招好几个大学毕业生。
有些话不是空穴来风,也不是无能人的借口,看看各大企业裁员的年龄段就知道了。
只有码农,靠蛮力,用体力而不是用脑力的程序员才是吃青春饭的人!
大多数程序员都认为程序员是个吃青春饭的职业,编程这个事只能干到30岁,最多35岁吧。每每听到这样的言论,都让人感到相当的无语……
有研究者用了最近5年内比较流行的技术Tag,然后用了一套比较严谨的算法来查看那些所谓的“老程序员”是否在新技术上跟上不了,所谓跟不上,也就是这些老的程序员在回答这些新技术上并不活跃。所谓老,就是37岁以上的程序员。
老程序员和年轻的程序员对于一些新技术的学习来说也是差不多的,甚至有些项目还超过了年轻的程序员:
1、程序员技术能力上升是可以到50岁或60岁的。
2、老程序员在获取新技术上的能力并不比年轻的程序员差。
由于如今许多的年轻程序员太浮躁了,才会说30岁是程序员的顶峰。
其实,对于大多数人来说,如果还没有编程到30岁,还不能成为一个“合格”的程序员。所以,并不是编程编到30岁就玩完了,而是编程编到30岁才刚刚入门。
在我身边,就有一些年龄在40以上,并且还对技术保持热衷的“老程序员们”,他们无一不是身怀绝技,在公司身居要职或高管,成为公司最宝贵的技术保障。
工龄超过三十年了,做了一辈子程序员,单位还在不断招人,所以还有事情做,没有坐冷板凳,不存在什么危机。。
公司也很重视加班,但我早就过了干体力活的阶段,领导并不管我加不加班。进度慢了领导就会说你需要人吗。
学新技能么,还好吧,java,c语言这样的经典可以用一辈子,重要的是有编程思维,学习并使用哪种语言很容易。
做一辈子程序员肯定是可以的,只是很多人不愿意而已。可能男人野心大了些吧,编程一辈子觉得很丢脸,总想往上爬。。身为女性就没那么多想法,人到中年,有人愿意雇我们有口饭吃就满足了,老老实实干活的人,老板不会不要的,换过几次工作,并没有遇到年龄障碍,也没有刻意去经营人脉,你的表现如何,别人都是默默看在眼里的。。
回顾一下,有几点经验,一是不管坐哪个职位,不能丢掉编程这个技能,做了很多项目的负责人,框架自己搭,核心模块自己写,技术掌握在自己手里,项目完成有保障。。项目结束了,就要去当普通程序员,有一手过硬的编程技能,还是挺受欢迎的。二是不能总是生活在一个舒适圈里,要不断学习新知识,迎接新的挑战,每次接受新的项目或任务,一定要有所突破,不能只是单纯的重复。
我也算是这个行业的一位老兵了,从13年到现在也快八年了,程序员其实是挺费身体的,熬夜加班家常便饭,所以我觉得程序员是在吃青春饭,互联网公司基本上都存在一个问题就是看谁下班的晚,不管你在公司有没有在做事情,只要你下班比其他人晚那么你的绩效就一定不会差。至于我现在的话已经没有经常加班了,偶尔发一下版,上下班都比较规律,这就是我还在坚持的原因,程序员能干到多少岁这全看你自己,我身边三十多岁依然在干程序员,虽然程序员吃青春饭,但是你自己也可以选择往中层或者其他岗位去转,肯定不能再像初出校园那样,不然身体迟早吃不消的,秃头,脂肪肝,亚 健康 ,近视,腰椎间盘脱出这些都是普遍存在的,大家不要觉得程序员的工资就一定非常的高,这也要看地方,像重庆程序员的工资还真不如有些工种。
大多数程序员认为程序员是吃青春饭的工作。编程只能干到30岁,最长可达35岁。我经常听到这样的话,都让人感到适当的无语......
今天,我们来谈谈这个老话题......
首先,我们来看一篇论文《Is Programming Knowledge Related to Age?》(英文版)。本文是来自北卡罗来纳州立大学计算机科学系的两个人,他们在StackOverflow.com上对用户进行了相关的数据挖掘。一些数据出来了。(StackOverflow.com上的数据被公开,任何人都可以使用它进行分析和核算,所以这篇论文的实际情况还可以。
让我们来看看他们的年龄分布图:我们可以看到程序员年龄的正常分布(高点大约是25岁,但中点大约是29岁)然后,计算每个人的月营业额,这样你就可以找到用户的真实生动的时刻,这样便于计算程序员的真正才能。 (总声望/活泼时刻),我可以得到他每个月均匀得到的Reputation。我们可以看到程序员的才能从25岁开始上升,并且直到50岁才会开始下降。因此,程序员不吃青春饭的。只有码农,依靠蛮力,使用武力而不是脑力的程序员才是吃青春饭的人。
年龄大可以跟上新技能吗?该论文的作者使用了过去5年更受欢迎的技能标签,然后使用更谨慎的算法来检查所谓的“老程序员”是否跟上新技能。所谓的跟不上,也就是说,这些老程序员并没有积极回答这些新技能的问题。所谓的老,就是是37岁以上的程序员。
我可以看到老程序员和年轻程序员在学习一些新技能方面相似,有些甚至超过了年轻的程序员。
论文的结论是:
1、程序员技能可以升至50或60岁。
2、老程序员在获得新技能方面并不比年轻程序员差。
结论
从上面的数据可以看出,由于现在很多年轻程序员都太浮躁了,据说30岁是程序员的巅峰。事实上,对于大多数人来说,如果你没有编程到30,你就不能成为“合格的”程序员。因此,并不是编程编到30岁就玩完了,而是编程编到30岁才刚刚入门。
这个问题,我应该比较有发言权,大城市呆过2年然后回了小城市,5年程序员转行当老师。大部分程序员是吃青春饭的,因为大部分程序员干技术,只是停留在应用层面,没有足够的平台,5年后很难再有质的提升。技术有了提升后,还需要有足够大的平台才能撑的起你的薪资。我离开程序员行业的导火索是见到某公司,辞退唯一的一个45岁架构师。当然如果你可以不要求高薪,放平心态,我相信很多公司还是愿意要大龄程序员的。
到35岁还在基层那基本上就是没希望了,随着年龄增长,思维能力不如年轻人,如果不能升上去带团队,那只能一直做基层码农。
程序员三十以后就老了,一是技术更新太快,二是经常性熬夜加班,三十以后转管理岗,搞技术吃不消了。
计算机编程员分为哪几个等级?
计算机技术与软件专业技术资格(水平)共有20个级别,分别如下:
(1)高级资格:信息系统项目管理师、系统分析师(原系统分析员)、系统构架设计师;
(2)中级资格:软件设计师(原高级程序员)、网络工程师、信息系统监理师、电子商务设计师、软件评测师、多媒体应用设计师、数据库系统工程师、嵌入式系统设计师、计算机辅助设计师、信息系统管理工程师、信息技术支持工程师;
(3)初级资格:程序员(原初级程序员、程序员)、网络管理员、信息处理技术员、电子商务技术员、多媒体应用制作技术员、信息系统运行管理员。
从2004年开始,每年举行两次考试,上、下半年各举行一次,上半年和下半年考试的级别不尽相同,以全国软考办公布的考试计划为准。每次公布计划的时间大约在考试前后一周,请考生在每年的5月底和11月初注意访问考试大软考频道,及时得到有关通知。
程序员需要达到什么样的水平才能顺利拿到 20k 月薪?
对于多数程序员而言,月薪达到8000以上的水平不是一个难事,但是达到20K以上的月薪其实很难。
很多人会觉得it行业特别赚钱,对于已经参加工作的小伙伴来说,it行业其实是一个不错的赚钱选择,但这并不意味着每一个程序员都能够赚到足够多的钱,月薪高的人其实只是少数。
普通程序员的工资在8000左右。
我们这里提到的工资主要集中在一二线城市,因为一二线城市的工作机会很多,所以程序员的工资也比较高,一般可以维持在8000元左右,对于那些进入到知名互联网企业的人来说,他们的工资可以到达15K左右,有些人甚至可以到达20K以上。现实生活中,并不是每一个程序员都在知名互联网企业上班,在私企上班的程序员的工资只能维持基本温饱。
独立处理项目的程序员工资可以达达20K以上。
对于那些本专业的应届毕业生而言,虽然他们在学校的成绩不一定差,但是学校的知识并不能够完全用在实际工作上,所以他们要经过漫长的实习期和学习期。当一个人可以独立处理项目的时候,工资也会变得越来越高,程序员的工资可以达到20K以上。
程序员的工资跟企业的效益高度相关。
换一句话说,一个程序员的工资不仅跟公司的效益有关,也跟公司所在的部门有关,如果你所处的部门效益非常好,那么程序员的工资就会非常高,如果你们公司的效益很好,但是部门的效益不好,这个时候工资也不会高到哪里去。从个人的角度来看,如何提高自己的技术实力,才是提高你薪水的不二法门。
毕竟对于程序员这个岗位来说,真本事才是你吃饭的饭碗。
做一个程序员需要达到什么样的水平
辨别一个程序员的水平唯一的办法就是看 产出质量。
算法和数据结构都是锦上添花,并非是雪中送炭。而一个程序员的水准大致上是可以通过之前的代码质量估算出来的。【如果你可以获得此程序员的真实编写的代码,比如原创的Github】。
举个栗子:下面是我最近在单位一个同事写的代码,Java语言
private boolean checkProportions(String str, Integer grades) {
String proportion = str;
for (int i = 1; i grades; i++) {
String st = proportion.substring(proportion.lastIndexOf(",") + 1);
if (st.equals(""))
return false;
proportion = proportion.substring(0, proportion.lastIndexOf(","));
}
if (proportion.equals(""))
return false;
str = str.replace(".", "");
str = str.replace(",", "");
for (int i = str.length(); --i = 0; ) {
int chr = str.charAt(i);
if (chr 48 || chr 57)
return false;
}
return true;
}
大致上的功能就是将 1,2,6.2,4,1 的字符串判断每一 ‘,’内是数字,而且长度符合规定
这样的代码看上第一眼就觉得非常的丑陋。所以在我的要求之下,进行了一次重构。
private static boolean checkProportions(String str, int grades) {
String[] proportions = str.split(",");
if (proportions.length != grades) {
return false;
}
for (String s : proportions) {
if (!NumberUtils.isNumber(s)) {
return false;
}
}
return true;
}
这里看上去差不多就Ok。这样的代码其实也并没有用到什么数据结构和算法,就是很简单的字符串处理。
实际情况:在我们写的绝大多数的代码里面,大部分属于业务逻辑,极少部分的代码需要使用到算法和数据结构,在这样的情况下,我们能使用的到的技能最为关键的是让代码如何更加合理。而让代码更加优秀的方式是通过千锤百炼的重构,而重构是极大的考验一个程序员耐心和能力的东西。
质量的范围广泛,我从下面几个小方面聊聊。
出货能力:如果一个程序,算法再精妙,不能出货都是扯淡,我看过某某大神,算法溜得很,但是一个人完全做不到按照工程需要把事情给做完。
优化能力:并没有一个程序是一步到位的,一个工程的交出去可运行了,那才是第一步,很多时候随着业务的增大,对性能的要求越来越高,有一定对于代码优化的能力也是比较重要的。
调错能力:项目越大,遇见的Bug也就是越离奇,这个时候需要强大的Debug能力,找出那个最为关键的错误点,甚至于追溯底层框架的源码。
技术掌控:你项目能用Spring,Hibernate等等框架,但是有没有想过,这些技术你真的可以掌控么,如果有一天你的框架版本需要升级,真的做得到么?甚至于从Hibernate转为MyBatis。
算法和数据结构是影响到一些核心区的问题,但是其他的一些技能,比如面向对象的架构设计,代码的低耦合,那都是对整个项目有着直观改善的技能。并非是贬低算法,而在实际工作中,有太多比算法更重要的问题了。
程序员工作一年应该是个什么水平呀?我是干c++的
这要看你刚毕业处于什么水平,对于编程又有多少天赋和付出多少努力。
这里说说大部分普通程序员的情况吧,我也是属于普通的那一档,结合我自己的经历说说吧。
说水平,你这里指的大概是技术水平,这可能比较主观。我们还是说薪资水平吧,这个很客观,也很现实,技术水平一般都由薪资水平来体现。
当前,国内软件公司招人的时候,一般会把应聘者分为:应届、工作3年、工作5年。。。(外企的话那是另外一套路数,这里不做讨论)
也就是说,薪资水平是这样分档的,如果你毕业一年,用人单位可能只愿意把你的薪资从应届毕业生这一档提升一点,但是你很难达到工作3年这一档的薪资水平,因为用人单位考虑的时候不仅仅是你个人,还会结合公司其他员工的能力和薪资水平,进行对比,然后得出结论。
对于C++的技术水平,我这里就一句话,工作一年,你还没入门。
初级程序员,要达到的标准是什么?
1. 考试要求: (1) 熟练掌握DOS、WINDOWS95、WORD和上网软件的使用方法,以及有关基础知识; (2) 掌握程序编制方法,用C语言编制简单程序; (3) 掌握基本数据结构、程序语言和操作系统的基本知识; (4) 了解数据库和信息安全的基础知识; (5)掌握数制、机内代码和逻辑运算的基础知识; (6)了解计算机主要部件和功能的基础知识; (7) 了解多媒体和网络的基础知识; (8) 理解计算机操作中常见的英语术语。 2. 通过本级考试的合格人员能熟练使用指定的常用软件和具有初步的程序编制能力,具有相当于技术员的实际工作能力和业务水平。 3. 本级考试范围包括: 基础知识(初级程序员级), 考试时间为120分种;软件使用和程序编制初步能力,考试时间为120分钟。 二、考试范围 (一)基础知识 1.1软件基础知识 1.1.1基本数据结构 数组、纪录、列表、队列、栈(stack)的定义、存储和操作 1.1.2程序语言基础知识 汇编、编译、解释系统的基本概念和使用 程序语言的数据类型 程序语言的控制结构 1.1.3文件系统使用的基础知识 文件组织的类型和特点 文件操作命令的使用 1.1.4 操作系统的类型、功能和使用基础知识 1.1.5数据库系统基础知识 1.1.6多媒体基本概念 1.1.7上网浏览和收发电子邮件的基础知识 1.1.8计算机信息安全基础知识 计算机信息安全基本概念 常见计算机病毒的识别 1.2硬件基础知识 1.2.1数制及其转换 二进制、十进制和十六进制等常用数制及其相互转换 1.2.2机内代码 原码、补码、反码 定点数与浮点数的机内表示 ASCLL码级汉字编码等常用的编码 奇偶校验码 1.2.3逻辑运算 逻辑代数的基本运算和逻辑表达式的化简 1.2.4计算机的主要部件 中央处理器CPU、存储器和输入输出设备 1.2.5指令系统 常用的寻址方式 指令的格式分类及功能 1.2.6常用多媒体设备和网络通信设备的功能 1.3计算机专业英语 高中毕业英语程度 理解计算机操作中常见的英语术语 (二) 软件使用和程序编制初步能力 2.1 能熟练使用下列常用软件 2.1.1 操作系统(DOS和WINDOWS95) 2.1.2 字处理软件(WORD) 2.1.3 上网软件(电子邮件和浏览器) 2.2 能熟练使用下列程序语言编制程序 C(美国标准) 2.3 理解给定程序的功能 2.4 基本算法 查找、更新、排序和字符处理 2.5 程序编制方法 2.5.1 分支、循环、子程序(过程和函数) 2.5.2 输入输出和文件的基本处理