见字如面,我是军哥!

这篇文章首发大号《码农翻身》,就是上面这个硬核的号,我转载一下,各位读者看一看,读一读哈。

最近有多位读者问我,“军哥,你是怎么从一名普通程序员干到大厂总监的?”这其中有什么经验可以分享不,我笑着说:“这全靠“运气””。

事实上,除了运气,还有很多东西值得你探索一番。

话不多说,我们马上开始吧!


 1 

程序员

我从 2005 年 9月进入程序员行业,前5年待过3家公司,其中2 家是 IT 小公司,技术团队不到 30 人,还有一家是国企中兴。

在第一家公司时,那时市场流行 struts框架,而我所在的公司则全部手写 servlet!

这让我一点都提不上兴趣,并且非常担忧以后找工作怎么办,因为没有相关的工作经验真的难于上青天。

怎么破?

于是我买了各种书,从电驴上下载马士兵的课程各种学习。那时下班回到出租屋就是学习,周末也不出去玩,真心佩服那时候的毅力。

终将努力不负有心人,一年后,我跳到同行业的一家公司,工资也从 3000 涨到 4500,我还记得拿到 offer 的那天欣喜若狂,请了我的室友吃了大餐——鸡公煲,还给家人打电话报喜。

进入一家新公司就像刚谈恋爱一样,一开始总是甜蜜的,可是三个月后部门领导说:我们开发语言要从 Java 换成 asp.net ,做项目要的就是快,效率才是王道,这 Java 太繁琐了。

我的心情一下子低落谷底,我给自己的规划是走 Java 路线,然而目前这个囧境让我郁闷至极。

然而看到每个月的房租和各种开销,我被现实按在地上不断的摩擦,再经过无数次的不眠之夜的深思熟虑,我决定学 asp.net 一边做项目,先忍个半年再积累点积蓄再找自己喜欢的工作——Java,因为当时基本每月月光。

我依稀记得是 08 年 4 月份,我果断裸辞了,在面试了 3 个月、20 多家公司后,我拿到中兴通讯的 offer,真是太不容易了,毕竟最近一年工作都是 .net,然而找的是 Java 工作,这其中有多难估计只有相同经历的人才会明白。

在中兴的工作一年半的时间,我的工作是——负责一款叫网管的产品的性能部分的开发和维护,但这一年多期间我没有机会设计一张表,只加过 3 个字段,2 个索引,这个系统的架构是 swing + EJB (市场上用的公司很少)的,说实话我三个月就学的差不多了,工作也逐步进入正轨。

入职半年左右时,公司强制要求加班(一周要加满 15 小时),这让我很抵触。更有甚者,我直接上级花了 8 年才从程序员晋升到经理,我觉得这么慢的成长速度,我看不到希望。

我再一次陷入了迷茫,因为我的职业规划是技术总监,可是直属经理的过去经验狠狠的打了我一巴掌,我该怎么办?怎么办?我觉得这样的国企并不适合我,我要骑驴找马了,可是这一找就是 1 年,这真是焦虑不安的 1 年,请继续看下文。


 2 

技术经理

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

刚入职时,公司主要使用的技术是 Struts2 +  ibatis + Oracle,我负责的业务 WMS(仓库管理) 系统中波次、捡货、出入库等模块,刚开始的两个月真是焦虑不堪。

为什么呢?

第一、公司使用的框架技术从没有用过,第二、我负责的业务我也是第一次接触。

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

我基本早上第一个到,最后一个下班,不懂就问老同事和业务人员并多次去业务现场,然后晚上回来还要坚持读技术书 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 端产品的理解和业务,有了飞速的提升。

干了一年半之后,我对 C 端交易核心技术和业务都了然于胸,再一次感觉我又到了瓶颈,我心想到了要离开的时候了。

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

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


 3

技术产品总监

2014 年初,我从 1 号店离职之后,经朋友介绍,就职一家 P2P 公司任首席架构师。在这家公司,我把之前的积累的技术输出了一次,技术对我没什么提升,值得说的就是这家公司比较传统,老板不太相信人,把人当成工具,在经历多次内斗、站队之后,我选择退出,玩不过他们还不能跑么。

最近,听老同事说,这家 P2P 公司的高层包括 CTO 都锒铛入狱了,幸好我跑的快,想想都有点后怕。

2015 年 4 月,我加入饿了么,任技术总监,不过我这个总监入职的时候就我一人,光杆司令一枚。

入职第一天,CTO 就给了我 2 个艰难的任务,其一是 2 个月内团队从 1 到 30(后端、测试、前端、产品) 人,并跟我叮嘱这事我是 owner ,HR 只是协助我;其二 2 周内把饿了么早餐这款和美团早餐的竞品上线。还告诉我,这两件事搞定了就过试用期了,否则就卷铺盖走人。

