
其实程序员什么35岁就不行了的说法是个伪命题,是人为的强加的致幻剂。虽然软件行业有其特殊性,但是也有其普遍性。其他行业35岁那才真正进入事业快车道,软件行业我认为也差不多。
软件行业不光是写代码,积累到35岁,如果还能写代码那一定是经验丰富,代码水平高,即便继续写代码那也比一般的人好,当然排除那些不思进取不学习的人。
最差带几个人做个项目经理做项目就比年轻仔强很多。不但可以利用自己的经验还可以写关键代码。年龄其实不是问题。
那问题是什么给大家的印象是35岁程序员就没得混了?其实现在很多程序员其实是码农,大家说IT行业是一个知识更新非常快的行业,其实也不尽然 ,更新的是表面,其本质一直没变,一个码农一般都学的是皮毛,就懂一点什么框架 的编程,缺乏学习能力,不懂软件最基本的原理,学校学的那点一旦过时就什么也不剩了,那面临的就是淘汰。
如果是一个了解软件本质,学习能力强的人,语言只是形式,对于一个项目,觉得什么语言合适就用什么语言,你懂一门语言,另外一门语言要不了一个星期就可以编程了,关键还是基础,是原理,是思想和经验。
所以程序员们,不要被别人的致幻剂迷糊了,只要你肯学能进步,喜欢软件开发,年龄一定不是问题,只能越来越吃香。
个人观点,不喜勿喷!也希望大家能够说明自己的观点,大家一起学习,一起进步,营造良好的学习气氛!
大家都知道程序员也分为做什么开发的程序员,比如市面上最流行的Java、C语言、C++、python、PHP等等开发程序员,未来的发展是不一样的。
其实,我觉得未来发展前景的话,要找天花板较高的语言来作为基础学习,慢慢的把自己的架构思维给建立起来。
等你拥有自己的架构思维之后,其实语言就是一种工具而已,所以一定要清晰规划自己该学习什么语言,该怎么样来学,我在这里推荐Java语言,因为Java语言的学习就能够帮你初期建立这种思维方式,还有Java语言的独特性,证明了它的优越性!也证明了它的天花板比其它语言要高,当然上手难度也比较高,自己要有一个清晰的认识,
关于大龄程序员出路,我这里得多说一嘴!
一提到大龄程序员,大家第一时间就会想到,35岁中年危机。
不可否定,35岁这个词确实很扎心,也是许多程序员的恐惧所在,但是,请大家不要惊慌,要给自己打一针强心剂。
30而立相信大家都听说过吧?但是也不然,也看个人的机遇和努力!程序员也是一样!
这里就说到了职业规划的重要性,从22岁毕业实习再到30岁这八年时间,处于一段技术磨合和提升期,也就是技术的沉淀,沉淀到了一定的时间之后,就要考虑管理经验的提升,随着年龄的增长,身体上、思想上、精神上都会出现惰性,当然也跟自己拿知的运动有关系,要加强自己对身体的锻炼拦轿,每年做体检!
30岁之后,有的人考虑单飞,自己找合伙人创业,自己开公司求发展;有的人继续按部就班,沉浸在996的世界之中;有的人不断地提升自己的技术能力和架构思维,在大厂中继续深造,让自己变得更有价值!
不知道你们是属于哪种,但是,最重要的还是个人的思维!希望自己能够好好考虑一下,从自己下手,彻底的改变自己,不然淘汰是迟早的事儿。
三点:改变自己的思维;加强自己锻炼;做好职业规划!
以上个人观点,不喜勿喷!欢迎大家一起讨论。
本人作为程序员,曾经也为这个消衡消问题困扰着。程序员在35岁就会面临各种问题,身边也有这样的例子,上一家公司有一个同事,40岁了还在写代码,他的工资不高。后来项目预算超标了,他也就成为了被裁员的对象。那是我第一次感觉到了年龄越大而带来的危机。
但是话有说回来了,40岁了还在写代码。只能说明了他对自己没有明确的职业规划或者个人的不思进取造成的。IT行业有他的特殊性,第一个特殊性就是知识更新很快,第二个就是很注重职业规划。
所以要想不被淘汰,要么积极学习没拥有很厉害的技术,成为一个领域的技术专家。要么走管理路线,在平时上班的时候就要注重这方面的培养,首先要在工作中锻炼,还有考取一些专业的证书来给自己增加竞争力。
当然也有的选择自己创业,这是最好的结果。所以,在当下最重要的是怎么给自己规划。多考虑这方面的问题,要是想通了也就没有那么的纠结了。
我是个IT新人,程序员的未来前景毫无疑问是不可小看的。世界逐步进入5G时代,对于程序员来说即是挑战也是机遇,5G时代到来必将会带了新的技术升级,也必将淘汰旧的技术,所以说对于程序员即是挑战也是机遇,只有不断地学习你才能把我好这一机遇,雷军说:“站在风口上,猪都能飞”。但首先你得是有准备的猪 。
对于大龄程序员,我是这样子想的,等我年龄大了,不可能一直处在代码一线,要么转管理岗位,如:技术主管,产品经理,项目经理,有能力的做个技术总监。
要么转行,我朋友常常给我开玩笑说,等年龄大了,我们去送外卖吧!自由自在,月入过万
要么拿出积累多年资金、人脉开始创业
30+程序员一枚,刚好可以回答这个问题。
先简要说下我对这两个问题的答案:
下面,我们就来一一解释。
程序员是有前(钱)途的职业
首先是 金钱 方面。在所有行业里面,it行业是比较有前(钱)途的职业,我想这句话可能极少有人反驳。当程序员相对来说能挣钱,即使这些钱是需要加班加点挣来的,但是总归来说提供了普通人一个挣相对高薪的途径。即使在北上广深,当程序员也相对其它行业更容易买车买房,站稳脚跟。另外,每年无数的大专本科生上培训班,当程序员也很能说明情况。
其次是 行业发展 方面。程序员从事的是it行业的工作,是一门用技术改变生活的行业,it技术已经应用于方方面面,这也无形中给程序员提供了更广阔的用武之地。
大龄程序员的出路
关于大龄程序员的问题,其实我觉得更应该说是 一个普通人中年危机的问题 。因为年龄大了,薪资相对新人更高,加班能力更差是大部分行业都会遇到的问题,只是这个问题在it行业放的更大了。网络当中很多所谓的35岁问题,一部分是来自于程序员的自嘲,一部分情况其实是因为部分大龄程序员拿惯了高工资,没有做人生规划,技术没有提升,然后又遇到了中年危机后无所适从罢了。可能有人会说老师,医生等行业会随着年龄增加而成长什么的,这个确实有其相关性。但是程序员毕业就拿高薪,其它行业可能要积累很多年(这里说的是平均,个例不探讨)。
至于出路,我认为出路有很多:
当然,我这里说的大龄程序员指的是正常的程序员,不是那种天天混混日子,突然一裁员发现自己啥也不会的人,我觉得这种人基本上是很难有出路的。
关注令狐一冲,关注区块链和IT技术!
在民企,大龄程序员确实不好混了。华为裁掉35岁以上的普通员工,就说明这些大公司只需要年轻人,加班苦干。年纪大了,拖家带口的,加不动班了,就劝退。这种情况说明这种工作都是些按部就班的,没什么创造性的工作,不需要很多经验。
外企的情况会好一些,50多岁的头发花白的程序员依然在工作,他们看重的是工作的积累,经验。公司也把这些人当做公司的财富。国内因为抄袭太严重,不太注重知识产权,导致程序员的地位并不高。
大龄程序员要在工作之余,发展一些副业,多学些技能,考一些证书,做一些理财投资等等。保证自己万一被裁员,不至于没有收入陷入焦虑。
这问题问的,大龄农民工出路在哪儿?
所以了,人口总量下滑,人力资源不足,大龄程序员总是有人要的,只不过不同水平的去向、待遇不同罢了,这跟年龄、行业没关系,哪个年龄哪个行业都一样有分化。
首先,程序员这个职业不再是个香饽饽,这一点各位程序员必须要摆正心态!随着人工智能在编程方面的运用以及程序员数量的大规模上涨,未来大多数程序员的待遇会跟 社会 平均工资看齐,短时间依然会有优势,但随着时间推移,这种优势必然转为劣势。为何?供需决定价格,以前供不应求当然价格高,未来供大于求甚至每个人都会编程,自然没啥议价空间。而那些没人愿意干的脏活累活自然成为高收入岗位。
其次,许多程序员会成为领导或者老板,毕竟 社会 需求在,有大需求也有小需求,对用户需求敏感的人自然能够抓住机会自己创业。
再有,某些高收入程序员会跨界进入别的行业,毕竟有了资本有了 社会 经验,很多事情都是相通的。
最后,大多数冲不上去也没钱或没想跨界的,继续待在公司里搬砖,虽然加班比不上年轻人,但毕竟经验丰富,码代码的速度和质量是有的,只不过工资持平奖金下降不忍也得忍啊,毕竟为了生活,别的很多职业人家的工资本就是好多年没变化,程序员也不会例外,之前例外是因为供不应求。
有人说程序员是脑力活,跟农民工不能比,六十岁农民工还能干活,六十岁程序员脑子怎么跟得上?作为过来人,笔者可以向各位保证:越大的团队,里边需要动脑子的人越少,大多数大厂的程序员混到最后都是干的力气活,根本不需要脑子,这就是熟练度。至于这是好是坏,仁者见仁智者见智。
看到这个问题,作为一个资深的程序员和管理者,我认为我有资格来回答这些问题。无论你是因为爱好编程走上程序员这条路,还是因为看见程序员的高薪加入这个行业。既然有这个疑问,就说明你已经有了职业焦虑:程序员真的能一直做下去吗?是不是35岁就面临着中年危机?单靠写代码能走向管理者岗位吗?大龄程序员的出路在哪里?我结合我自己做10多年程序员的经验(担任过高级工程师、数据架构师、数据负责人和数据总监等岗位),讲讲大家都十分感情去的问题。
一 程序员能干到退休为止吗? 1.1 从初级程序员开始,不要错过的发展路径首先,程序员们关心的都是自己在这个行业能干多久,而不是在某个公司待多久。尤其是现在行业内卷非常严重,几乎不可能让你在一个公司工作一辈子;因为,行业变数很大,说不定哪天就裁员了,而且你正好在裁员名单中。针对这种情况,我的建议是:
在自己30岁之前,一定要不断地丰富自己的知识库,让自己的能力保持在行业的头部。
① 初级->中级
这个阶段主要是学习,在很少依赖其他人帮助的前提下,能够保质保量的完成手上的工作。在这个时期,自己多找几个师父,由资深的程序员对你做技术路线的指导。这样即可以少走弯路,又可以快速地学习和掌握前沿知识。
② 中级->高级
这个阶段主要是从公司现有的技术架构中,提炼出高难度、有价值的内容。并能够用批判的眼光看待这些事,总结出哪些做得好,哪些做得差。如果是你来做,你会怎么做?
可以从领导对你的信任角度上,看出来你在这个阶段成长的好坏,如果让领导和团队成员对你非常信任,说明你这个阶段是成功的,可以方向的走向第三个阶段。
③ 高级->资深
这个阶段至关重要,涉及到你是走专家路线还是走管理路线,这是一个转折期。如果自己擅长沟通和乐意交流,在这个阶段多观察你的直属领导是怎么安排工作的,他的工作方式有哪些缺陷,如果是你你会怎么做,需要不断地总结归纳管理方式方法;除此之外,在技术方面,必须要学会复盘,并且愿意复盘,而且是愿意看别人复盘。复盘是对程序员帮助最大的环节,一定不要认为复盘是浪费时间。
如果你想走专家路线,那么就要保持头脑的清醒:你做的内容是纯技术还是业务+技术。如果是纯技术,那么走专家路线是没有问题的。否则,千万不要走专家路线。
1.2 消除常见的误解,包括【只能吃青春饭】一定要消除青春饭的这种不良的意识,为什么呢?因为管理岗也是技术出身。从程序员编程管理人员,也能够年薪百万。如果你不是科班出身,怎么能做好一个管理者呢?一个管理者需要的技能很多,需求分析、目标设定、资源协调、团队协调和赋能培训。管理者不是想想就能做到的,需要既懂技术又懂业务,同时还要懂管理,更要会报告,会表功,甚至会做客户的公关,智商情商双双在线。
如果你练就了这一身本事,还能是青春饭吗?是不是感觉到自己有很多内容要学习,要修炼。
二 我适合做管理还是技术 2.1 并不是说管理者一定会脱离技术作为程序员,其实人到中年,就要面临着转型的挑战。如果一直写代码,你和20岁出头的小伙子去竞争,就会累得头破血流。人无远虑必有近忧,就职业发展规划来说,应该转型为架构专家、算法专家,研发主管或者项目经理。
管理者不是必须要懂技术,管理本身就是一门学问,职业经理人就是依靠管理吃饭的。管理的真正核心是利用资源,知人善任,自己不懂技术可以找一个懂技术的人。经常看见公司的高管在变动,他们在技术、专业方面不一定有多精通,但是具备了经营管理的能力,一样可以在新的领域取得成绩。
2.2 不要做自己不擅长的事,不盲目追求高薪追求高工资,带来的是钱,也是一种成就感。但是一味想通过跳槽来升职加薪,是最不可取的。可以负责任地讲,在你的职业生涯的头5年,这种做法影响不大。但是在5年以后,你会发现自己没有沉淀和积累,因为换工作也是非常耗精力的。
不要看见别人做了管理者,自己就认为可以做。自己一定要认清楚自己的能力范围,在能力达到时,并且自己愿意转型时,值得一搏。
三 除了写代码,你还有很多事情要做 3.1 学会互联网思维,多渠道发展,多种经营有人会说,我现在已经35+岁了,我还是普普通通的程序员,没有一技之长,也不懂管理。我该怎么办呢?互联网时代给了我们很多创业的机会,比如可以做自媒体,直播带货,自己开一个小型的培训公司。
最好是在自己年轻的时候,就考虑过有一天会被IT行业淘汰,那我应该去做什么呢?要着手准备什么呢?
3.2 掌握跨界知识,成为跨界人才我还是那句话,自己行业内的东西对于自己来说,是最简单的。平时多和其他行业的人交往,多听、多学,有可能他的领域就是你发光发热的地方。程序员有着执着、冷静、聪明的头脑,做任何事情都不会比其他人差,主要是选好方向。
优秀的程序员不论年龄大小,前景都非常好!巨大的市场需求决定了优秀程序员的紧缺性,在数字化时代,已经没有哪个行业会离开软件的支撑,这个趋势在可预见的未来不会改变。
一般来说,人会随着年龄的增长,工作的时候精力会跟不上,但从另一个角度讲,年龄大了,经验就会更丰富,尤其对于像程序员这种知识型工种,只要他肯学习,跟上技术的进步和变化,他就不会落后,就会继续有用武之地。
软件技术的变化也是非常大的,新的框架、新的开发环境、新的编程语言不断出现,程序员也要注重自身的学习和修养,为断适应互联网+时代的技术发展,只有这样,程序员才会永葆青春。
当然如果已经功成名就,账务自由,选择别的职业也挺好,人各有志,看个人发展和兴趣爱好!
[《深入理解计算机系统》-读后感]
介绍:本书从程序员的视角详细阐述计算机系统的本质概念,并展示这些概念如何实实在在地影响应用程序的正确性、性能和实用性,《深入理解计算机系统》-读后感。全书共12章,主要内容包括信息的表示和处理、程序的机器级表示、处理器体系结构、优化程序性能、存储器层次结构、链接、异常控制流、虚拟存储器、系统级I/O、网络编程、并发编程等。书中提供大量的例子和练习,并给出部分答案,有助于读者加深对正文所述概念和知识的理解。
本书的最大优点是为程序员描述计算机系统的实现细节,帮助罩伍其在大脑中构造一个层次型的计算机系统,从最底层的数据在内存中的表示到流水线指令的构成,到虚拟存储器,到编译系统,到动态加载库,到最后的用户态应用。通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好地理解程序的行为为什么是这样的,以及效率低下是如何造成的。
全书将软硬件串在一起帮助我们描述了程序是怎么在系统中工作的,书中的链接加载程序布局等我在《程序员的自我修养》中读到过,其余很多知识和计算机原理、 *** 作系统、系统编程也有很多重叠,总体说来内容并不是很陌生,但仍然有不少收获。第三部分io网络并发三章尚未阅读
写下之下的这些文字是为了帮助自己更好的复习全书的内容,尤其是自己以前掌握不深刻的部分
书的第一部分是全书的精华,主要讲程序与硬件,第四章除外,我没有看
第二章,重点是数的表示方法
移位运算算术右移和逻辑右移的区别
字节顺序大端和小端
数的格式转换先改变大小,再改变有无符号,无符号有符号隐式转换带来的灾难
整数的运算主要是各种溢出问题
浮点数乘法不具备可结合性,转换为整数时可溢出
第三章,重点是汇编程序,个人认为收获最大的一章
各种指令,mov,leal,移位,运算,控制,条件传送指令*,
各种逆向工程,结合习题很有意思
函数调用时帧栈结构
联合、结构数据分布和对齐的问题
内存越界和缓冲区溢出
64位(没有太仔细看,寄存器多了大了,函数调用有很多不同,很多函数不需要栈帧,参数通过寄存器传送)
第五章,程序优化,全章由一个例子贯穿始末,量化了不同方法带来的性能改进
编译器优化的局限性,限制这种能力的原因有:存储器别名的情况,函数调用(静态变量,可重入)
循环优化,不变的变量只算一次
减少函数调用(性能和可读性的折衷)
不必要的内存引用(尽量用临时变量在寄存器中,避免不必要的内存读写)
从处理器的角度考虑(流水、预测分支、关键路径),循环展开,考虑流水(充分利用处理器的多个加法器等,超标量)
程序剖析的工具 gprof
第六章,存储器层次结构
各种存储技术,寄存器,SRAM(高速缓存),DRAM(内存),硬盘(传统硬盘、固态硬盘),网络
各种缓存,高速缓存L1L2是内存的缓存,内存是硬盘的缓存,各种缓存的管理机制(这里只讲了高速缓存的,后面会将内存管理)
程序的局部性,时间和空间的
第二部分,主要将程序在系统的中的运行,这一部分和前一部分差距较大,原因是这一部分凯乎我比较熟?
第七章,链接
可以参见《程序员的自我修养》这本书,主要是目标文件格式阿,符号解析阿,重定位阿的,内容比较简略
静态库的链接顺序,经常会出错的一个问题
一些工具的使用,readelf,objdump,ldd
感觉从这一章物孙或开始,翻译就很不给力了
第八章,名字很奇特,叫异常控制流,讲了各个层面的异常,其实我觉得这一章还不如叫进程
四类异常:中断(IO设备),陷阱(trap,咋这么翻译呢,系统陷入多好听,主要是系统调用),故障(缺页),终止
进程相关,fork,execve,wait,waitpid
信号,读后感《《深入理解计算机系统》-读后感》。signal
非本地跳转,软异常?setjmp,longjmp,据说是try\\catch实现的基础
一些工具(pmap,strace,ps,top)
第九章,虚拟存储器,重点应该是内存管理,地址翻译的机制,我讨厌有些地方该叫内存却叫做存储器
内存管理,主要做了两件事,从虚拟地址到物理地址的翻译,提供了内存读写的保护(只读的内存不能写,只读写的不能运行)
动态内存的分配,给出了几种分配器的数据结构,这一部分没有仔细看
垃圾回收
各种内存的错误,总结的很好,基本我都犯过
回头再看第一章,人家总结的真好,整个一个计算机系统就是一个大抽象,把各种硬件系统抽象为一些简单的概念,这些概念让我们这些程序员能够轻松的处理程序而不用再管硬件了,伟大啊
三个基本抽象:
文件--负责抽象IO设备
虚拟存储器--负责抽象IO设备、内存
进程--负责抽象IO设备、内存、处理器
整本书就是负责介绍怎么抽象的
〔《深入理解计算机系统》-读后感〕随文赠言:【这世上的一切都借希望而完成,农夫不会剥下一粒玉米,如果他不曾希望它长成种粒;单身汉不会娶妻,如果他不曾希望有孩子;商人也不会去工作,如果他不曾希望因此而有收益。】
销售经理、区域经理、业务、促销员、业务主管、市场拓展员、营瞎顷罩业员、销售代表、市乎乎场调查员、督导、库管、理货员、送货工、快递员、磨闹网管、网络维护、电脑装配人员、编程人员、软件设计人员等等!欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)