那些35岁的程序员都去哪了

阅读本文大概需要11分钟。

大家好,我是findyi,前段时间写过一篇关于大龄程序员的文章:那些40岁的程序员都去哪了,引发了大家的思考和讨论,不少读者私聊问:除了这些出路,还有没有其他可能?

最近想起身边有一位年过35岁的朋友:军哥,军哥最初混迹小公司,薪资只有1000多,但通过勤奋和选择成长为贝壳的技术总监,而他应对35岁危机的方式更是有些独特性。

下面是军哥的自述:

1.程序人生

从2005 年进入程序员行业,截止到 2010 年,我一共呆了 3 家公司,前两家都是程序员不到 10 人的小公司,另外一家是中兴通讯。

在职场的初期,我跳槽算是很频繁了,主要原因就是穷,第一份工作保持温饱都成问题,这也是起点低的无奈。

如果要去总结这五年,我的一些改变,我总结了以下三点:

a、起薪低

刚工作时,就 1800 的工资,除了吃饭房租基本没有剩余的。那个时候也想过搞副业,接私活说实话也真接到过,不过你怎么赚钱,为期三个月的一个项目才 5000,搞的自己累死累活。

于是,我就在思考怎么赚钱,我想了一下只能提升自己的编程能力,然后跳槽。

b、不懂的技术很多,工作上经常遇到难题

在工作中遇到很多的技术难题,我记得当时上csdn、Javaeye发帖求解,还认识了左耳朵耗子和南京一位技术大神,之后我有搞不定的技术难题,就找他们问,不过为了感谢他们,我也多次去他们城市见他们并请吃饭。于是建立了深厚的感情。

c、我坚信下班后的时间安排,可以改变一个人的未来

曾经在csdn认识的一位朋友告诉我,你下班后的时间安排决定你的未来,我对此很不解,他就说你以后就明白了。

在他的鼓舞下我开始买各种技术书籍,还有各种学习视频,经过如痴如醉的学习之后终于工资有了不错的涨幅,也跳到了当时还算不错的公司——中兴通讯,彼时的月薪终于达到7000元。

曾经看过的书单:

2.架构之路

2010年3月,我加入 PC 电商 1 号店,这一待就是四年,这四年我从刚入职的高级开发、做到技术经理、然后做到公司架构师,真是以肉眼可见的速度在成长。

但刚入职的时候,真的是非常困难,第一、公司使用的框架技术从没有用过,第二、我负责的业务我也是第一次接触。

怎么办?我觉得唯有勤奋和方法了。

基本早上第一个到,最后一个下班,不懂就问老同事和业务人员并多次去业务现场,晚上回来还要坚持读技术书 1 小时,周末也是如此,就这样坚持了三个月,我逐渐上手了并且可以加速,负责的模块不但开发速度快,质量还很高,几乎没有什么线上 bug。 

又过了三个月部门老大找到我,说有一个开发 team 缺一个负责人,问我愿意试试不?

说实话有这样的机会既开心又担心,开心的是可以带领团队打战了,担心的是怕做不好,毕竟管人我还是一个小白。

那一夜失眠了,想了很久,第二天找到了老大说:“我愿意接受挑战”。

从此我成了 TMS (物流系统)的技术负责人(共 3 人),然而刚上任不到 1 月,团队里仅有的 2 个小伙就要离职了,这让人哭笑不得。

经过两周痛苦的反思,才发现是我自己事无巨细了,让下属没有了发挥空间。

由于物流订单(5w 到 20w)激增,需要开发更多的业务功能和系统,只能疯狂招聘,那时候一边招人一边恶补管理知识,终于在半年后搭建了一只10人左右的技术团队。

这期间发了一起比较大的事故,那次事故我和兄弟 team 的同事整整排查了一天一夜,一开始我认为是他们系统的问题,我只是来帮忙的,后来定位是我们系统的问题,原因是在数据库某张表过百万数据时,数据查询没有走事先建好的索引而走了全表查询,导致我们系统某个接口的耗时从 10 毫秒延长到 500 毫秒。

这次事故让我对技术的复杂性有了新的认知。

接下来又花了一年的时间,我把老的系统重构升级,从之前的单点系统改成分布式系统,数据库重新设计,核心业务流程重新设计,还给中国平安开发了新的 TMS 系统,那段时间真的充实。

