百万年薪是个永远说不烂的话题。
就在最近的一年,仿佛雨后春笋一般,身边开始涌现出很多年薪百万的程序员朋友,清一色集中在腾讯阿里京东头条这些公司。其中一个朋友对我说“年薪百万没什么了不起的,那些老员工同事钱多得都快溢出银行卡了”。
作为一个 5 年多的美股玩家,我也知道他们年薪进入百万甚至几百万级别很大因素也是因为腾讯和阿里股价在过去的 2017 年都翻了一倍多,所以那些找工作不谈期权和梦想,只谈钱的小伙伴你们是没遇到腾讯和阿里这样的公司啊!
年薪百万的程序员都是什么样的人呢?
1、头发浓密的抽象类 A 君
头发浓密的 A 君看起来并不像是个技术大牛,他研究生毕业后进了西二旗某著名大厂,一干就是五年,最近跳槽到某擅长用算法给用户投喂内容的公司做技术组长,拿下 80W 年薪,另外加上不少的期权年薪远超了100万。
A 君生活中爱好蛮多,平时早下班的话会去健身或者打拳击,偶尔也会在家打几把 DOTA ,周六日或者放假会约上三五好友去北京周边爬山徒步,他说,这些年利用周六日假期对京城附近的名山野谷做了一次二叉树遍历。
这些年来,我一直非常嫉妒 A 君精彩的生活状态,他活得太不像一个“程序员”了!我有时候甚至觉得他业余生活那么精彩技术一定肯定是停留在好几年前吧,但是每次和他吃饭他总能给我聊一堆最新的技术的研究或者实践心得,让我又不得不折服。
对了,刚刚过了三十岁的 A 君还是个抽象类,没有对象。欢迎爱好领养程序猿的小姐姐留言索要照片。
2、游刃于技术和管理之间的 B 君
B 君是一个标准程序员样子,大专学历的他已经工作将近九年了。他在中国顶级的互联网公司呆过,也在传统的大型企业带过几十人的技术团队,2017 年年初的时候,他说计划辞职回到一线写代码,当时一脸不解的我写了几百行 bug 也还没想明白为什么放着好好地管理岗不做,要回来写 bug 。
半年前,B 君跟我说“跳槽了,成功切换到了技术专家的职业路线,从技术管理回到技术专家绝不是因为将近百万的薪水,的确是因为喜欢”。
我相信 B 君的确是因为喜欢技术本身才又从很多码农羡慕的技术管理岗重新回到技术专家的职业轨道,这些年 B 君一直都活跃于中文技术圈,他非常善于将一个艰涩难懂技术问题用有趣的故事讲解出来。对了,他还是个技术网红,估计你们都认识他,猜猜是谁吧!
3、永远在自我怀疑的 C 君
C 君不止一次跟我说,自从年薪过了百万之后就一直惴惴不安,他总感觉自己根本不值这个价,直到有一次他兴冲冲跟我说最近修复了一个bug,帮公司一年就多赚一个多亿了,他说终于找到价值所在了!
后来又有一阵子他在朋友圈抱怨一年多以来都在写业务代码,感觉自己一直在搬砖,于是踌躇满志得开始计划去国外读过计算机博士,他说计划四十岁退休去做个教授。
写这个文章的时候,我发微信问他读博的事情准备得怎么样了?他回复说“最近想通了,写业务代码不仅需要技术实力还需要产品能力,先赚他几年钱再说!”
最后其实我内心在想不写业务代码?你想写什么?一言不合写个操作系统,一言不合看 linux 源码,一言不合实现编译器?但是对方是大神,我这话又噎回去了。
最后我也不知道为啥突然就想聊这几个百万年薪的朋友,可能就是想激发下自己的赚钱欲望吧。
来,最后大家一起来吼一句"百万年薪很容易啊!不就是腾讯 t3.3 级别,阿里 P8 以上,网易 6 级员工,创业公司的 cto 嘛!"如果你想达到腾讯 t3.3 级别,阿里 P8 以上,网易 6 级员工,创业公司的 cto首先你要看看以下技术你能掌握多少。
源码分析
程序员每天都和代码打交道。经过数年的基础教育和职业培训,大部分程序员都会「写」代码,或者至少会抄代码和改代码。但是,会读代码的并不在多数,会读代码又真正读懂一些大项目的源码的,少之又少。这也造成了很多错误看源码的方式。
那要如何正确的分析源码呢?
我们的目标应该放在最常用的框架上面,下面就介绍两个:一个是Spring,另一个是大家用来觉得一直不怎么出问题的Mybatis。
△spring源码
△mybatis源码
加群:795632998即可获取往期Java高级架构资料、源码、笔记、视频
Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、
高并发等架构技术
JVM和性能优化

工程化专题
工欲善其事必先利其器,不管是小白,还是资深开发,都需要先选择好的工具。提升开发效率和团队协作效率,让自己有更多时间来思考
面向人群:具有1-5年工作经验的人群
Maven
生成可执行jar、理解Scope生成最精确的jar
类冲突、包依赖 NoClassDefFoundError问题定位及解决
架构师必备之Maven生成Archetype
Maven流行插件实战、手写自己的插件
Nexus使用、上传、配置
对比Gradle
Jenkins
搭建Jenkins自动部署环境
Jenkins集成maven、git实现自动部署
testpreproduction 多环境发布
Jenkins多环境配置、权限管理及插件使用
Sonar
使用Sonar进行代码质量管理
关于代码检查工具FindBugs/PMD的运用
SonarQube代码质量管理平台安装及使用
使用Jenkins与Sonar集成对代码进行持续检测
Idea与Sonar集合的使用
Git
什么是Git以及Git的工作原理
Git常用命令Best practise(避坑教学)
Git冲突怎么引起的,如何解决
架构师职责:Git flow规范团队git使用规程
团队案例分享(买不到才是最贵的)
微服务
关于微服务架构的取舍
在合适的项目,合适的团队,采用微服务架构收益会大于成本。
微服务架构有很多吸引人的地方,但在拥抱微服务之前,也需要认清它所带来的挑战。
需要避免为了“微服务”而“微服务”。
微服务架构引入策略 – 对传统企业而言,开始时可以考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。
分布式架构
随着我们的业务量越来越大和越重要,单体的架构模式已经无法对应大规模的应用场景,而且系统中决不能存在单点故障导致整体不可用,所以只有垂直或是水平拆分业务系统,使其形成一个分布式的架构,利用分布式架构来冗余系统消除单点的故障,从而提高整个系统的可用性。同时分布式系统的模块重用度更高,速度更快,扩展性更高是大型的项目必不可少的环节。
分布式架构(一)
分布式架构(二)
B2C项目实战
要想立足于互联网公司,且能在互联网浪潮中不被淹没,对于项目的开发实战演练是不必可少的技能,也是对自身能力的一个衡量,有多少的量对等于获得多少的回报。看似简单的一个项目需求图谱,其中的底层原理,实现原理又能知道多少?你搭建一个完整的B2C项目平台到底需要多少知识?这一切都是需要我们考量的。
架构关键基础设施

加群:795632998即可获取以上架构资料,获取往期Java高级架构资料、源码、笔记、视频
Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、
高并发等架构技术
网友评论