今年6月份毕业的,算上之前实习的时间,工作到现在也小半年了;有一点小困惑,想和大家交流下,之前在学校的时候就是每天各种按自己兴趣来找一些技术学习和写一些自己想搞的东西,感觉很充实很快乐;工作后发现每天都是围着需求来,最主要的还是在维护一个历史包袱很重的项目,需求也都是每天不停的小修小改这样,然后有点郁闷=.= 感觉工作几乎没有什么成长的地方(倒也不是,做很多需求的时候看了之前的很多代码,也学习了很多debug技巧和之前一些前辈写代码的设计思路什么的还是有收获的),但是感觉这个成长幅度有点很小,甚至感觉做的事情都没什么价值,而且公司的氛围又是那种不停强调产出的氛围,感觉自己不知道做些什么了;最开始入职因为这个项目文档什么的不是很齐全 ,上手很困难,自己有补充一些文档,但是感觉这些又没什么很大的价值 😅 ,大家应该都知道,只是没时间写,所以就有点小迷茫,搞的自己每天好像很忙又不知道在搞啥,说了一大堆也不知道自己在说啥(手动狗头)

同今年毕业。文档问题从实习到现在一直困扰着我,要么没有要么不知道在哪要么旧的离谱要么有错,都是口口相传,实习和我一起做项目的兄弟现在转正了还在维护那个项目,和我吐槽我们实习一起维护的文档有一些都找不到了 😅 。我转正被分到了和实习不同的中心,因为中心的定位问题,一直冲在部门的最前线,需求都是业务逻辑,根本谈不上什么技术,基本上是新增请求下游服务,对结果做一些处理罢了,感觉在这边理解业务比技术更重要。刚接手的时候历史包袱也很重,多种命名风格+奇奇怪怪不带注释的魔数痛不欲生。更离谱的事情是这个中心没有开发流程,需求澄清ok后开发就自己干了,自测几下就直接发布到线上,没有方案评审没有code review没有测试,简直就是xjb搞,直到国庆前才开始试跑研发流程,从入职到现在我们组搞了一次三级故障两次五级故障两次运营故障一点都不觉得奇怪。因为部门比较特殊,经常会有紧急需求,临时加班是常有的事,放假也得oncall,随时上线,长期的这种氛围导致压力很大,心情贼烦躁,平时也很少时间能做自己想做的,学自己想学的,也不知道每天忙了些啥。

    我是去年六月毕业,说起来刚毕业时我也有遇到一些类似的困惑哈哈,目前好了很多,也说说我自己的探索的心得。

    与历史包袱斗争

    刚毕业去了另一个项目组,和楼主相似,在维护一个历史包袱很重,复杂度特别高的模块,当时有写一个帖子 记录 其中的一大痛点。因为本身不熟悉,一开始的半年做事情也比较被动放不开,当时也是bug单不断,各种小修小补并未解决根本问题,搞得很痛苦 + 怀疑人生。想来工作的意义也是在于,老板雇你解决问题,你由此赚点小钱度日,无论在何处都也如此,所以也就没什么很理想化的东西,只能说看自己如何面对。

    屎山的来源在于业务逻辑复杂度无法控制住,往隔离的方向的角度去优化,感觉就好很多。目前我是从两个角度去入手:一是尽可能把某些同类的逻辑集中在一个模块;另一方面是尽可能写全变量和注释和 enum,避免一些当时口口相传的东西丢失,让代码里面尽可能多一些描述业务的概念细节的信息。当意识到有可能会有难以继续迭代的风险的时候,也及时和 leader 反馈然后想办法排时间去处理。

    文档这东西的价值也是比较长期的过程,一般要想活得久的模块文档质量也是不能忽视的,看似简单但坚持下来还挺不容易(尤其讲求变现商业环境之下)。需求比较少时一个个模块去找代码梳理,把一些口口相传的东西写下来,一开始确实难感受到价值感,但可以把它们都集中在一处,根据功能结构编一下目录啥的,形成一个体系,一边写一边形成一个新的方案,还有可能的迁移策略。随着时间慢慢积累下来、这块东西也只有我自己最熟悉,有相关的新需求也基本是我在 own 住。最近终于逮住了一个推翻它设计船新版本的机会,正在忙着把它替换掉。

    记录

    互联网行业工作日常面临的信息量可以说远远超过了人的认知的承受能力,感觉如果不借助于工具,光凭大脑直觉可能会很爆炸,容易抓不住重点被带跑。

    这块我自己摸索到一点经验,类似于“子弹笔记”的模式,用 Obsidian 或 Notion 之类支持大纲列表的工具(我自己用的 Obsidian),大概每月开一个 Page,然后每天一个三级标题,三级标题之下每一个事项记一个 Todo Checkbox,结合无序和有序列表形成一棵树的结构。每日上班前列出需要处理的事项、看到的好文章等等,日常学习、工作相关内容、遇到问题找其他人讨论的结论也记在里面。心血来潮时再略作整理,心中会比较有数一些。

    回顾整理时主要关注记下的信息点之间的关联,如果可以形成主题的话大概是一篇新的文档或者博文。

    目前我跑了几个月这种模式感觉良好,看着自己零散的点,有意识慢慢地会更聚焦一些,方向聚焦以后开始有所取舍,轻重缓急也明显许多,把精力尽可能集中到“重要不紧急”的事情上,很自然就可以少很多“重要紧急” or “紧急不重要” 的事情。慢慢地可以更好地管理手上的项目进度,和团队的进度互相融合。类似楼上师兄说的“项目管理”的问题。

      0x0001 这种记录习惯真的很棒,学习试行一波,之前确实也经常出现,突然get到的一些小东西,想着之后再深入研究一波,经常又被其他事就冲掉了,这估计也是感觉自己每天都很忙却又啥事都没做的感觉吧 😆

        Elite 那只能自己梳理一下文档了,刚好也能熟悉熟悉项目啥的,随时oncall这个太难受了

        SHUAXIN 是的哈哈!主要也是提醒自己思绪别飘的太远,抓住手头的事情,然后再找找进一步的方向。世界太复杂,信息也爆炸,一个人力量渺小,找到属于自己的一部分就好。就像那句话:“且夫天地之间,物各有主,苟非吾之所有,虽一毫而莫取”。

        突然 get 到的小东西或许可以试试 flomo

          还没有工作,补充一点自己的见识,关于烂代码和写文档;
          先说烂代码:我在微信读书的程序员圈子里面看到,总之出现烂代码可以归结为保护自己,人为制造麻烦,增加不可替代性,有人甚至提出两套代码注释的方案,目的就是为了让项目没了自己不行;

          关于写文档:2019年国庆折腾Ubuntu时,接触到知乎的笔记软件推荐,从此踏上了typora之旅。刚开始只是记录笔记,从今年九月份开始记录每天的学习状况,进度控制,项目开发进度,功能增加和个人构思;今晚因为mariadb MySQL数据库翻车,准备加入一条环境变化,主要描述自己对云主机或者物理机的重大修改,这也是为了提醒自己,不要随便在生产环境乱搞;

          除了python培训班的导师外,没有与他人进行协作,Git会一些,但协作一直没有机会自己上手一番,看到诸位上班心得,颇有感受。学习的目的,一方面也是面向工作,感谢诸位的工作经验分享,我将独立打印为PDF保存。致谢!

            Caesar-Victory 烂代码人为制造麻烦这种不太认同(当然不是否定,肯定会存在);工作大部分场合感觉还是因为没有一个统一的约定和风格的约束(或者有也没有很好的执行下去),导致每个接手的人都按着自己的想法和风格去写了,然后之间也没有文档的一些说明,久而久之就成了所谓的shi山 想起一句玩笑话,人人都讨厌shi,但是人人都在写shi(狗头)

              SHUAXIN 对,尤其是当节奏快了之后也来不及去思考前人究竟写了什么就开撸,这种情况最为致命。一般这种也称之为技术债务,思考足够深入的代码能容忍一部分欠账,但透支的太多,就可能不得不破产重组。

              5 个月 后
              2 年 后

              © 2018-2025 0xFFFF