工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?

本文主要是介绍工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  当一般的程序员工作5年左右后,往往会遇到事业上的一个瓶颈期:能力上已经达到高级开发,工资比上不足比下有余,而且至少能在所在城市站稳脚跟。

    不过根据行业现状,这类程序员再要向上提升,难度就不小了,具体表现为:不少人可能就在中小型公司间徘徊,工资或许有提升,但再也无法更高效地积累自己的经验和能力,或者就是,工作经验8年左右的程序员论能力和5年经验的没差多少。

    其实,大多数程序员都很勤奋,无法百尺竿头更进一步的原因不是因为懒惰,而是不知道方法,本文就将分享这方面的内容。正文开始。-------------------------------------------------------------

1  在职业瓶颈期内的普遍表现,如果得过且过,或许就发展停滞了

   得过且过类型的程序员这里就不说了,相信大家都不是。

   不过我见到不少具有5年经验的程序员,他们都很勤奋,但他们在攀登事业更高峰时,或多或少地会有些迷失感。

    

    下面举些例子:

    1 小张当前处在一家规模不算大的公司里,也已经是高级开发了,也能在项目组里能独当一面,每天也很忙,总感觉在重复劳动,不知道后继该如何发展。

    2 小李在一家外企,福利待遇也不算差,工作也不能算累,能自由安排的时间也不算少。在公司里干的活技术含量不算高,比如用的是纯Java+JDBC,架构大多也就Spring Cloud,并发量也不多,数据库是MySQL主从,看着一些技术大牛很风光,自己也想学,但技术点太多,往往学着学着就放弃了。

   3 小王在一家互联网公司,每天工作压力很大,版本迭代很厉害,总感觉陷入了业务里,也不知道该如何进一步提升自己的能力,也不知道该进一步学哪些技能。

    上述只是举例,对此,大家需要认真对待职业瓶颈期。

    否则的话,或许会出现如下大家不愿意看到的结果。

    1 过了快速进步期,个人发展就停滞不前了,比如在公司里,8年工作年限的程序员干的活和5年经验的差不多,而且也体现不出年限高的优势。

    2 也能通过跳槽不断涨工资,但所在的公司规模始终不大,这里我无意歧视小公司,但大公司里程序员的眼界和格局普遍要比小公司的要好广阔。

    3 我目前在上海,上海的生活压力也不算小,而且随着程序员的年龄增长,就得面临结婚买房照顾父母小孩的压力,如果持续2,3年发展停滞的话,生活可能就会比较艰辛。

2  大厂的高级开发和架构师一般得具备的功能

    解决这个问题时,我们需要直接面对靶心。

    

    比较直接但有效的解决方案是:提升自己的能力,在公司里挣更多的钱。再具体一点,大公司往往需要哪些方面的能力呢?本人最近几年工作的公司规模不算小,也接触了不少大厂的程序员,这里来说下我的体会。

    1   对高级开发而言,大厂的基本要求是技能达标,即能完成项目组的任务,但就这点远远不够。

    2   应该适当知道些配置部署方面的知识,比如能搭建一个Git平台管理代码,能用Jenkins或uDeploy工具搭建一个自动化部署平台,一旦项目部署到web服务器上有问题,高级开发还可以解决一些这方面的基本问题。

    3   技术是为业务服务,一旦业务出现了问题,需要能及时通过看日志,快速定位和排查问题,这就要求会些基本的在linux上查看日志的命令,比如grep,less, vi等。

    4 这点尤为重要,一般在公司里,每个人的工作都很忙,所以面对自己不熟悉的业务,从别人那边得到的帮助可能会很少,所以高级开发的学习能力一定得很强,一定得能通过查看代码或日志等方式,快速地熟悉各类业务和流程。 

    5 高级开发一般就需要能独当一面了,比如出现问题,高级开发就需要和需求方或测试方或其它组的人沟通,独立地解决问题,而不能事事再上报领导,请领导解决了。 

    而对于架构师,除了至少得有上述技能外,还得具备如下方面的技能。   

    1 不仅要保证系统的平稳运行,还需要找到系统系能上的痛点,比如性能上卡在哪里,或一旦当系统业务规模需要扩大,哪些当前的因素会成为瓶颈。

    2 找到痛点后,需要能独立地设计出方案,这个方案可能就不是仅仅是代码或数据库级别的,往往是分布式架构级别,比如如何搭建负载均衡组件,如何搭建缓存等。

    3 和高级开发相比,排查问题的级别需要进一步提升,比如对高级开发而言,可以通过debug代码来排查问题,但对架构师而言,就得通过debug现有的jar包来排查底层问题。举个例子吧,我最近就见到一位大牛通过debug Oracle JDBC的底层包,来排查数据类型不一致的问题。

    4 一些分布式的组件,一定得非常熟悉,得熟悉到了解到组件里关键jar包的底层代码。这里再举个例子,比如对高级开发而言,可能了解到消息中间件的用法就行了,但我知道的一位资深架构师,能通过mq平台包的异常,一眼看出是哪个里面哪个jar包报的异常,比如是某个jar包里的无界队列过长导致OOM了,或者是哪个jar包引用的日志组件和其它jar包冲突了。

     

