和2017年的税后收入相比,19年的税后收入预计能翻番,当然基数绝非是5万10万,毕竟17年的时候我已经达到了Java高级开发的职级。而且在这基础上,尚能做到生活工作平衡。

回想起来,作对了不少事,也走了不少弯路,所以打算用若干篇系列文记录这一过程,一方面也算个总结,另一方面也把走过的弯路写出来,希望各位朋友看了有所收获。

1  在外企舒适区,工资性价比高,但个人所掌握的技术太没竞争力

在2017年初的时候,我在外企也享受了一段比较舒适的时光,到什么程度呢?

1 早上应该是9点上班,但9点半办公室里会有一半的人,从9点45开始,一些老油子(也包括我),会陆续到达,一些混吃等死的人(不是我),会10点或者更晚后到。有些人可能会想,这不算什么,人家互联网公司有比这个时间更晚的,但外企前天的下班时间一般不会超过7点。

2 到了以后,先看下美国的邮件,如果没大事(一般不会有),早上慢慢回下邮件,到11点半吃饭,外面逛一圈,周五能逛两圈,1点15开始干活写代码。

3 下午,如果遇到可能会担责任的事,就拉上人开个会,大家定个方案,然后慢慢做,做到5点半,坐等下班,如果很忙,不会超过7点。

4 晚上和老外开电话会议,一般一周1次,晚上9点到10点。国内老板管人事,业务向美国方汇报,国外用的技术绝对没国内先进,所以大家懂的。

5 一年过两份假期,中国的之外,美国假期当天没邮件过来,所以次日一般也没事。比如7月4日是独立日假期,美国不上班,所以我们7月5号一般没邮件,也相当于没事。

说到这里,可能大家非常羡慕,其实天下没免费的午餐,我这样的工作经历过以后,技术落后到什么程度?

1 平时工作,java只需要JDBC,Spring都用不到,ORM就用类似hibernate的框架,由于没业务需求,组里还专门成立spring cloud学习小组,就学些基本的demo案例。

2 SQL就一般的增删改查,也就是个MySQL主从读写,没有LVS。

3 部署用Jenkins + Git + Sonar,这块勉强没落后,这是我难得的能带到新公司的技术。

4 Redis用单机版的,Nginx + lua,也就是个调研项目,Netty或kafa或Mycat等组件,没听说过,甚至dubbo都没机会用。

所以当时,只要是组内跳槽出去的,过三个月后技术就能超过我们。这还不算,最糟糕的是,当时我更不知道BAT等互联网公司究竟用什么技术,也就是说,我当时开始准备面试时,连该准备什么都不知道。

2  刚开始面试,撑不过半小时,只能硬着头皮不断学

我是什么时候打算要换工作的?看网上,一些工作年限远小于我的人,在互联网公司里工资比我高,而且奖金至少是4个月的,再结合自己成天技术没进步,就着急了。

刚开始的时候,由于不知道要学什么,只能一方面先看,另一方面先找些小公司去面试。回想起我当前面试的窘况程度,简直不堪回首。

1 面试官问,你分布式框架用过哪些?应该是Redis之类的,但我直接说,用过Spring MVC框架。

2  面试官问,你用过哪些缓存?我说,我用过HashMap里放内容,作为缓存。再深入就不知道了。

3 面试官问,你们数据库层面怎么做优化?我只能说到通过执行计划优化。分库分表,我都没听说过。

后来好些了,也看了诸如Netty和Redis之类的框架,也能撑过些基本问题,比如Redis有哪些数据结构,Netty如何设置编码器和解码器。但一些底层问题一问就倒。比如Redis如何搭建集群,Netty里读写索引的工作原理。

诸如此类,虽然一次次面试失败没回音的滋味不好受,但总算知道了前进的方向,一方面,赶紧根据面试问题,把相关知识点看熟悉,另一方面,会看面试被问到的底层代码。

到后来,我也看了不少文章,这段时间我遇到的问题是,其实到后来,一些组件我都掌握了,而且也看了一些架构方面的书,但一方面没实践经验,面试过程中没法说上细节,另一方面,缺乏架构技术和业务的整合,所以面试时,只要是个资深面试官,就能看出我的技术是看来的,而不是实践得到的。所以一些小的互联网公司我都进不去,更何况是BAT。

3  中间出了一本书,也在不断讲课,从中不断感受到自己和平均水平的差距

这段时间里,用屡败屡战来形容我也不为过,为了提升能力,我也开始在博客园写文章。为了提升自己的技能,我还到一家培训学校去讲课。对,是讲课挣钱,而不是去出钱听培训。当然,那时我Java基本功还是很扎实的,也写了Java Web轻量级开发面试教程和Java核心技术及面试指南这两本书。

