程序员年入50万,我们该如何努力达到这个目标?

317 阅读11分钟

一、在公司里,哪些人能年入50万

这里仅限于软件行业。

年入50万,那么平均月薪得53k+,这样扣去税,交金等,平均月入能做到40+。

至于用哪种形式?比如是纯工资,还是工资加年终奖,或者工资加奖金加股权等,本文不在乎。

如果某人达到了这个水平,那么公司自然会给出这个身价,如何给法,这个可能就是数学游戏了。

一般来说,初级开发(3年内)月薪在12k到20k之间。高级开发(5年左右)高的就可以有25k,资深架构或资深项目经理(6年+),可以达到35k,能管20人之内团队的架构或项目经理,可以达到45k,而带50+团队的部门经理(一般工作经验在10年以上),哪怕是低点的话,就能达到50k+了,就能达到本文提到的收入水平了。

还有一种是走技术加成的路线,比如最近比较流行的AI,大数据或区块链等,这类资深人才如果有5年+相关资深经验,就能达到这个水平。

或者,到小公司或创业公司里去做技术总监,至少也是这个价,但是否能持久?我就不敢妄加评论了。

二、可以适当算些工作外的收入

除了在上文里提到的工作收入外,我还见过如下的一些创收方式。

1 做软件产品卖,或者帮人兼职做软件。如果全职上班的话,一年估计能增收的额度估计在10万以内。

2 做培训,如果是讲基础内容,每周末去讲一次的话,估计每年能增收8到10万,如果讲热点知识,比如区块链等,那么年入可以到10万到15万,如果成了某个领域的大牛,去做高端企业培训的话,每场的行情至少2万,平均每月就讲一场,那么估计年入能20万+。

3 像本人那样写书,按目前的图书市场行情,每本书的收入估计在1.5w,一年估计3本,那么在5万左右,但如果算上写书给自己带来的无形价值,(比如靠出书积攒名气,再去讲课) 一年估计能增收10万。

4 做各种技术咨询,比如出方案,这个我接触得不多,但如果能保证长久有活的话,每年估计也能增加10万。

5 适当做些投资,比如买些基金或者理财产品,目前市面上大约是年收益5%。其实这样算,如果有1千万,每年保守的理财收益也能有50万了。

三、我见到的年入50万的众生相

1 小A,某外企部门经理,管理50多号人。

每天早上大约9点半到公司,每天估计开会(电话会议和现场会议)时间有6个小时,和领导和客户沟通时间估计2个小时,剩下的就是写ppt,邮件和跟进度了。一般来说,周末如果能有一天闲下来就不错了。

2 小B,某大厂架构师,技术牛人,分布式架构5年+经验,对于分布式系统里的反向代理,mq,数据库集群等组件有资深的实践经验。 每天平均开会时间+解决问题的时间,估计有6个小时,一般是下班后才有时间干自己的活,平时不怎么写代码,而是出方案,具体来说就是根据业务系统的现状设计组件,开发组件时遇到问题,得及时解决。而且需要手机一直开机,有问题得及时解决。

需要说明的是小B是资深架构,还没做到技术总监级别,如果能做到负责某个产品的首席架构或技术总监,年入估计要70万+了。

3 小C,有自己的公司,平时帮人出解决方案,卖自己公司的产品,顺带做监理,培训等等,反正什么活都干,平时经常在飞机上,不定时需要和别人去谈项目。而且,从谈客户到实施到问题解决到后继维护,大多都是自己解决。

4 小D,做培训的,培训内容涵盖PMP,数据库,AI等,做大班培训和企业培训,在行业内也比较有名气了,也是有自己的公司,而且做得时间比较长,有稳定的客户源,算下来,一年有100万+了。但每天也有见不完的客户和干不完的事。

5 小E,某创业公司(规模一般)的技术总监,年入55万+,老板的要求是,得解决任何技术问题,从带人开发到测试到上线部署到性能优化,全都得管,大到租服务器上线项目,中有选用分布式组件开发项目,小到代码review测试,没有不涉及到的。而且成天得提心吊胆,因为创业难。

归纳一个字,年入50万,忙。

但相比那些混吃等死无所事事的,这些人能用忙来换钱,也算是有本事了,至少本人愿意往这方面努力。

四、归纳下年入50万的技术和软实力方面的要求

先归纳下技术方面的要求。

1 至少得有架构师的能力,而且得能在项目里搭建各种组件,这些包括但不局限于:反向代理集群,消息中间件集群,微服务集群组件,缓存实现方式,日志管理组件,数据库集群,数据库分库分表集群等。

2 项目里的架构组件遇到问题时,能通过debug查看源代码的方式解决实际问题。

3 能编写linux发布脚本,能在linux搭建基于Spring boot或tomcat等的项目,同样,一旦项目运行出现问题,能通过查看日志快速定位和分析问题。

4 得至少是一个领域的专家,比如在数据库方面,知道oracle调优,或知道如何搭建集群,总之精通数据库方面的部署调优排查问题等方面的问题。这样能做到在团队里,这个领域方面,你是无可替代的。事实上,真正大牛不会仅局限于一个方面,往往同时是多个领域的专家。

