前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >写给天天被无聊业务需求追着跑的你~

写给天天被无聊业务需求追着跑的你~

作者头像
Coder的技术之路
发布2022-09-19 11:42:34
2180
发布2022-09-19 11:42:34
举报
文章被收录于专栏:Coder的技术之路

程序员经常说的那句话是什么来着?我其实不怕忙,就怕忙的没意义、没成长~

所以,很多人最怕的就是那种:需求点贼琐粹,时间还贼紧,关键架构还都是现成的,贼没有挑战,几乎是那种纯写代码的,还左一个右一个提过来的需求~ (组里人手少,想推都推不掉~)

我相信这个感觉,应该算是不少朋友的困境,特别是工作前一两年的朋友。

作为老一辈无产阶级程序员,我觉得有必要和年轻一代的小火鸡们交流一下心得

。最近我也被一个需求恶心坏了,文章都更新不及时了

,需求进度好不容易赶上去点,抽空来理理心路历程~

1天天业务代码怎么办

有的同学总是向往中间件、框架代码的研发。这其实没有问题,因为相对比而言,中间件和框架,需要的技术深度和知识把控程度,都要比业务代码要求更高。

就比如,上篇文章中提到的RocketMQ主从复制的锁优化,将多重重量级锁下保障线程安全的问题,简化为buffer切换+写buffer两个CAS。

如果是业务代码里遇到类似的场景,我们在开发的时候,会计较这么细么?

大概率是不会的。为啥?个人理解,是因为业务代码中涉及的更耗时的逻辑多的是,一个接口调用,甚至是一个缓存存取,就要比这个锁的影响大的多,我们更愿意用个并行的方式,让更短的耗时短板,来掩盖这个很小的性能损耗~

人都是有惰性的~,有些行为是潜意识的,不知不觉就这样做了~

为什么RocketMQ非要把多个重量级锁优化为2个CAS锁呢,是因为对于RocketMQ的业务场景和作用,这个"小小"的性能损耗,会对系统的吞吐量产生很大的影响~ 换句话说:这也是没办法,被逼的~

所以,当我们意识到这个事情的时候,框架代码好像更香一些了,但还会认为业务代码一点价值都没有么?

只要我们够仔细,就会发现一大堆的点,可能都有更优的写法,小到ArrayList和LinkedList的类型选择,大到锁的优化、同步块的减少和消除、并行资源的控制、线程池的优化、JVM友好的代码模式等等~

所以,当我们去写一段业务代码的时候,可以这样问问自己: 我的这段代码,会不会被后面接手的人骂! 我的这个优化和注释,会不会给后面接手的人上一课!

2拿什么去拯救你,我的职级

工作为了啥?升职、加薪、迎娶白富美、当上CEO呗,还能是啥!

自私点的说,我们大部分人工作,都是目的性很强的,没有那么多人是为了热爱,起码我不是,如果正好有兄弟是,那我真心服气。

刚看了《功勋》,凡是得了共和国勋章的前辈,都是因为热爱、专注,这是一种常人难以企及的高度,不得不服~

那么,说回我们普通人,同样是坐在一起写代码的一群人,怎么能做到比别人容易升职呢?

阿里有句土话,叫"以结果为导向",细细想来,创造这个话的人应该是很厉害的,虽然这个行事准则在阿里内部越来越严重的被演化为吹牛逼,但不得不说,对于个人成长,是重要的。

那么,怎么以结果为导向呢?经常做需求的我们知道,一般小的需求,基本都是一两个星期就完事了,但是大的需求,动则几个月,多则按季度来算。

小需求其实很难做出什么结果的,主要还是看大需求。

就按3个月的周期来算,这样的项目一年才能做4个,还不一定经常有,所以,如果遇到这种以月为单位的项目,并对这个项目所需要的技术和所能获取的知识有了一定把握的时候,一定要问问自己: 我做完这个项目,能不能总结一篇文章发到公司的技术公号!(打个比方~)

如果可以那最好,如果不行,那就不要在这个项目上浪费太多的精力,能复用的,能拆解的,能抛锅的 你懂的~ ,尽可能缩短投入,去做更有意义的,比如技术驱动的需求。

3总结

曾子曰:“吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎?”

这里,我们也要效仿一下古人了:

当抬手写一段代码时,问自己:这么写,后面的同事会怎么评价我? 当我们起手做一个项目,问自己:这么做,自己的投入产出是怎样?

另外,从别处看到的一个方法也非常好,分享给大家:一学、二练、三讲。最终落到讲上的原因是,当你可以给别人把一个知识讲清楚时,说明你掌握的要远比这个知识要多的多了。

推荐阅读

高并发垂直优化系列:

1. 高并发架构优化:万亿流量下的负载均衡实践

3. 高并发架构优化:从BAT实际案例看消息中间件的妙用

4. 高并发存储优化:细说数据库索引原理及其优化策略

5. 高并发存储优化:许是史上最详尽分库分表文章之一

6. 高并发存储优化:数据库索引优化Explain实战

7. 高并发存储番外:阿里数据中间件源码不完全解析

8. 高并发存储优化:诸多策略,缓存为王

9. 高并发存储番外:redis套路,一网打尽

10. 高并发服务优化:浅谈数据库连接池

11. 高并发服务优化:详解RPC的一次调用过程

12. 高并发服务优化:详解一次由读写锁引起的内存泄漏

13. 高并发服务优化:JVM--工程师进阶必经之路

高并发整体可用性系列:

14. 高并发整体可用性:细说历经磨难的注册中心

15. 高并发整体可用性:大规模集群下的分片管理策略

16. 高并发整体可用性:一文详解降级、限流和熔断

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Coder的技术之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1天天业务代码怎么办
  • 2拿什么去拯救你,我的职级
  • 3总结
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档