当团队和业务进入稳定状态后,我却陷入迷茫,虽然对 B 端系统经验逐渐丰富了,可是我对 C 端高并发还是很陌生,我想每一位技术人都很憧憬 C 端的海量用户带来的技术挑战吧。

另外我感觉自己太年轻就走向了管理岗,而各种底层技术比如高并发、高可用却并不深入。

我毅然决定放弃管理岗位,内部应聘 C 端核心交易部门的架构师,在经过与负责人面谈并和 CTO 面试后,终于如愿以偿。

刚转过去的三个月那种焦虑感又回来了,第一、C 端业务不熟悉,第二、对 C 端的技术架构说实话只是停留在看书水平,第三,很多开发同事还会找我问各种技术问题、线上问题需要我来协助排查。

焦虑之余静下心来把 C 端的核心代码都看了一遍,包括会员体系、SSO、购物车、订单、库存、商品、营销和第三方接口服务等等,核心代码 3 万行以上,这让我对 C 端技术有了深刻的认识和实践的机会,之后开始负责秒杀架构设计、订单分库分表改造设计、用户库和订单库拆分、分布式缓存优化等设计。

也正是这一次历练,让我的技术视野(总结一下就是异步 + 消息 + 队列 + 缓存 + 高可用/高并发)和 C 端产品的理解和业务有了飞速的提升。

回顾这四年,我的职位从高级开发——技术经理——架构师,经历了太多事和人。

不断走出舒适区,不断挑战自己,人生不就是这样吗?一直在路上......

3.再回管理岗

2014 年初,1号店管理层变动频繁,工作也越来越不开心,经朋友介绍,离职加入一家 P2P 公司任首席架构师。

在这家公司我把之前积累的技术输出了一次,技术没什么提升,值得说的就是这家公司比较传统,老板把人当成工具,在经历多次内斗、站队之后,我选择退出:玩不过他们只能选择跑了。

2015 年 4 月,我加入饿了么担任技术总监,入职之际只有自己一个人,堪称光杆司令,随后不断组建招募团队,在半年后组建了几十人的技术团队。

在饿了么经历过三次组织架构调整,三次换领导,每换一次领导如同再过一次试用期,如履薄冰,不过这些经历让我成长加速。

2018年三月我因为个人原因离开饿了么,这 3 年多的经历,让我在技术和产品广度、深度、商业思维等方面都提升很大,对于管理团队也有了自己的经验和方法论沉淀。

我非常感恩,曾经的 CTO 如此信任我,让我有机会从 0 到 1 操盘公司多个战略级的产品,也认识了众多优秀同事(他们来自腾讯、滴滴、阿里、facebook、linkedin),从他们那学到了很多经验让我受益终身。

4.从贝壳到自由职业之路

我的最后一份职场的工作是在贝壳担任技术总监,在贝壳待了一年多时间,同样经历了公司各种组织架构调整。

这个时期,我在技术、产品、管理上都已经有了很不错的积累,薪资收入也挺不错。

在其他人眼里看起来,这个人应该知足了,但一种痛苦、焦虑感却开始折磨我。

在职场经历了这么多之后,我发现职场的沉浮真的是完全不受控制的,商业、业务、领导、政策有一点点变化,带给打工人的可能就是推倒重建了。

在贝壳工作不到两年,我选择了离职单干,想在人生的下半场能扼住命运的咽喉。

我做的事情是自媒体+商业咨询+产品创业尝试,算是自由职业吧。

关于自由职业,我有三点与你分享:

1、通过自己的爱好或者其他优势,至少要找到两件可以持续赚钱的事

我通过自己写作和爱思考的优势,通过写公号一年多时间做到了五万粉丝,光这块的收入已经超过我当总监的现金收入了。

另外我还给一家上市公司做技术和产品咨询,一周就去一次,但是收入比之前当总监还高,这两项加起来就是以前打工时工资的 double 了。

同时我还在奈学教育当兼职讲师,希望自己的知识、经验可以传授给更多人,让更多人受益。

这个过程我发现离开大公司也可以获得相同甚至更多的收入,真正的能力完全可以不依赖于任何公司或平台。

2、多读书、多向优秀的人学习

我平时喜欢读书,一周至少要看一本书。而且我看书都是喜欢带着问题去看书,而不是随意找一本来消磨时间。

