程序员删库到跑路的思考

作为程序员,日常工作中需要面临和解决各种各样的问题,随着问题越来越复杂,需求越来越多,慢慢会超出个人心智负担,终有一天你会厌倦,期望自己能脱离苦海(删库跑路)。个人最近一直在思考这个问题,当我们面对这些问题越来越力不从心的时候,应该怎样做才能让自己稍微解脱点。程序员最主要的日常工作就是完成需求,那么我们何不从需求的角度来探讨下这个问题:我们提出了一个需求,这个需求就是让我们轻松点、不那么累。

需求过于复杂

业务需求的复杂性会让我们抓狂,特别是产品经理从不会提炼需求,只是简单的转达运营的各种诉求,从没考虑实现上的可行性和复杂性,认为画个原型图描述下业务流程就算是完成了产品的工作。产品是运营和技术中间的屏障,如果不能剔除一些无效的信息,拒绝一些不合理的要求,那么就会给技术人员工作带来更大的困难:需要从各种信息中筛选有效的剔除无效的,需要指出不合理的部分,还需要反复沟通让产品理解我们的面临的困难,在无尽的扯皮中消耗自己的精力和耐心。
我们很难寄希望于短期内提高产品同事的水平,但是我们也应该表达出我们的意见,产品同事应该在需求梳理上做的更好,"人人都是产品经理"我个人认为这是希望每个人都能以产品的思维来思考问题,但是并不是说每个人都真正具备产品思维,这种思维的培养需要刻意练习,而不是靠提一大堆需求就能自然而然产生的。这个只能寄希望于公司更加注重培养产品同事的产品思维。另外一点要提的是,需要警惕公司产品职能架空,公司业务完全运营导向化。这种情况下产品和技术的意见无足轻重,只需要完成运营提的需求就好了。产品是最靠近公司战略方向的部门,运营部门基于产品定位实现运营策略,技术实现产品实物或者运营工具,产品的重要性不言而喻。

系统各种各样的bug

bug会伴随技术人员的整个工作生涯,我们不得不分出一部分精力来应对这些可恶的bug。bug的产生有各种各样的原因,但是都给我们带来了痛苦,我们不得不回顾那些一坨坨的代码,如果是你写的那你还庆幸点,如果不是你写的还特别复杂,那你只能感叹太难了:不得已的情况下你做了部分修改,你也不知道能不能奏效,你只能心里默默祈祷。

1.技术人员水平参差不齐

不同的人实现同一个需求,短期来看效果是一样的,长期来看可能就有所不一样。随着时间的流逝,代码跑过的case越来越多,一旦出现意想不到的边界情况,bug就产生了。这种情况下我们希望整个技术部门的同事能在实现需求的时候多思考点,这个方案是否还有没考虑到的边界情况,而不是认为只需要主逻辑跑通就好了。提高技术同学的思维严谨性是有必要的,特别是在一些关乎安全性的功能上。我认为技术部内部有必要发出这样的声音,来提醒每一位技术同学。

2.业务需求冲突

为了实现新的需求,我们在原有代码上加了一坨又一坨的东西。指不定哪天就因为业务冲突,导致原有的功能出现了问题。为了解决这个问题,我们得清楚导致新旧需求的冲突的根因是什么,我们需要反复理解代码背后的业务逻辑,也许这些代码是一两年前写的,那真的是太痛苦了。需求冲突是没有达成一致性的体现,在产品设计之初就应该考虑一些准则,确保提的需求都可以围绕一些基本性原则,而不是漫无目的,各有各的想法。

3.没有充分的测试

我目前所在公司是没有专职测试的,所以只能靠自己自测,另外一方面靠产品测试。没有专职测试是出于公司节奏的考虑,每天都在改动,每天都在上线。我们也有写单元测试和接口测试,但是这并不充分。测试需要完备的测试用例,一条条执行,显然我们并没有。所以有的技术上线的功能bug少点,有的多点,没有专职测试进行兜底。我并不希望说一定要引入专职测试来解决这个问题,我们是可以通过其它手段如把控上线代码质量来缓解这个问题的。

