上一次说到我做项目不出错,后来回想一下这话有点儿托大,出错还真是出过的,当时看来出的还真不小。

nokia

也是在Nokia的时候,用某知名品牌芯片做TD+GSM双模;那会儿很多射频前端的控制逻辑还是GPIO,不像现在统统RFFE。有那么一个Diversity的天线开关要用一路GPIO,因为按照参考设计的话Modem上那一路GPIO走线有点麻烦,就选了一路走线方便一点的。

后来测试灵敏度的时候,还真就是切到这路Diversity上的时候就挂了;然后我们找来示波器一看,原来这一路GPIO在拉高的情况下有持续的噪声,然后被带入射频链路。。。也难怪参考设计上没有用这一路GPIO。

此时距离产品进入认证测试只有一个build的时间,也就是说我们必须确保在下一个build解决这个问题而不再有任何补救的机会。当即我们尽可能的做了实验,反复论证了改layout的风险是可控的,然后我也向项目领导保证下一个build硬件上这个问题一定能被修复,同时不会带来新问题。

事情就这么完了?显然还没有。

bug

毕竟这是一个会引起认证测试项问题的bug,所以在很短的时间内整个项目组都知晓了,测试部门质量部门都开始介入,项目管理团队也需要我马上作出解释——这些都合情合理,事实上我也已经准备好了。在很短的时间里我谢了一份ppt,包括问题的起源、排查以及最重要的解决方案包括各种风险评估——好歹我是干过市场做过产品经理的人,做这种文稿不用花多少力气。

这时候,我的直系老板,一个芬兰大佬,看过我的ppt之后,把我叫去他的办公室,严肃的对我说:

“你的ppt写的很好,但是有几个关键点必须修改,你记下来。”

ppt

“第一,这个问题绝对不是我们设计的问题。”

“第二,这个问题应该是供应商的问题。”

“第三,我们将要求供应商在下个build开始之前解决它。”

我当时有点懵,毕竟在市场口的时候我们也不敢当着运营商的面把黑的说成白的(不要以为你能骗的了谁,你但凡胡说一句,就会招致友商百倍的暴击,以后客户也就不会再相信你了)。我还想申明一句:“可是,确实是我们没有按照参考设计作,考虑不周才引起的问题;况且,如何确定供应商一定能解决这个问题呢?”

“不不不,我们不需要考虑这些。你首先要思考的是如何说服所有人:这个问题不是我们的问题而是供应商的问题!”

“可是我们改layout并没有风险,我敢保证下个build一定没问题。”

“我再强调一遍:我们不改layout,这不是我们的设计问题,这是供应商的问题!”

虽然我无法同意老板的意见,但是我还是按照要求做了一份全新的ppt,老板看过后也很满意;意外的是,在第二天的会议上,这份ppt以及我们所描述的一切都得到了坦然的接受。

后来幸运的是,供应商还真的帮我们解决了这个问题,他们做了软件调整,把这个GPIO上的噪声抑制了,产品也得以顺利进行——你好我好大家好。

应该说,从那时起,我彻底明白了所谓的“领导思维”,也明白了为什么我仗着一身技术做到如今四十岁,依然无法跟“领导”这个词沾点边。

pcb

大概在那之后不到一年,我们在一个产品中缺少了一个制式,引起运营商的不满,我于是奉命再度写一份报告向运营商说明“我们已经做了所有能做的”,“错不在设计”,而是因为PCB面积不够摆不下。

这一次我几乎要撂挑子:这个结论太颠倒黑白了,我真丢不起这个人。

但是领导继续施压,我于是拿出器件面积来算给他看,我想说的是:不要把别人都当成笨蛋,后果也许是你会变成真正的笨蛋。

可是我发现似乎所有的项目经理部门领导都认为必须这样向运营商申明,只有我一个人在呼喊一种无法被人听到的声音。我只有再拿出当年游说运营商的本事,违逆着本心写这样一份报告。

这份报告被呈交上去之后一个月,运营商砍掉了我们这个产品的大部分补贴,也就是说这个原本可以盈利的产品顿时成为亏损大户。

 

从此我彻底心灰意冷。

我曾经就这个问题向朋友抱怨,他的回答很不带任何情绪,但是听得出来是曾经见识过多少不堪才得来的教训:“他们当然不能认账,因为认错就要丢人,就要被领导打低分,影响股票和奖金。”“ 领导也许并非不知道有些人是在掩盖错误,但他们并不会当面揭穿,这样这个人就会更听话更跪舔。”

我得说这也许并不是中国一处的问题,而是充斥整个世界的荒谬——当政治进入到一个公司的毛细血管,任何技术乃至真理都不再有任何意义。

漏洞

漏洞百出的走线?不是我们的责任,一定是供应商器件没有匹配好。

算错了的阻抗?不是我们的责任,一定是PCB供应商参数设错了。

遍地的耦合和串扰?不是我们的责任,一定是器件的隔离度不够。

后来我看到听到这些,也不再出声,只是一笑而过——王朝鼎盛之时,即便指鹿为马又如何?

不信抬头看,苍天饶过谁?