看完书后,我会写读后感并把书的主要内容用思维导图来加深记忆,之后就是将知识进行实践。

另外通过写作我认识了很多优秀的人,比如易总、右导等大佬,更开阔了视野,他们都身在大厂且积极分享自己的知识和见解,并且他们副业收入都非常可观。

总之就是不断向牛人靠拢,不断进步就对了。

3、技术不是唯一,技术要么是我们的兴趣、要么是赚钱工具

程序员也罢,架构师也罢,技术总监也罢,我都有所涉足。我非常怀念当程序员的日子, 让我有了很好的逻辑思维和结构化思维能力,让我可以很好的去解决很多确定性的问题。

当我负责产品之后,又不断补充自己的产品思维、商业思维的能力还有对人性的洞察力,从而一次次面对很多不确定性的问题并将其转化为确定性问题。

这个过程挺让人兴奋,一旦一位程序员的拥有了这样(产品和商业)的思维,可以说就是拥有了更广阔的天地。

未来我大概率还会自己创业,目前已经在筹划自己的产品,未来的日子,邀请大家一起见证。

写在最后:

受易总邀请,回顾了自己亲身经历四个重要节点,总结一下:

1、职业规划很重要,找到自己喜欢的方向,然后坚持才能拿到结果,这可能需要的 10 年时间。

2、技术只是起点,不是我们技术人的终点,想要往上爬,请注入产品和业务思维,并且我们每个阶段需要的能力并不一样。

3、一般来说,要想「成长」就必须经历「痛苦」,经历的越多成长越快。

4、不断走出舒适区,坚持终身成长,另与优秀的人为伍或学习,做一个靠谱的、真诚的人!

一直在路上,共勉!

洋哥唠叨:

军哥在技术层面和管理层面都做的很不错,但我更佩服的是军哥敢于不断挑战自己的那份勇气。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/298232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 二)...

在Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据一)中,解释了如何把Crystal Report整合到Sharepoint2010并把报表数据显示出来,但这样并不完整,因为我们在开发时是以系统帐户进…

那些拧不开瓶盖的女生全都是装的?理工男这样想......

全世界只有3.14 % 的人关注了爆炸吧知识昨天,超模君我正在思考人生,八岁的表妹突然提着一瓶矿泉水站在了我的面前。她可怜兮兮的说:“我想喝水,但是拧不开”。我:“........."超模君我明明亲眼见过她一口气拧开过…

【另类见解】秒杀并非高不可攀

“一提到秒杀很简单这个话题,我知道要被别人鄙视了:你不懂高并发... 这年头开头不画个思维导图都觉得掉价image谈到秒杀,网络上不少于几千片文章,但是大多大同小异。如果你的微信当中关注了几个编程技术类的公众号,我敢…

我又相信爱情了!

1 圣诞限定款的肥宅快乐水更好喝了吗?不!更贵了2 周边鬼才!这手机壳我爱了3 你以为是个王者,其实是个大脸......4 高温超导材料达到临界温度后能使物体悬浮在不同位置5 火山爆发你见过吗?6 我又相信爱情了!…

opencv计算两数组的乘积_#剑指Offer#12. 构建乘积数组

题目描述:给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1]。其中B中的元素B[i]A[0] * A[1]... * A[i-1] * A[i1]... * A[n-1]。不能使用除法。解题思路:首先,仔细理解题意,B[i]是A数组所有元素的乘积,但是没…

记一次 .NET 某桌面奇侠游戏 非托管内存泄漏分析

一:背景 1. 讲故事说实话,这篇dump我本来是不准备上一篇文章来解读的,但它有两点深深的感动了我。无数次的听说用 Unity 可做游戏开发,但百闻不如一见。游戏中有很多金庸武侠小说才有的名字,太赏心悦目了。000000df315…

成年人的数学公式

1 成年人的数学公式2 唯一对我说过“别走好吗”的人3 主人发起疯来有多可怕4 别人家的狗看到主人有危险▼你家的……▼5 蜘蛛捕食瞬间6 蜡烛重燃(冒的白烟是固态小颗粒的石蜡蒸汽,可燃)你点的每个赞,我都认真当成了喜欢

Linux运维实战之DNS的高级配置(转发器、视图等)