技术债务

由于各种各样的原因,我们欠下了很多很多的技术债务,这些债务越来越多,我们在系统上的改造成本会越来越大,最终会压垮我们自己。每一个业务最初的需求都是很简单的,随着时间的流逝,这个业务越来越复杂,我们在原有的代码上改造再改造,终于有一天,这些代码变成了庞然大物,每一次去修改它都是一种折磨。也许你进入一家新公司,接手前人的代码都有这样的体会,但是这些代码的可能创造者包括你我,所以在技术债务压垮一切前我们是否能主动采取行动,来偿还这些债务,我们可以先跟主管或者负责人沟通,甚至是老板沟通,让他们理解我们面临的痛苦,获取到他们的支持后我们内部再达成一个一致性的重构方案,来彻底根除我们的痛苦。也许你会说重构非常困难,我认为当你把重构提到一个高度来思考,慢慢地你会发现也许也并不是很难,我们需要一个循序渐进的过程而不是立马推翻一切重新做。我希望大家都能理解,每一家公司都有技术债务的,所以每家公司每个技术工作者都应该有偿还技术债务的探索,否则我们只能任由一切往不可控的方向发展,只能当痛苦达到临界点时选择逃避。

人员流动

实现需求的人最懂代码该如何改,当实现需求的人离职了甚至当时的产品也离职了,那么后人接手过来改的话需要了解这个需求大的背景和它牵涉到的代码,也许是一点点小的改动,但是我们不得不付出巨大的精力来了解这一些,有可能还需要反复沟通,了解细节。所以我们一方面希望保证人员的稳定性,另一方面该思考如何减轻这种"流动"带来的痛苦。人员为何流动,这是我们需要关注的,考虑其动因我们再看是否能解决这些问题,但是需要注意的一点是当提出离职时那估计是不可挽回的,这意味着离职临界点已经达到了,所以我们需要尽可能早点意识到他们所面临的问题,帮助他们摆脱目前的困境。你并不能指望员工主动并且真诚的跟你说出他们面临的痛苦,他们只会默默心里承受,到达临界点时再提出离职,所以需要中上层主动了解。如何减轻"流动"带来的痛苦,我认为保证代码质量是有必要的,复杂功能的产品文档和架构设计文档也是有必要的,定期地优化复杂核心功能模块也是有必要的,这些都能尽可能保证我们接手到的不是烫手山芋。

结语

我们程序员并不是无所不能的,我们的精力也是有限的,当所有的事情需要的精力超出我们所拥有的,带给我们的将是持续的痛苦,大浪淘沙,有的人从此深陷泥潭唯有通过跑路解脱,有的主动寻求方案来减轻自己的痛苦。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,716评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,558评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,431评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,127评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,511评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,692评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,915评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,664评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,412评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,616评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,105评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,424评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,098评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,096评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,869评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,748评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,641评论 2 271

推荐阅读更多精彩内容

  • 关于技术债务的讨论时而蔓延时而消退,技术债务仿佛是个筐,什么东西都可以往里装,然而当我们企图倒光筐里东西的时候,却...
    abel_cao阅读 735评论 0 0
  • 2018年4月5日 星期四 小雨 今天是清明节,天上下着小雨,真是“清明时节雨纷纷”。吃完早饭,和孩子一...
    秋日私语666阅读 66评论 0 0
  • 1、 “慕阳哥,你慢点,走那么快干嘛,你想累死我呀?”从酒店出来,西雯一路小跑,气喘吁吁地跟在谭慕阳的后面。 慕阳...
    玉儿婶婶阅读 1,046评论 20 38
  • 4.9 首先问候一声企航的家人们大家早上好。 1、调整一下队列,向右看齐, 2、今天早上出门,一开门一阵冷风袭来,...
    知了4134阅读 325评论 0 0