3  努力且方法得当,一切都有可能

    我见过不少资质尚可,但因为感觉高级开发或架构师的标准太高从而自暴自弃的,不过,我也见过(以及听说过)不少同学通过逆袭,最终晋级到高级开发或架构师的水准。

    1 小A,计算机大专,后来通过专升本和专业的软件培训,具备了从事软件开发的能力,第一家公司非常小。但他早上上班,晚上看书和看视频,还在网上租了个空间,自己实践Spring MVC,Spring Cloud,大数据以及分布式架构,经过3年努力,最终进了阿里,成为其中的高级开发。

    2 小B是上海一家二本学校的计算机专业学生,之前做了销售等和软件无关的工作,从事软件行业时,已经是28岁了,我记得他第一份软件工作也是一家小公司,入职后他不断和我吐槽,说他和22岁的毕业生做的是相同的工作。

    但他把这种压力当成了动力,也是不断学习不断实践。

    经过不断试错,最终他找了一个比较好的方向,AI里的深度学习,然后经过面试,成功入职一下做数据分析的公司,目前薪资碾压同龄人。

    案例讲完了,然后讲些能快速提升自己的方法:

    1 神枪手是靠子弹练出来了,软件高手是靠踩坑积累起来了。所以在公司里,一旦有了问题,不管是自己的还是别人的,一定得总结,包括总结问题场景,总结排查问题的方法(如何看日志,以及看日志里的哪些要素),以及总结解决问题的方法(比如如何处理jar包冲突,如何通过分区等手段提升数据库查询的性能)。

    以我自己的体会,我最近半年遇到的坑比之前3年的都多,但我确实感觉最近进步很快。靠实际解决问题是提升自己身价的最好办法,没有之一。

    2 一定得锻炼在linux方面的基本功,包括打开日志,以及在日志里根据关键字的找到上下文,并排查问题的本事。技术只有和业务结合,才能产生价值,在业务点方面,排查问题是绕不过去的弯,我见过身价不同的高级开发,在这方面的能力绝对是不一样的。

    3  完成本职工作外,一定得眼观六路耳听八方,在此基础上得迈开腿,多动嘴。

    具体而言,有人到组里来寻求帮助时,可以尽量帮忙,哪怕这个问题最终没解决,自己至少也能通过观察别人如何解决,从而提升能力。又如,遇到测试开了bug,就得多和测试沟通,争取快速地重现和解决问题。这样一来二去的,自己分析处理问题的能力提升了不算,还能提升自己协调沟通的能力,一举两得。

    4  学习的重要性就不说,这里说下学习的方法。第一还得见缝插针地学,第二,一定得通过看视频或书,系列地了解到这个方面的知识点,先面到点,别反过来。第三,一定得边学边实践,如果开发环境没有,就自己搭建。第四,一定得通过面试(未必要去)等手段检验自己的学习方向和成果,一旦出现偏差,得及时纠正。

    我就见过不少头脑灵活的人,就不断学不断面试,这类人学习的效率要远比闭门造车的人要高。 

    总结下,快速提升自己的方法,第一靠练,第二靠学,第三靠(通过面试)检验。

    虽然进阶没捷径,但如果效率高,也能缩短时间,下面给出个小窍门:到大厂实践。

    

    我这里无意贬低小公司,不过相比之下,大厂里处理问题的格局会大些,而且问题的种类和难度也会多,根据我自己的体会,在大厂,尤其是版本迭代快的互联网公司,提升能力的速度是不可想象的。

    不过这里问题又来了?如何进大厂?在我之前的博文里,有不少关于面试和写简历的文章,这些一定能帮助到大家。  