上次博文我们具体配置了一台DNS服务器并实现了主辅之间的区域传送,本次博文我们来看看DNS的一些高级配置。 在进行DNS的高级配置之前,必须要理解DNS的原理(参见http://sweetpotato.blog.51cto.com/533893/1596973) 并且对DNS的基础…

史上最烧脑的学习方法,看完瞬间涨姿势!

▲ 点击查看 在美国,有一个天才儿童计划,选拔一批“天才”儿童进入天才班。这个计划是为了保证每个人接受平等教育机会的同时,也为精英成长提供合适的土壤。美国所谓的天才和精英是怎样的标准呢?进入天才班的儿童首先要通过一个叫…

WPF轮播图实现方式(二)

WPF开发者QQ群: 340500857 | 微信群 -> 进入公众号主页 加入组织欢迎转发、分享、点赞、在看,谢谢~。 01—效果预览02—代码如下一、EmphasizerCarousel.cs 代码如下using System; using System.Collections.Generic; using System.Collections.Obj…

实现链栈的各种基本运算的算法_LeetCode基础算法题第78篇:如何不用加减号实现两数的加法运算?...

一直很纠结算法的文章应该怎么写。最后觉得还是从最简单的level开始写吧,一开始就弄些重量级的,什么人工智能,机器学习的算法,还要有大量的数学以及优化的知识,小白们估计会很郁闷,当然我也不一定能做出来对…

Bootstrap在线编辑器简单分享

Bootstrap 已经使响应式网站开发变得简单很多。 但是如果你不必手动写全部代码,事情会如何呢? 如果你可以自由地选择你想要使用的Bootstrap 组件、并可以把它们拖拽到画布中,事情会如何呢?这就是Bootstrap 编辑器的用武之地。 在这…

爱因斯坦去世不到7个小时,大脑就被人偷走!还被切成240块,供变态医生把玩了几十年.........

全世界只有3.14 % 的人关注了爆炸吧知识你的智商说不定比爱因斯坦还高俗话说,人怕出名猪怕壮。作为世界闻名的大科学家,世人却更愿意把爱因斯坦的成就归功于“天赋异禀的脑子”,顺带着爱因斯坦其他的“身体零件”也都成了大家好奇的对象。爱因…

字符串池化,减少了三分之一的内存占用

字符串池化,减少重复实例,内存降低,一切就是这样的轻松愉快。开篇摘要 本文通过一个简单的业务场景,来描述如何通过字符串池化来减少内存中的重复字符串实例,从而减少内存的占用。在业务中,我们假设如下&am…

启动zookeeper_Giraph源码分析(一)—启动ZooKeeper服务

作者 | 白松Giraph介绍:Apache Giraph is an iterative graph processing system built for high scalability. For example, it is currently used at Facebook to analyze the social graph formed by users and their connections. Giraph originated as the ope…

【MFC】MFC中调用系统软键盘的几种方法

1.直接运行微软系统自带的虚拟键盘程序“osk.exe” 在普通MFC项目中可以调用ShellExecute或者WinExec方法来直接运行微软系统自带的虚拟键盘程序“osk.exe”,十分方便一句话就可以搞定。ShellExecute: ShellExecute(GetSafeHwnd(), NULL, _T("osk.e…

委派用户管理Hyper-v

在安装完成Hyper-v以后,默认情况下,只有管理员组的成员才有权限去管理Hyper-v,做一些诸如管理网络,管理虚拟机,管理磁盘等等的操作,普通用户没这个权限,从应用角度来说,如果公司所有…

这才是真正的蛙泳,还挺能蹦跶......

1 这才是真正的蛙泳▼2 给你们看看我平时藏起来的可爱▼3 沈腾这rap唱的跟闹着玩儿的似的▼4 能不能好好说话?▼5 建议再配套一张肛肠医院代金券▼6 这是我军培养出来的【特工鹅】吗?盯梢技能太强了▼7 钓鱼翻车现场▼你点的每个赞,我…

缓存机制 java_缓存机制:java中缓存的原理

外存:也就是我们经常说的(CDEF盘的大小)外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的外存储器有硬盘、软盘、光盘、U盘等,一般的软件都是安装在外存中内存:内存是计算机中重要的部…

docker-compose 一键部署分布式配置中心Apollo

简介说起分布式肯定要想到分布式配置中心、分布式日志、分布式链路追踪等在分布式部署中业务往往有很多配置比如: 应用程序在启动和运行时需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期,比如:数据库连接参数、启动参数等,都需…