公司的几个研发leader一言难尽,因为有些人能走上研发leader这个岗位,并不一定就代表他的编程和研发指挥能力就是可以的,这一点,我相信很多程序员都深有体会吧?一天,我们老板有受不了了,有时候一个简单的项目,原则上可能只需要一两天就可以完成。但是,因为我们项目代码逻辑不可复用,本来一两天能够完成的项目,经常需要一个多星期甚至更久。
老板跟我们说:“从今天开始,所有的项目都要对常用逻辑进行封装,以便下次碰到相同的逻辑复用!”
但是我们公司几个研发leader似乎没有听进去!
所有逻辑全部写在一个项目里
我们公司之前接了一个工厂上位机的项目,这个工厂有很多车间,软件界面逻辑有一些不一样的地方,但是是有共通性的。比如说主界面的操作逻辑、跟数据总线通讯的逻辑、跟硬件通讯的逻辑等等。
可在设计界面的时候我跟当时负责这个项目的研发leader产生了分歧!
我觉得,每个车间的软件界面除了图像显示部分不一样,其他地方的逻辑都是一样的,我觉得软件界面应该这么设计:
设计一个主程序,然后将显示图像部分的逻辑单独通过插件的形式动态加载进去,这样主界面的逻辑就可以复用了!因为需要区分每个车间需要用哪些插件,我们可以将插件放在一个插件文件夹,根据需要将对应插件放进去即可。
但是,这种设计思路被我们公司其中一个研发leader给否决了,他觉得搞动态加载太复杂,觉得还是把所有界面都写在一个项目里好,然后在项目代码里直接写if-else,通过判断车间类型来决定显示哪些界面,而车间类型通过配置文件来配置读取,甚至连动态加载这个方式都不用,他觉得逻辑共通部分,每个车间的界面重新写一遍也不费什么功夫,复制粘贴嘛!
听到他这么设计程序,我一阵无语。但是,他的话总算让我知道了让老板头疼的元凶是谁了!
我来现在的公司以后,发现我们公司很多项目里面都是通过if-else来判断界面并显示界面的,而所谓复用,更加夸张,就是将之前已经写好的项目整体复制,然后在原先的代码基础上进行新增或修改。
这种奇葩的复用方式导致了很多项目的很多代码都一样,但是,一些其他项目的界面在新项目里又不敢删,因为怕删出问题。
最终导致了每个项目代码都有很多冗余的地方,而且还会有很多废代码在里面。最主要的问题是,如果这些项目里有一些“复用”的逻辑出现了问题,那么所有项目的代码都得改!
回忆起我维护老项目的种种不适,我觉得研发leader的建议不行,并且说了一堆不建议这么用的理由,比如代码太冗余、维护起来不方便等等。
看我这么说,这个研发leader还想用自己职位权威压我:“我觉得没问题,你就这么干就行了!”
于是,我就跟他说:“我不敢说我的思路是最好的思路,但是复用性还是很好的,你如果非要让我按照你的思路来,不好意思,我忍不了这种写法!”
最后,我俩不欢而散,但是,好在我们公司的项目经理说话比较受重视,权衡之下,决定用我的思路,但是我还是把这个研发leader给得罪了。
最终,在公司里,我在这个研发leader的印象里,就是“很难沟通”,并且有意无意跟其他人表达过我的这点“问题”,搞得我也很无奈!
“舍近求远”
因为我们公司的研发leader都是c 程序员,而我是c#程序员,有时候需要c 做算法,c#去调用。
在我来公司之前,以前的做法竟然是c 单独写一个程序来做算法,因为c 单独写一个程序来做算法的话,就需要集成一个通讯模块来让c 和c#之间通讯。
尽管这样,就连通讯方式都乱得很,有些是用socket通讯,有些是用websocket通讯,有的是使用redis做数据缓存,这样就可以不直接通讯了。
我看到每个项目的通讯都不一样,于是就问其中一个研发leader:“你们c 难道就不能把算法部分封装成一个动态链接库吗?我们c#直接调用库执行算法就可以了!毕竟,通讯还有时间上的损失!”
这个研发leader倒是听进去了,但是研究半天发现自己不会编译动态链接库,或者编译成功后,c#这边调用不了,最后他也没耐心了,说还是使用通讯的方式吧!
然后我就愣住了!
一些人能当研发leader,不一定靠得是能力
有一天,我实在忍不住了,就问公司里面的一个老的项目经理,问几个研发leader就这水平,是怎么当上研发leader的?
最后,这个项目经理苦笑着说:“这都是公司刚成立时跟着老板的,最开始的研发都走了,只剩下他们了,不用他们用谁?”
大体意思就是,虽然他们技术可能不行,但是对于公司的业务是非常熟的,也不是那么不堪。
最后,我只能无奈地笑一笑,这倒是跟很多公司的情况比较像。
这个项目经理还说了一句话,彻底把我逗笑了,他说:“公司之前也招了一些大牛过来,但是看了下公司以前项目的代码,摇摇头都走了!”
结语
最后,我觉得,这些人既然懂业务,那就让他们去管业务就可以了,也可以管项目开发,但是,自己就别掺和研发,更别自己写代码了!
我们公司现在所有以前项目的代码基本上任何一个有过几年工作经验、代码风格比较好的程序员看了都会头疼。
我不否认一些公司的老员工对于公司的贡献,但是可能成也这些人,败也这些人!
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
notice: the content above (including the pictures and videos if any) is uploaded and posted by a user of netease hao, which is a social media platform and only provides information storage services.