通过讲课,我一方面没误人子弟,另一方面在备课的时候,还加深了对Java核心和Web的理解。更重要的是,我结实了不少资深老师,在学生中,也不乏牛人,我也算脸皮比较厚,尚能虚心向人请教,所以那个时候,好歹也搞清楚了该看哪些方面的内容以及需要达到的程度。

之前我是通过面试和看文档,了解外面普遍用到的技术,讲课后,随着接触到更多的牛人,我能清晰地看到自己和平均水平的差距,甚至一度产生了继续在舒适区混的想法。不过幸好,后来面试成功了两家公司,也算增加了我一些自信心,而且我也算危机感比较强,于是终于也坚持下来了。

4  面成了一家互联网金融公司,但没敢去

面成的第一家公司是以外派的身份去一家比较大的互联网,钱不少,但想想是外派,当时我的外企名称毕竟也能唬人,而且好歹还是正式员工,还算稳定,所以就没去。

另外一家是P2P金融公司,也应聘成了架构师,记得当时面试分4块。

第一是Java核心和Web的基本功,比如集合多线程Spring MVC,我这个秒过。

第二是数据库,我好歹看了一些关于执行计划的调优,也了解了一些MySQL的集群,也过了。

第三是大数据,是Hadoop,我一些理论过了,也能证明自己在项目里用过,但被面试官看出,只用过基本的技能,一些集群和高级知识点没用过。

第四块是我最担心的分布式集群,不过当时就问了Dubbo和Zookeeper整合,以及Redis集群的基本问题,没怎么细问,结论也是用过,但没深入了解过。

结果我就通过了面试,但看下来这是家P2P金融公司,风险太大,就没去。后来果然,18年6月份,这家公司倒了。再回想一下,可能当时能力比较强的人已经不怎么愿意去这家P2P公司了,所以招聘要求有所降低。

总之我也是幸运,否则17年年中进去,18年年中公司倒闭我出来,再怎么解释总会有污点,后来再要进好公司就难了。

后来当我进了一家互联网公司后,就见到不少3年左右经验的程序员进入一些P2P金融公司,然后公司踩雷倒了,随后他们就在一些小公司之间辗转,每家公司也干不长,这类人很可惜,其中不乏能力强的,但因为每家公司干不长(虽然不是个人原因),但再要进好公司,可能就得先在一家公司干个至少3年证明自己稳定性不差后再做打算了。

5  终于面成了一家规模比较大的互联网公司,换公司前非常忐忑

如果干一类事情的成功率只有10%,那么干多少次,至少成功一次的概率能达60%?

干一次失败的概率是90%,连续8次都失败的概率是43%,也就是至少成功一次的概率已经接近60%。而且那个时间点,至少面试了10家,按这个算下来,成功一次的概率到66%了,更何况每次面试结束后,我会不断总结提升,所以终于在17年的年底,我面成了一家互联网公司,虽然不是BAT,但规模不小,国内也非常知名。

由于我那个时候已经成为面霸了,面试时表现也算不错(不过进去以后领导估计就后悔了)。

1 第一轮技术面试是我将要进组的组员,介绍项目经验时,我直接抛出线程池内存模型,再通过volatile和final讲述了ConcurrentHashMap内部细节,面试官没细问就让过了。

2 第二轮技术是组长,我介绍了一通JVM虚拟机优化和SQL优化,也让过了。说实在话,前两轮技术面试都是以我为主,面试官没怎么问。

3 第三轮技术面试是部门经理,本来,我还想挑战一下架构师的工资水平,但部门经理火眼金睛,虽然我竭力说了一通,结论还是:我基本功还行,架构方面也有实践经验(真实情况是我的经验都是看资料得来的),但架构方面没达到架构师的水平。于是和我明说,我可以干架构师的活,但工资只能给到高级开发的水平,如果愿意就继续。

我在面试之前,已经知道这家公司加班不算少,所以在内心也定了一个公司标准,说实在的,当时在工资方面其实没达到我的预期,但一方面我也面了那么多了,也知道自己的真实水平,更知道要找家能提供架构师方面实践经验的公司很难。相反,如果继续在外企呆着,时间不等人,估计再这样下去我的技术就更加落后于平均水平了,所以我就咬咬牙进去了。

