首页 文章详情

6 年主导 3 个项目,我终于成了别人眼中的大佬

程序员小跃 | 361 2020-10-25 14:00 0 0 0
UniSMS (合一短信)

这是程序员小跃的第 157 篇原创分享

作者 l 程序员小跃
来源 l 程序员小跃(ID:runningdimple)

终于等来了这个神圣的日子:10.24,相信只要是了解过一丢丢编码的读者都知道 1024 的含义,自然而然就明白今天对于程序员来说是多么的重要。来来来,大声喊出那句话:程序员节日快乐

看着身边很多同学、朋友过着教师节、医师节、护士节、记者节、建军节,不免心理会有点波动是吧?程序员最在行的就是 new 了,所以 new 一个程序员节也是妥妥的。大家都硬气点,咱也是有节日的职业!!!

所以,在自己的节日里,跃哥今天不废话,文末会送 5 本书。获取福利之前,还是想和大家分享跃哥这几年参与的项目经历,给程序节献礼。如果大家比较急的话,可以看今天的二栏,跃哥推荐了一波书,配合当当优惠券使用,更划算哦。

在极客时间的《设计模式之美》课程里,作者小争哥说过一句话:对人一生有很大影响的四样东西:机遇、方向、能力、努力,我觉得它们一起决定了你是否能“成事”。我把我的经历总结起来,很应景,就是我遇上了机遇,继而有了能力上的提升,方向上的把控,以及持续努力的行动。

回忆目前为止我主要经历了三个项目,仔细归类的话,这三个竟然还都有所不同。

我参与的第一个项目

第一个项目,是我刚毕业半年之后进到项目组的一个Android App 项目。之前 App 项目的主要业务逻辑是通过 JavaScript 编写的,Android 端调用 WebView 展现即可,所以很多流程都是依赖于 JavaScript 的同学去完成。

第一个技术就来了,当时的领导们觉得有必要全部原生化,就让我赶上了重构的时代,说是重构,其实就是对之前在 JavaScript 上的业务迁移到 Android 原生上。

庆幸的是,原有项目一开始做的就比较好,文档之类的相对来说也齐全,做主流业务的同事一直在项目组里,哪怕文档里没有的业务,自己把问题总结起来抽时间麻烦他,也能得到想要的答案,基于业务文档的编码还是相对轻松。

也许老天是注定需要给我一次锻炼的机会,在重构伊始,我的师傅当时的 Android 端负责人因为身体原因休息了一个多月,就让我这个徒弟去接手了当时复杂的,核心的业务,得到了一次快速成长的机会。

抓住第一波机会的我,就这样坑次坑次完成了人生中第一个商业化项目的重构。因为项目很庞大,经历了几个月的加班加点,上架的时候狂松了一口气。几个月的努力终于看到了回报,因为前期准备的材料都很充分,对于业务上的阻碍轻松扫除,这次重构对初入职场的我是很大的能力提升。

试想一下,一个只在学校里自学 Android 的科班生,第一次接手项目,不是反复的修改Bug,而是参与重大的版本改革,是多么的幸运;锻炼的成长不言而喻,你能相信一开始入行的时候,我连面向对象都一知半解吗?项目的洗礼,可比学校里参考书籍写Demo挑战大多了。

随之而来的第二个项目

第二个项目,是我去新公司之后的项目,做一个即时通信的项目。

我来公司之前,有一个即时通信的在用,是基于 Flash 编写的,从响应速度和稳定性来说都没有让领导和用户满意,当时项目组里没有 Java 的同事(新招一个毕业生之前也没怎么接触过 Java),领导想内部发掘 Java 的员工。我做了一个方向上的选择,所以,我的第二次机遇就在这个时候蹦出来。

我到公司的时候是 Android 开发,因为当时项目组有3个 Android,没有 Java,领导在征求大家的建议,问有没有想转的,我分析了自己的情况之后,主动要求转 Java,和老大一起去做这个即时通信框架。

我们选择 Netty 框架来进行,用 WebSocket 通信,又一次加班加点的拼命时刻。(加班并不可怕,有意义的加班都不会考虑下班这件事,只会考虑能给自己带来多少收益,多少收获。)这次没有文档,只有代码,也还是有幸运的部分,之前框架的负责人一直在项目组里。

难点就是,我需要看懂 Flash 的代码,然后一步步迁移过去。此次从零开始,也有一点遗憾,整个框架是老大搭建好的,我的核心任务是在计划时间之内,完全迁移即时通信的功能,尽快把项目跑通,调试上线完成。

完美的人生总是不存在的,所以尽管那么点遗憾,搭建框架的时候我没参与,但不妨碍我对 Netty 的理解,为此我还在掘金上付费购买了 Netty 学习的一个专栏,加深我对 Netty 的理解。

从客户端转到后端,给我最大的感触就是我看项目看的范围更大了,之前客户端只是很片面的看到自己所负责的功能,后端能把整个项目都看透,尤其是业务方面的知识点。

当然,因为初次参与后端,第一次上线,给我当头一棒,现实着实把我教育了一番。后端编码和客户端还是存在不同,因为我的不熟练,在项目上线的第一个晚上,因为扛不住峰值的压力,把网站给瘫痪了,业务宕机了一个小时,幸亏老大帮我解决。

这么严重的线上事故,给我当头一棒,后端完成代码只是第一步,线上安全运行才刚刚开始挑战。这也是让我坚定,在做业务的同时,需要持续的精进自己的技术,比如数据库的频繁读写,缓存的使用,缓存雪崩、击穿的处理等等。

正在进行中的项目

第三个项目,正在紧锣密鼓的进行中,从别的团队手里接收过来,没有文档,纯靠自己熟悉。这次的挑战更大,没有任何资料,只有App接口,参考接口一个个去熟悉项目,重构项目。

对于后端来说,除了代码是现成的,人都是从零开始的,又是一次重大的机遇摆在我面前,不抓住那是傻子。很多群里的同学,想参与项目还没机会呢,我总是时不时地能碰到好的机会,来提升我的能力,我也是醉了,我这是啥运气。

结语

正如我开头说的,总结我简短的几个项目经历(其实还有几个琐碎的项目,这里就省略了),就是我遇上了机遇。当每次机会来临的时候,放到你的面前,就看你怎么抓住了。一开始我是霸王硬上弓,但是到了后面就是不断地通过自己的学习,自己的努力,把能力提升上来;然后等待下一波机会的到来,或者是根据你的选择,去创造另一个机会。

这三次的经历,从我抓住机遇开始,后面又做了一次选择,当然加上自己平时的努力(平时多看书、多学习、多实践还是必要的)。不过跃哥的性格上目前有点刚,甚至有时候觉得自己做得很好,同事都没我强,我有天下无敌的感觉,导致我蒙蔽了双眼,还在努力尝试改进中。

冲冲冲

1024,属于程序员的节日,这篇经历也是我给程序员的自己献礼啦。想过很多种方式回馈各位同学,但是我秉承着福利最大化的宗旨,统一拿来抽奖吧。平时和跃哥互动比较多的同学,有部分跃哥私底下给过不少“好处”,后续我会把不经意间在文章中公布下,欢迎大家多多骚扰跃哥。

后台回复【1024】即可参与抽奖,共计 5 本书,抽奖截止时间 下周一 10.26 20:00 祝大家好运。



0、大学四年看了这18本书,我成了别人眼中的程序员大牛!

1、1024程序员节,跃哥不甘落后,和大家一起薅当当的羊毛!

good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter