2020/12/29日,今天是我离职的第四个日子,人生第一次拿着老板的工资欠条离职。现在想来确实也有点可笑。前两天在调整好离职的心情后,今天梳理一下这一年自己的工作以及毕业工作至今的一些总结。本人从毕业工作至今已经两年了,工作至今确实对整个行业还有未来有许多的思考与疑惑。希望看完本篇,大家可以多多留言,补充下自己的计划,互勉前行。
本篇的主要内容包含以下两个话题:(第一次写掘金博文,文笔思路不好之处请多多包含。)
1.工作两年的回顾与整理
2.个人对未来的展望,和行业的看法。
1. 2020年总结
2020。对我来说是不寻常的一年,挺闹腾的本命年。
1.1 前序
我是2019届毕业的,2018年12月份进入实习,截止本月刚好是两年了。这两年,确实收获了许多工作上的成果,我实习的公司是一家数据安全企业,规模不算太大,也不是很小。在人生的工作路上,这是我的初恋,确实现在回顾起来,他带给我的思考意义也更多。我是今年5月份告别初恋的,离职的原因可能更多是对薪资的不满,对工作的不对等,和对未来的期待,以及对行业各个方向和领域的好奇。当然对离职这个事情来说,我总能找到许多标签来形容,但每一次离职,心底里还是会有些伤感,因为对于毕业后的生活来说,不是工作就是简单的生活了,不舍和情怀都是有的。但总结来说就是年少轻狂,想多多尝试。
实习那会,从毕业的书生,到企业真正意义上的真金白银项目,这个过程确实是挺有意义的,以前在学校做做课设,和老师一起做项目都感受不到真正意义上的工作压力,因为那时候对程序还只是初心的喜欢和想要探索。工作后,相信大家最真实的感受就是对项目的责任感,有一种对项目富有使命感的感觉,这种感觉到现在我都觉得非常的让人印象深刻,实习那一年,对很多新潮技术都不懂的我,对技术充满了好奇心,在公司发展方向的驱动下,我研究了许多新潮的技术,ELK,大数据,数据安全,漏洞扫描,以及日常使用的Springboot相关的代码框架。在不断的搜集项目资料参与到项目整体的讨论中发表自己的看法,这个过程真的让人成长的很快,对比现在离职的这家外包,我也有很多不同的感触,这块我们后续再说。
1.2 项目历程
首先先讲下我这边做的几个项目,初恋这边,我参与的大致包括3个项目,有两个是基本全程参与的,一个是关于数据库漏洞发现这方面的系统,一个是大数据下的人工智能数据安全综合治理系统。还有一个是临时基于已有的项目开发的符合客户需求的数据脱敏系统的演示版本。全程参与的新项目会有两个最明显的提升。一是对于项目开发流程的熟悉,二是对于整个项目各个细节性的把控与了解,会有真正项目的全局观。其次是我刚离职的这家外包公司(进公司前不知道是外包),我这边的项目基本都是偏教育类的,可能疫情导致今年的在线教育都比较火吧,一个是英语教育类app服务端,主要是听说读写,雅思留学英语,以及相关在线课程售卖这样的一个app ,其次是职业教育相关课程在线视频售卖的微信小程序,最后是一个教育类的平台,主要是想综合线下的校区,和在线教育的一些品牌来发展业务。核心就是做平台,拓展包括线上线下课程,作业布置,老师管理这样的一个教育平台。外包项目会做的多些,但是核心技术说实话还是没有产品型公司这样有研究性。更多是直接参考,然后根据业务直接实现。这一年,我也体验了外包的开发流程,两个字评价就是基本单体,项目全局观可能只有自己在用,在不断的磨合下,人很容易成为代码机器,而且外包的团队环境,在身边充满了忿恨与不满,甩锅背锅常见。虽然外包的工资会稍微高一些,但是建议大家还是要仔细考虑。
这里也顺便梳理下项目的开发流程,这里的流程可能并不适用于所有公司。但在初恋这,我觉得未来是可持续和正确的流程。初恋的Boss是华为出生的,对于公司信仰和管理这块,也能看到许多华为的影子。像狼性,IPD开发流程,和团队合作管理都有许多华为的思想在里面,在之前的项目管理中,我们从项目立项到收尾会经过几个过程。
- 项目立项,根据公司的产品业务线进行扩展。深挖级联,目标方向要定位清晰。我们之前是做数据库审计的,拥有大量的类型数据库审计报文解析技术,公司在立项这块是基于数据库和数据安全这两块来拓展自身的业务的。包括数据库漏洞扫描,数据库状态监控,数据库脱敏,数据综合安全治理(基于前面几个项目大量数据的分析管理系统)。在初恋这块,可以很明显的感受具体的业务线,以及未来的职责和发展,初恋给人一种有明确目标的感觉,不管行业如何,初心都未变。我觉得这是令人尊重的。
- 项目预研,根据市场部已有客户需求,和项目定位来寻找相关资料和竞品,搜集尽可能多的资料来确定功能的实现。这个过程会比较有意思,我这边也做个两个项目的预研,对于资料的搜索也掌握了许多小技巧,竞品分析的过程类似有点抄作业的感觉,但人家是真正意义上的产品,我们能借鉴的也只是某些设计和理论。但不得不说,你参考过优质的项目,才能做出比较优质的项目。总比凭空创造的风险要小很多。
- 需求确认,文档定稿。其实需求确认和预研基本上是同时进行的,项目的核心功能,拓展功能,通用功能都在这个过程中被定稿确认,然后就是各种开发文档了,需求文档,数据库设计,概要设计,系统设计等等,这是个挺繁琐的过程,期间也会有许多像流程图,原型设计,数据库设计,方案讨论的小插曲,大家通过会议和团队协作来不断完善整个文档。确保后续开发的流程可以减少工作量,全身心投入开发。
- 项目开发,这个过程我们只需对照前面的开发文档,进行详细的开发即可。在有详细的描述下去开发产品,速度是很快的,基本上快的项目1-2个月就基本开发完了。中间可能会有技术阻塞,团队一起协商解决。在我看来,项目的质量是由整个团队来保证的,团队良好的合作与沟通可以大大提高工作的效率和工作的意义。
- 测试版本迭代,繁琐的改bug和自我总结过程,不断的和测试兄弟一起发现和解决问题。完善整个项目也是一件挺有意义的事。
- 产品发布,令人热血的时候往往就是成果得到验收的时候。小奖金,小鼓励,团队一起吃个饭,唠个嗑,分享一下项目成果。没有什么比那个时候更加觉得工作是那么的有意义了。即使是发工资
这是我初恋体验的项目开发流程,写到这,我尽然已经花了两个小时在回想之前团队合作的那种感觉了。很多时候也是因为那种感觉,我觉得我以后可能会往项目经理这块发展,促进团队合作,和大家一起努力的感觉挺好的。之前在初恋这边也作为TL辅助管理团队,在很多方面,团队的荣誉感还是会比个人的荣誉感强许多。
再有也给大家介绍下刚离职的这家外包的开发流程,说是流程,可能也谈不上。我们一般就是接到项目,产品和UI就将项目原型给你,然后就是接口设计开发了,没有中间过程,小项目基本单人负责,中间可能会分配人员分担一些模块开发,业务比较通俗,没有详细的设计,更多的是靠个人理解需求,然后就开发,开发完测试验收。开发没有太多的产品意见权,更多是产品根据客户需求设计,开发遵循设计来开发。开发工作量会比较多,总结流程就是 接收需求原型---设计接口---开发---测试交付---下一个项目。
在经过了这一年多项目的积累后,后续也在思考真正的产品。理想与现实总是会有许多初入,在不断的尝试之后也明白了慢工出细活,掌握人心才能更好的促进工作,个人与团队,个人与公司之间的合作关系,说到底还是人与人之间的沟通,之前很多时候都没有真正理解一个人可以走很快,但一群人可以走的更远这句话。不管是社会还是工作,学会团队合作,都是一件很重要的事。
1.3 技术总结
技术总结这块其实真正说起来有时候也觉得没啥好多说的,工作与技术往往都是在不对等的方向上前进,从实习到现在经历的项目架构从最初的纯mvc项目,到ssm配置型项目,到Springboot项目。这些往往都是一些常用的脚手架框架,业务的考虑往往更多,各类判断,级联处理,以及业务逻辑。目前自己用过的一些组件有Mysql,Tomcat, ES, Kafka, RabbitMq, Nginx, Redis。涉及的方向包括常用的多线程任务并发处理,Linux基本部署运维,消息队列异步消峰,缓存,Rpc远程调用服务,负载均衡等。经历过的业务包括数据库安全领域方面的数据处理,任务并发处理,任务调度,数据分析统计,三方组件使用,在线教育这块主要是秒杀,团购,订单下单以及微信支付宝常见支付的一些业务处理。具体细致的大家在网上都可以找到对应的,我这块暂时先简单回忆整理一下,也是方便后续找工作。
2. 个人行业看法及自我定位
2.1 行业看法
写这块内容的时候还是担心大家挑刺的,毕竟工作两年,可能接触的范围也并不是那么广。但我还是想表达一下内心的想法。首先是对于程序员这个职业,其实分散后又有其他的变种,服务端,前端web,安卓苹果,Java,C, Python 各式各样的语言,各式各样的领域。不断细分后,如果想要精通确实要花费很多的精力与努力。即使是单一的方向,在不断技术变革下,也需要花费很多时间去掌握,并且在没有长时间的训练下也会遗忘掉很多内容。在工作后给我印象最深的往往是学的东西和实际公司业务上的套不上,自我学习的时候练习的东西,往往在经过一段时间的冷却后慢慢就忘掉了。所以从入职,我更加愿意倾注在公司业务所需要的技术上前进,但这造成的问题就是面试的时候往往要背很多的面经。不知道是不是大家和我有相同的感触,面试造火箭,上班扭螺丝。程序员在衡量人这块往往都已技术来确定,这点很难否认,毕竟任何一个行业都是靠技术吃饭的,但我几乎很少见到同样考验其他能力素质的公司。所以目前我对自身程序员的未来还是挺担忧的,不断的学习,新鲜的血液在不断的流入,在年龄不断的增长下,一部分人还是会沦为社会淘汰的产物。其次我还发现了一个转折点,只针对程序猿,不针对程序媛哈,一般来说等你谈恋爱了,你要不是半根筋,你就会发现自己学习的时间相对于单身状态的时候会少很多,思考的东西也会多很多,以前单身的时候你不会考虑的房子车子,在有了爱情后,都会慢慢作为一个个目标到来,不是因为你想不想要,而是你要为你和她将来考虑,我想在成家后会更加严重,人的精力是有限的,我一直是这么认为,而且我们努力工作也是为了更好的生活不。我有很多注重事业的朋友,他们发际线可观,但依旧对技术充满热诚,所以总的来说,我也不好说未来如何,做好当下,给自己定个合理的目标,然后一个一个完成他便好。
2.2 自我定位
我觉得自己可能未来会更适合往管理方面去发展,但前几年我还是会深耕代码层面,不懂技术的产品和项目经理,确实有点难以估量项目的风险和任务安排。这里也告诫大家,尽可能找甲方公司,有自己的产品线,在这样的公司发展,你得到的提升会更多,接触的技术层面也会更深层。不是我对外包有啥看法,从离职这家外包的情况来看,我是觉得外包可能不会有太大的提升,就像离职时我的主管和我讲的,互联网就是这样,技术如果没有实际的产业需求,终究还是会饿死在路上。难以发展,外包更多是注重业务实现,其次由于业务多,外包加班会比产品型公司多很多。我一直是不反对加班的,但这一年来,与女朋友合居后,有时也会反感无意义的加班。后续我个人的定位还是前两年走好程序员的道路,努力往管理方面靠拢。拓展自身的知识提高自我。
3.尾序
3.1 自我反思
说了那么多,可能大家更多觉得的是牢骚,也许是今年疫情的影响,确实大部分公司都不好过,此刻离职的我拿着东家给的工资欠条,依旧忧心忡忡。这一年来,工作和生活方面确实处理的都不是很好,体重骤增,工作压力大。确实也让自己很多工作习惯有了改变,以前我总喜欢和大家合作沟通,外包这边不断的背锅,身边的人充满了抱怨,确实自己的心境也有影响。做好的自己的事情,才有能力去参与其他人的事情,团队是所有人的,外包确是你自己负责自己的,合作也只不过简单的聊天沟通。可能我自己也已经受不了这种工作模式了。不管怎样,现在是解脱了,前面的生活道路很漫长也很艰难,我要重拾信心投入新的工作。积极准备简历,整理下面试经验。加油前行
3.2 结尾说明
本篇本来还打算说下自己的计划的,想了想还是省略掉了这部分篇幅。文章可能有些许消极情绪,这里说一下抱歉,个人也是已这种方式在发泄生活的情绪。毕竟我们好多人其实都缺乏发泄的渠道,如果有不好的地方,请谅解。最后,还是希望与大家共勉前行。
初入掘金,不断努力前行。