我这两年提升技术的经历和感受(舒适区危机篇)相关推荐

  1. AI 与区块链:两大热门技术,会碰撞出什么样的火花?

    来源:36氪 概要:区块链和AI可以说是当今最热门的两个技术方向了. 区块链和AI可以说是当今最热门的两个技术方向了.在一般人看来,这两大技术似乎没有什么交叉的地方,因为区块链和AI分别属于是技术谱系 ...

  2. 提升技术领导力实操指南

    课程介绍 技术团队负责人这个角色很难做,真正做得好的人很少,每个人或多或少都有自己的强项和弱点,如何处理这些强弱点,如何让自己成为一名受人尊敬.合格的技术团队负责人,这是我们在本课程中需要解决的问题. ...

  3. 两大AI技术集于一身,有道词典笔3从0到1的飞跃

    作者 | Just 出品 | AI科技大本意(ID:rgznai100) "双十一"结束的钟点刚刚敲响,拥有电子消费品的企业便很快对外界秀了一把今年的销售战绩,网易有道也不例外.在 ...

  4. 深度丨AI 与区块链:两大热门技术,会碰撞出什么样的火花?

    编者按:区块链和AI可以说是当今最热门的两个技术方向了.在一般人看来,这两大技术似乎没有什么交叉的地方,因为区块链和AI分别属于是技术谱系的两个极端:一个是在封闭数据平台上培育中心化的智能,另一个则是 ...

  5. 记计算机三级网络技术考试经历(附题库)

    有教学视频和题库(见文末),零基础跟着题库复习两天能过,亲身经历,朋友圈和证书为证.以下时考完后写的总结: 眼见24日的考试步步紧逼也不能白花钱当水军吧,就向同学要来了题库看看视频做做题,综合题和应用 ...

  6. 微软 CEO 萨提亚·纳德拉:不要重复造轮子,提升技术强密度

    扫描二维码,查看精彩回顾 据中国互联网络信息中心(CNNIC)发布的第 44 次<中国互联网络发展状况统计报告>显示,截至 2019 年 6 月,我国网民规模达 8.54 亿,较 2018 ...

  7. 三星同时发展两种电视面板技术,围追堵截LG

    三星表示明年底就将投产QD-OLED电视面板,同时明年或许将推出一款75寸4K microLED电视,这意味着它正同时发展两项电视面板技术,以图在未来的电视面板技术方面取得领先优势,这对于当下引领电视 ...

  8. 合力提升技术管网治网能力,共同为长三角的数字化发展贡献网信力量

    未来,数字化转型不仅能进一步便利人民生活,也能促进长三角区域经济高质量发展,实现共建共治共享. 近日,沪苏浙皖三省一市网信办在沪召开协同推进数字化转型联席会议. 优势明显 三省一市网信办一致认为,积极 ...

  9. 提升技术认知,参加2021上海QCon技术大会

    文章首发于公众号[看点代码再上班],欢迎围观,获取更多好文. 原文地址:提升技术认知,参加2021上海QCon技术大会! 全文共计6499字,预计阅读时间15分钟 目录 开篇 第一天-上午 签到&am ...

最新文章

  1. 从人的角度分析进销存管理的需求
  2. HDU 3537 Daizhenyang's Coin
  3. 将JsonObject转换成HashMap
  4. large计算机应用,cies - 计算机应用.pdf
  5. ffmpeg 分辨率 压缩_ffmpeg 视频压缩
  6. 酷派D530刷机指引之官方ROM
  7. Android 特效大全代码资源——源码
  8. 485芯片方向切换的几种方式及原理
  9. 【python中级】 获取系统的局域网ip地址
  10. html实现让电脑断网的功能,简单几步,即可实现电脑自动断网
  11. 无法删除文件:无法读源文件或磁盘”
  12. Centos Linux破解开机密码
  13. 【二】Centos 7.6下载与安装
  14. [疯狂Java]JDBC:事务管理、中间点、批量更新
  15. 使用mpvue实现动态图片波浪图效果
  16. android系统user/userdebug版本设置selinux到SELINUX_PERMISSIVE模式
  17. 厦门大学计算机系教秘,周六上午计算机系举行青年教师教学工作量讨论会
  18. Springboot+axios+vue使用VerifyCodeUtils工具类实现验证码图片功能
  19. 使用windows自带diskpart转换磁盘格式
  20. scala列表-List.tabulate方法

热门文章

  1. 中国人保为中环盛达环保科技集团承保产品责任险,为消费者保驾护航
  2. 数据管理和计算机网络,计算机网络数据管理
  3. C#使用委托实现信用卡用户定时还款功能
  4. 3种方法实现弹幕效果
  5. Dplayer实现弹幕功能
  6. 查看window7开机日志
  7. 俊哥的HADOOP之路
  8. 张飞老师硬件第六部视频整理——电源——开关电源
  9. python期末考试试卷及答案_python期末考试复习试卷
  10. 青海湖 游走遇见一路风景