这突如其来起来的压力让我顿时崩溃不已,2 个月招 30 人就意味着 1 个月要招 15 人,通常面试 10 个人才能入职 1 位,这就是说我要在 2 个月面试 300 人。

摆在我眼前有两个难题,怎么找到那么多简历?对于我不熟悉的前端、测试、产品岗位,我怎么判断他们的专业水平?

对于问题一,我发动了我所有的人脉,各种招聘网站(BOSS、拉钩等等)发布招聘广告,去老同事公司请喝茶,在几十个技术大群发红包(预计发了近 10000元),不过最终效果还不错,找来了足够的简历,对于前端、测试、产品经理的专业能力面试,我就请兄弟部门的同事协助帮忙,然后积极回馈他们的协助,最终任务顺利完成,我也长长的缓了一口气。

在这期间,我拼命学习测试、前端和补充我自己的产品知识,我感觉可以依赖别人一时,并不能依赖一世,最终还得靠自己。

接着说问题二,就我一个人,要 2 周搞一个 c 端产品上线,而这个工作需要前端、后端、测试(6/7 人)配合才能完成,这明显是天方夜谭。

怎么办?我当时真的焦虑之极。

我舔着老脸和 CTO 说,能不能从其他团队借调几个人来协助我,架构和后端代码还有整体项目协调都我来(架构师背景优势凸显),后来还真的借到了人,我提议包下公司一间办公室,一起吃饭、一起开会、一起写代码、一起测试、一起讨论需求,就这样封闭式开发了 10 个日日夜夜。

我记得这期间,我就回家过一次,换了件衣服就马不停蹄回公司,真的是皇天不负苦心人,产品终于如期上线,我也顺利转正。

接下来我们和美团打起了硬仗,美团早餐发布一个新产品功能,我们觉得不错 1 周左右也发布,反之我们发布一个新功能,没几天他们也有了。

这里分享一个故事,是业务同事说的,有一天地推业务同事开早会,有一位刚入职不久的同事穿着美团的工作服就来了,后来才知道这人是美团派来的卧底,可见当时的竞争已经到这种程度了。

时间一下到了 2016 年底,CTO 和联合创始人找到我,说饿了么的客服做的太烂了,高峰期间客户电话进不来,并且客服部门已经近千人,可是他们使用的系统效率相比同行太低,他们商量了一下要把这个产品交给我,在他们眼里我能委以重任,并给我一年的时间,看看我的表现。

我感觉,我又了接了一个难活,怎么办?干呗!

我调研下来,目前客服产品有四大问题:

1、客服业务部门(负责人)太强势,并且积累了很多历史需求。

2、客服业务对产研同学互相不信任,且专门支持客服业务的产品开发才 6 个人。

3、客服整个产品中,用了太多的外包产品,要开发新功能周期太长。

4、仅有的自研客服产品,使用了 python,但是 python 工程师当时非常难招。

通过四个问题,可以发现,有时候根本就不只是技术的问题,可能是人与人合作的问题,可能是解决问题者的思路问题。

为此,我多次找到客服业务负责人,换位思考并沟通我的想法,我估计了一下最少有十几次之多,最终我们达成一致,我快速招人把支持客服团队的产研人数从 6 人扩大到 15 人,我们把老系统按照新的产品规划进行重新开发,老系统等新系统上线后逐步下线,外包的系统逐步用自研的系统取代。他则全力配合我,并且反馈产品在使用过程中的各种问题,我们快速改进。

另外,我在饿了么经历 3 次组织架构调整,3 次换领导,每换一次领导我感觉都要重新过试用期,如履薄冰,不过这些经历让我成长加速,人生何尝又不是经历呢。

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

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

最后,特别非常感谢我的部门伙伴(加上离职,总共有 120 多位),感谢一路陪伴,一路见证!


结语

回顾了自己亲身经历三个重要节点,总结一下:

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

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

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

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

一直在路上,共勉!

关于军哥:前饿了么、贝壳技术总监。

军哥乐于结交朋友,公众号(军哥手记)输入框回复“w”即可加他的微信,朋友圈做个点头之交!

另外军哥写了一些,关于个人如何快速成长、深度思考、程序员或产品经理能力模型、架构,OKR干货,技术管理等电子书资料,在他的公号(军哥手记)后台回复 “9”获取,不谢。