5 在当前某个热门领域(AI大数据或区块链)有解决实际问题的能力,而不是仅仅能搭建一个脚手架项目。

总之,技术上得综合全面,而且精通一个或多个领域,而且最好能紧跟热点。但一些高收入人群的能力还不仅限于此,下面说下我看到的这些大牛在在非技术领域方面的技能。

1 能带团队,能把自己设计的方案平稳地让手下的人实现,其中就包含了团队协作,沟通,进度把控,风险把控等能力。

2 能和其它团队的人沟通甚至扯皮的能力,毕竟最终出一个方案,得兼顾多方利益,有时候技术得向进度成本等因素妥协。

3 不断学习的能力,包括能认识到哪些该学以及该怎么学,这说起来非常简单,但根据本人的实践,难。

4 能和各种各样的人打交道的能力。这往往是从事软件开发的程序员比较欠缺的能力。

5 更为重要的是,能意识到当前的热点,同时知道自己该往哪个方向发展,同时或者通过学习,或者通过和别人协作,不断让自己进步。

比如我就见到一个人,他看到区块链当时比较火,所以一方面就挖矿,另一方面就学这块,目前就从事这方面的开发,收入比之前就高了不少。

五、如何高效地达到年入50万水准

我目前看到的是,在上海,一些能力比较强的人(大约10%),在具有5年工作经验后,就达到了这个水准,在具有8年经验的人群里,大约三成到一半人能达到这个水平。所以大家的目标应当是,8年内把自己的收入提升到这个水平。下面我提些可执行的措施。

1 给自己制定一个目标,比如我当前是高级开发,但两年后,我得具备架构实践方面的能力,能胜任架构师的角色。这还不算,然后得给自己列个学习和实践的清单,比如该学哪些,该操练哪些。

人无远虑必有近忧,目标虽然可以是虚无缥缈的,但没目标,一定是一事无成。

2 不仅得了解架构组件的实现和配置方式,还得了解该组件的部署和配置方式,而且出了问题还得知道如何调试和排查问题。就拿kafka组件举例,不能仅仅了解怎么用,而且还能编写部署集群的脚本,一旦出了问题,还得知道通过日志甚至debug底层代码排查问题。

3 在第2点的要求,尽可能多地掌握高并发场景下的技术点,比如数据库分库分表,消息缓存等。

4 目前不少系统是部署在Linux上的,所以Linux技能也是必备项,不仅会通过linux命令部署应用,而且还得编写部署脚本,最好还能在Linux配置各类集群。

如上是技术方面的需求,其实说起来非常简单,要达到上述要求不容易。下面列些实践中的经验。

1 积累上述技能时,得靠踩坑来积累经验,尤其是高级开发往架构方面升的阶段。这时可能会发现自己欠的债太多,或者工作压力本身就大,出了问题又很难排查,往往这个时候就得靠咬牙坚持了。(本人目前就处于这个阶段)

2 最好进一个大厂,比如BAT或互联网企业,不是说外企等其它公司就无法提升自己了,但毕竟互联网公司提升自己的效率更高。如果发现在当前公司虽然舒适,但无法给自己更好的发展前景时,那可能就得为自己多加考虑了。

这里也说个笑话,一个人的提升速度和1 踩坑率(踩坑数量除以天数)2 平均加班时间 3 身边牛人的数量 这三点成正比,哪些公司能同时满足上述三点呢?

3 不断总结积累,至少把在工作中用到的技能点吃透,比如最近我在用线程,那么就得把诸如volatile等的细节搞明白。又如,最近我会在linux部署和排查项目,那么就得不断掌握linux各种相关的命令。

4 先做学徒再做师傅,刚开始总是不可能有实践机会,总是会跟在架构师后面打零工,这时就得多琢磨架构师是如何分析和解决问题的。 比如我最近在跟着一些大牛在做数据库分库分表,当程序调通后,我没有就事论事,而是再进一步去了解相关组件的底层细节以及集群配置方式,所以最近我感觉在架构层面,进步不少。

5 同时锻炼自己分享,和别人沟通,执行力和时间管理等方面的领导方面的能力。

6 平时不能光埋头干,得定时到外面找些活,比如写书做软件做培训等等,这样挣钱是一方面,另外能见识到更多的人,这样自己视角就更广泛了。 当自己人脉广了以后,小到找活,大到换工作,都有帮助。

六、总结,求帮助,求推荐

虽然本文的主旨是介绍如何年入50万,但通篇是介绍积极正当的手段,所以也不上拜金。况且只有始终保持积极向上的进取心,才能不断提升自己。

本文从构思到完成,前有有3个多小时,自认为列出的各点,也都是本人所见和所思,所以希望对大家有所帮助,如果确实如此,本人不胜荣幸,也请大家多多推荐。

此外,本人自感学习和挣钱动力尚可,但一直苦于没有方向,所以如果可以,请大家在留言里多提供如下的信息,以便共同进步。

1 介绍些Spring Cloud微服务体系,高并发组件相关知识的公众号,以便本人不断拜读此类文章。

2 本文也算抛砖引玉,如果可以,请大牛在留言中也多多给出些分享,多多给出些指导。

3 如果可以,分享些软件方面合法的创收渠道。