4 分享下我见到的高效变现自己技能的方法

    我们通过辛苦学习,通过不断加班,是为了提升自己的能力,但更是为通过变现能力挣到更多的钱。下面就列些大家感兴趣的话题:如何变现技能。

    1 通过找到更好的工作,提升自己的工资。这是个不二法门。

    给出些上海当前的薪资待遇:5年java后端,如果能力好,2.5w+一个月,8年的,3w的不是问题,10年+的4w都算少的,5w+都有可能,而且如果运气好,还有期权股份等因素。

    有同学会说了,这是废话,技能高了自然工资就高,但我想说的是,很多大牛除了公司外,其它收入也非常可观。

 

    2 可以用自己的技能,写博客,出书,录制视频做系列课,可以到外面培训学校讲课,甚至可以做收入更高的企业培训。

    我有自知之明,我不算大牛,但我目前尚属勤奋。

    所以最近不断在写博客,也出了书:java web轻量级开发面试教程,反正上述挣钱的渠道我都尝试过。

    我的体会是:只要有能力,就可以打出名气,然后就可以通过同一份工作(比如写博文出书做讲课视频)挣多份钱,这样名气大了不说,还能提升挣钱的效率。

    3 能力强了,再通过写书写博文等方式,就能在业务打出名气了。这样讲课或文章的单价就提升了。

    这方面,最好是找个能包装自己的渠道,(比如网站或培训学校或开源组织),这样就能打出知名度,知名度有了,跳槽也好,出书也好,挣钱的速度就更快了。

     4 以自己的能力和名气去认识更多的人,人脉关系一广,接项目或者合作什么的就都有可能了。

     我见过这类大神,他们八面玲珑,到处接项目,然后自己做或外包出去,每月的收入非常可观。但我达不到这种地步,目前阶段还是在不断提升能力,靠技术吃饭。 非常希望在这方面有心得的大神来分享下经验。

5 本文总结,版权说明和求推荐

    天道酬勤,靠自己的勤奋多少能换回些收获,但用对方法走对路,这点也很重要。本人最近接触了不少软件行业的朋友,也多次接到这方面的咨询请求,最近在这方面稍微有些体会,所以写下此文。

    本文的初衷是为了分享,在字里行间也带了些具有可操作性的方法,而且是在周末利用休息时间写成,所以如有有错处,也请大家包涵,如果大家看到稍有可取之处,也请劳驾点击下面的“推荐按钮”,大家的推荐,是对我的最大帮助。

    最后再次感谢大家看完本文。本文欢迎转载,转载时,请注明原文出处和作者。

    

这篇关于工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/767931

相关文章

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

浅谈主机加固,六种有效的主机加固方法

在数字化时代,数据的价值不言而喻,但随之而来的安全威胁也日益严峻。从勒索病毒到内部泄露,企业的数据安全面临着前所未有的挑战。为了应对这些挑战,一种全新的主机加固解决方案应运而生。 MCK主机加固解决方案,采用先进的安全容器中间件技术,构建起一套内核级的纵深立体防护体系。这一体系突破了传统安全防护的局限,即使在管理员权限被恶意利用的情况下,也能确保服务器的安全稳定运行。 普适主机加固措施:

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +

v0.dev快速开发

探索v0.dev:次世代开发者之利器 今之技艺日新月异,开发者之工具亦随之进步不辍。v0.dev者,新兴之开发者利器也,迅速引起众多开发者之瞩目。本文将引汝探究v0.dev之基本功能与优势,助汝速速上手,提升开发之效率。 何谓v0.dev? v0.dev者,现代化之开发者工具也,旨在简化并加速软件开发之过程。其集多种功能于一体,助开发者高效编写、测试及部署代码。无论汝为前端开发者、后端开发者

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

工作常用指令与快捷键

Git提交代码 git fetch  git add .  git commit -m “desc”  git pull  git push Git查看当前分支 git symbolic-ref --short -q HEAD Git创建新的分支并切换 git checkout -b XXXXXXXXXXXXXX git push origin XXXXXXXXXXXXXX

java学习,进阶,提升

http://how2j.cn/k/hutool/hutool-brief/1930.html?p=73689

嵌入式方向的毕业生,找工作很迷茫

一个应届硕士生的问题: 虽然我明白想成为技术大牛需要日积月累的磨练,但我总感觉自己学习方法或者哪些方面有问题,时间一天天过去,自己也每天不停学习,但总感觉自己没有想象中那样进步,总感觉找不到一个很清晰的学习规划……眼看 9 月份就要参加秋招了,我想毕业了去大城市磨练几年,涨涨见识,拓开眼界多学点东西。但是感觉自己的实力还是很不够,内心慌得不行,总怕浪费了这人生唯一的校招机会,当然我也明白,毕业

JAVA用最简单的方法来构建一个高可用的服务端,提升系统可用性

一、什么是提升系统的高可用性 JAVA服务端,顾名思义就是23体验网为用户提供服务的。停工时间,就是不能向用户提供服务的时间。高可用,就是系统具有高度可用性,尽量减少停工时间。如何用最简单的方法来搭建一个高效率可用的服务端JAVA呢? 停工的原因一般有: 服务器故障。例如服务器宕机,服务器网络出现问题,机房或者机架出现问题等;访问量急剧上升,导致服务器压力过大导致访问量急剧上升的原因;时间和