我是如何从屌丝程序员逆袭成为大厂总监的?相关推荐

  1. 17岁中专毕业的低学历小哥,24岁却作为资深程序员逆袭出书!

    17岁中专毕业的刘博文,成为了低学历程序员逆袭的最佳范本. 作为一个在2012年还只有中专文凭的"半吊子"程序员,却在短短几年间做到了360奇舞团的一员,2019年甚至以资深人士的 ...

  2. 从初级程序员逆袭为技术大牛,你需要懂这 10 项技术!

    目前在IT行业中,有很多初级程序员,但对于企业来说,优秀的开发人员是很紧缺的.那么除了基础的编程语言,普通开发如何逆袭成为技术大牛呢?这里有十个锦囊妙计献给你! 作者 | Nelia Kovbasa ...

  3. 数据库系统工程师5天修炼_程序员逆袭之路,5年IT人生从电脑装机到技术大神,人生不认输...

    5年前的我都不敢和别人说我学的是IT,也根本体会不到如今的职业成就感. 01 找到第一份IT工作,惊喜 2005年的夏天,我带着IT梦想从校园迈向社会,目标是找一份IT工作.但在那个年代,国内的IT行 ...

  4. 非科班程序员逆袭:一个被称阿里“码神”,另一个颠覆软件生态

    专业对口自然可贵,非科班出身程序员一样可逆袭,书写一段传奇,成为佳话. 马云的扫地憎"多隆" 阿里巴巴有一位特殊技术合伙人蔡景现,花名"多隆",相貌平平的他,却 ...

  5. 绩效从C到S,分享渣渣程序员逆袭秘诀!

    点击蓝字 关注我们 因公众号更改推送规则,请点"在看"并加"星标"第一时间获取精彩技术分享 来源于网络,侵删 绩效面谈结束,从会议室出来,有一种不真实的感觉-- ...

  6. 低学历、文科出身,我如何从月薪不到 3000 逆袭为大厂高薪程序员?

    作者 | 阿文 责编 | 伍杏玲 封图|视觉中国 出品 | 程序人生(ID:coder_life) 从 2011 年毕业至今,工作将近 10 年了,从初入职场至今,我也算互联网老兵了,今天我给大家分享 ...

  7. 我是培训机构的程序员,不敢告诉任何人

    "我是培训机构的程序员,不敢告诉任何人.真羡慕你们科班的人!" 这是昨天一位粉丝给小编说的话. 我曾经也辅导过非科班的同学学习编程,有成功入行的,也有学习几天就放弃的. 想入编程这 ...

  8. 我是一名资深程序员,而今天我又多了一个创业者的身份(2)

    我是一名资深程序员,而今天我又多了一个创业者的身份(2) 人们说:人世间四大喜事:久旱逢甘雨,他乡遇故知:洞房花烛夜,金榜挂名时.我觉得我是幸福的,在他乡朋友们因为志同道合重逢,太过于美好.午后的阳光 ...

  9. 写给屌丝程序员的免费空间个人blog的建站攻略

    我相信每个攻城师bloger都有一个自己拥有独立空间的梦想.找主机托管一年至少也得几百RMB吧,魔都这生活成本挣点钱还得不够养家糊口的,于是大家退而求其次在博客园落了脚.博客园作为屌丝程序员集散地,稳 ...

最新文章

  1. pat1004. Counting Leaves (30)
  2. python工程师百度百科-Python 工程师在公司工作体验如何?
  3. system.img格式打包学习
  4. 读写分离和负载均衡介绍
  5. 【EF学习笔记07】----------加载关联表的数据 贪婪加载
  6. python脚本入门_python 脚本学习(一)
  7. delphi xe3 mysql,delphi10.3安装使用mySQL
  8. CF1039E Summer Oenothera Exhibition
  9. php超小免杀大马_2019年最新免杀PHP大马(过D盾,过安全狗)
  10. 配音软件文字转语音有哪些?
  11. linux IIC子系统分析(七)——实例分析通过i2c-dev操作I2C设备
  12. 2023北京航空航天大学计算机考研信息汇总
  13. 内忧外患,是否应该为移动设备开发游戏?的?
  14. 【Python实战】 ---- 批量图片压缩
  15. AMiner发布2022 AI 2000人工智能最具影响力学者名单
  16. Blizzard的MPQ文件格式搜索算法
  17. oracle erp系统好用么,oracleerp系统优缺点
  18. ROS日记:ROS系统的备份和还原
  19. 微信小程序开发之——拍照上传
  20. 视频号网站微信视频下载方法

热门文章

  1. 1、垂直对齐方式 vertical-align属性
  2. C语言-求各位数之积(简易版)
  3. C#泛型List 的定义、作用、用法
  4. JavaWeb学习第二十七天——项目实例
  5. 天龙八部GridInfo读取源码
  6. 华为云05之网络虚拟化
  7. 土圭垚㙓数学课(四)空间变换
  8. MindSpore:【AIR模型导出】导出时提示源码中select_op参数类型转换失败
  9. unity农场游戏Farm Business Version 2
  10. 写写自己找工作的经历