• 正文
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

程序員“趣事”一籮筐 | 讓軟件工程師去修復(fù)硬件問(wèn)題,咋下手?

2015/08/03
10
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

?

“人非圣賢,孰能無(wú)過(guò)。過(guò)而能改,善莫大焉”。當(dāng)產(chǎn)品出現(xiàn)問(wèn)題時(shí),要立刻修改功能,更正錯(cuò)誤,修補(bǔ)Bug工程師每天的家常便飯;客戶提出新的需求工程師都必須馬上相應(yīng),忙著更新、增加功能也是工程師工作的重頭戲;如果在應(yīng)用現(xiàn)場(chǎng)產(chǎn)品出現(xiàn)問(wèn)題就顯得有些火燒眉毛,遠(yuǎn)水解不了近渴了。

從流程上來(lái)看,產(chǎn)品應(yīng)用出現(xiàn)問(wèn)題,一般是客戶找銷售,銷售找售后,售后找項(xiàng)目經(jīng)理,項(xiàng)目經(jīng)理找工程師,工程師無(wú)人可找,問(wèn)題就此解決。工程師的工作從其他人看來(lái)是“修改錯(cuò)誤”,專業(yè)名詞是“消缺”,我也認(rèn)為“消缺”更加適合,因?yàn)閱?wèn)題不一定是錯(cuò)誤。


工程師的工作百分之百是以事實(shí)為依據(jù),凡事必須是一要有邏輯,二要有事實(shí)依據(jù)。但是銷售與客戶就未必考慮那么周全,也許是職業(yè)定位的原因,工程師聲音未必那么洪亮,好像錯(cuò)誤永遠(yuǎn)在自己這一邊。

今天就講講發(fā)生在我同事王林身上的一件事情。

王林在半年前接手了一位離職同事設(shè)計(jì)的壓縮機(jī)產(chǎn)品,因?yàn)殡x職那位同事留下的資料不太完整,而且客戶對(duì)產(chǎn)品又提出了比較多的更改要求,因此單位就重新設(shè)計(jì)了硬件平臺(tái)。王林本人對(duì)工作非常負(fù)責(zé),干脆自己重寫了產(chǎn)品的所有代碼。該產(chǎn)品有兩大部分組成:主板與顯示板。由主板向顯示板提供電源,兩大部分通過(guò)RS-485通訊連接,電源與RS-485通過(guò)一根9針串口實(shí)現(xiàn)。


王林在主板與顯示板采用了MODBUS協(xié)議,在協(xié)議中采用CRC校驗(yàn)。兩個(gè)月后,王林完成產(chǎn)品的軟件編寫,而且通過(guò)公司開(kāi)會(huì)討論項(xiàng)目順利通過(guò)。產(chǎn)品是為上海一家生產(chǎn)壓縮機(jī)的廠家訂做的,產(chǎn)品完成設(shè)計(jì)以后就向上海用戶提供了80臺(tái)產(chǎn)品。


產(chǎn)品硬件焊接完成以后,在調(diào)試階段王林發(fā)現(xiàn)在有些產(chǎn)品兩塊電路板通訊一直有問(wèn)題,故障率超過(guò)了10%,測(cè)試發(fā)現(xiàn)都是RS485通訊芯片壞了,更換后恢復(fù)正常。因?yàn)橐郧皼](méi)有遇到過(guò)這種現(xiàn)象,王林向老板口頭報(bào)告了這現(xiàn)象。老板也讓王林寫了一份書面的報(bào)告。王林很客觀地撰寫了一個(gè)簡(jiǎn)短報(bào)告,簡(jiǎn)單明了地闡述了在此次產(chǎn)品調(diào)試過(guò)程中發(fā)現(xiàn)RS-485芯片故障率超過(guò)10%。


報(bào)告提交給老板后,那批貨已經(jīng)發(fā)貨給上??蛻袅恕R粋€(gè)月過(guò)去了王林并沒(méi)有得到任何回應(yīng)。不久客戶那邊打電話找到老板,說(shuō)發(fā)現(xiàn)新安裝的兩套產(chǎn)品根本不能使用。因?yàn)楹贾菘拷虾#习寰妥尯贾莸募夹g(shù)人員郭工趕到上海進(jìn)行查看。郭工在查看完設(shè)備以后確認(rèn)是產(chǎn)品的問(wèn)題。

?

老板被客戶逼急了,開(kāi)始大發(fā)脾氣:“小王,到底什么問(wèn)題,以前老產(chǎn)品從來(lái)沒(méi)出過(guò)這種情況,你好好檢查一下你的程序?!?/p>

“產(chǎn)品發(fā)貨前都進(jìn)行了質(zhì)檢,不應(yīng)該有問(wèn)題,既然咱們的技術(shù)人員在上海,就多檢查幾臺(tái)吧。”老板著急上火,王林倒顯得氣定神閑。

老板繼續(xù)與郭工溝通去了,過(guò)了一會(huì)郭工通過(guò)手機(jī)發(fā)過(guò)來(lái)一段視頻,顯示板的LED不規(guī)則顯示。老板將視頻展示給王林看。

“看,還說(shuō)不是程序問(wèn)題,快點(diǎn)檢查。”

王林拿出一套產(chǎn)品,通電后,怎么也出現(xiàn)不了視頻顯示的故障現(xiàn)象。王林有點(diǎn)兒茫然,看時(shí)間已經(jīng)18:00了,已經(jīng)超過(guò)下班半個(gè)小時(shí)了。王林把軟件發(fā)給了郭工,讓郭工重新下載一下。郭工下載后,還是原來(lái)的現(xiàn)象。上海的客戶也下班了,郭工向客戶要了兩套產(chǎn)品回賓館了。

郭工回賓館后,發(fā)現(xiàn)了一個(gè)新現(xiàn)象,就是一套產(chǎn)品沒(méi)有問(wèn)題,一套產(chǎn)品確實(shí)有問(wèn)題。郭工直接與王林聯(lián)系了,根據(jù)郭工的對(duì)故障現(xiàn)象的描述,王林認(rèn)為是顯示板得不到主板數(shù)據(jù),所以顯示數(shù)據(jù)是隨機(jī)的,王林隨即將自己判斷匯報(bào)給老板。

“一臺(tái)有問(wèn)題,一臺(tái)沒(méi)有問(wèn)題,肯定是你的軟件不可靠???”我當(dāng)時(shí)正在陪王林檢查程序,我和王林差點(diǎn)沒(méi)憋住笑了出來(lái)。我們老板是80年代畢業(yè)的大學(xué)生,畢業(yè)后在一家研究所工作。2000年初開(kāi)始創(chuàng)辦企業(yè),也算工程師前輩人物,怎么會(huì)說(shuō)出這么不經(jīng)推敲的話來(lái)。


難不成王林給產(chǎn)品寫入了不同版本的軟件?我突然想起一句話“人可以無(wú)知,但不可以愚昧”。也不知道老板在研究所都干了哪些工作!

從下午四點(diǎn)開(kāi)始,2個(gè)多小時(shí)了。王林只是瀏覽代碼,沒(méi)有更新一行。這個(gè)時(shí)候王林說(shuō)話了:“老板,我實(shí)在分析不出代碼上問(wèn)題,我先回了,明天再說(shuō)吧。”

“問(wèn)題都沒(méi)解決,你就急著回家?”老板急了。

“關(guān)鍵是這得是我能解決的問(wèn)題才算!我前一陣向你匯報(bào)過(guò)485通訊芯片的問(wèn)題,故障現(xiàn)象是通訊連不上,我懷疑485芯片問(wèn)題。”王林解釋道。

“公司一直在使用這家供貨,怎么偏偏這個(gè)時(shí)候出問(wèn)題?”老板反駁。

?

“明天檢查一下芯片批次和供貨商吧,我也是感覺(jué)這個(gè)芯片問(wèn)題比較典型。現(xiàn)在只能說(shuō)是我猜測(cè)這個(gè)芯片有問(wèn)題,不能100%確定?!?/p>

“你的軟件就百分之百?zèng)]問(wèn)題嗎?”老板很生氣。

“從故障來(lái)看,最低限度不是軟件能解決的問(wèn)題,如果把注意力放在軟件問(wèn)題上解決不了問(wèn)題,我還是回去想想吧!”王林再次解釋。

我和王林關(guān)閉電腦離開(kāi)了公司,老板還在和上海的郭工溝通。


第二天,王林又瀏覽了一下代碼,檢查了一下產(chǎn)品電路原理圖,沒(méi)有發(fā)現(xiàn)明顯的問(wèn)題。

老板過(guò)來(lái)直接問(wèn)王林:“檢查出什么問(wèn)題了嗎?”

王林搖搖頭:“沒(méi)有發(fā)現(xiàn)明顯問(wèn)題?”

“仔細(xì)檢查一下吧,說(shuō)不定你的另外一款產(chǎn)品中也有這樣的問(wèn)題?!?/p>

“同樣的軟件,在同樣硬件平臺(tái),一臺(tái)正常,一臺(tái)有問(wèn)題。這明顯不是我軟件的問(wèn)題吧?!北绕鹄习宓牟〖眮y投醫(yī),王林顯得十分冷靜,有點(diǎn)戰(zhàn)場(chǎng)狙擊手的風(fēng)范。王林告訴在上海的郭工告訴將產(chǎn)品挨個(gè)檢查一下,將有問(wèn)題的產(chǎn)品寄回西安。

下午16:00左右郭工從上海打來(lái)電話,告訴我們有三套產(chǎn)品有問(wèn)題要寄回。王林負(fù)責(zé)該產(chǎn)品的軟件編寫。100多套產(chǎn)品寄回三套,很明顯這絕對(duì)不是軟件問(wèn)題。老板好像也明白了問(wèn)題所在,不再讓王林檢查軟件問(wèn)題了。

兩天后王林收到了上海寄回來(lái)的三套產(chǎn)品,經(jīng)過(guò)檢查發(fā)現(xiàn)故障現(xiàn)象與郭工在電話里說(shuō)的情況一模一樣,很明顯是主板與顯示板之間通訊問(wèn)題。王林在過(guò)去廢棄的產(chǎn)品上拆下幾個(gè)通訊芯片,進(jìn)行了更換,三套產(chǎn)品的故障就全部消失了。王林向老板進(jìn)行了匯報(bào)。

老板質(zhì)問(wèn)王林:“為什么出廠檢驗(yàn)沒(méi)有發(fā)現(xiàn)問(wèn)題?”

“出廠檢測(cè)的時(shí)候產(chǎn)品是好的,現(xiàn)在有問(wèn)題了,可能是芯片質(zhì)量的問(wèn)題。”

“這種芯片我們?cè)谄渌a(chǎn)品上使用的也比較多,為什么沒(méi)有出現(xiàn)問(wèn)題?”

“我去比較一下批次,看看是不是同一批次的?”王林回答的不緊不慢。我真的佩服王林沉著冷靜,一個(gè)編寫軟件程序員負(fù)責(zé)了判斷硬件問(wèn)題。

?

王林和負(fù)責(zé)硬件設(shè)計(jì)的同事帶著拆下來(lái)的芯片去了車間,半個(gè)小時(shí)后,比較可以發(fā)現(xiàn)本次產(chǎn)品使用芯片的絲印非常粗糙,不是正規(guī)廠商的產(chǎn)品,確認(rèn)應(yīng)該是供貨商的問(wèn)題了。

一切情況都清楚了,老板并沒(méi)有對(duì)王林說(shuō)一句獎(jiǎng)勵(lì)的話。因?yàn)榕坎少?gòu)的事情是老板娘負(fù)責(zé),老板娘反問(wèn)王林:“我采購(gòu)的芯片怎么有問(wèn)題?”王林沒(méi)有回答這個(gè)問(wèn)題。

在以后一個(gè)月,上海客戶一直反映產(chǎn)品不穩(wěn)定。最后郭工到上海全部更換了RS-485通訊芯片,問(wèn)題也就隨之解決了。

一天下班的時(shí)候,我和王林一起喝酒,談起這件事情王林問(wèn)我:“我做程序員的,是自己?jiǎn)栴}我們自己解決,但是要證明不是我們的問(wèn)題怎么這么難?費(fèi)了那么多功夫,圖些什么?”。工作這么多年,我不知道怎么該對(duì)王林說(shuō)些什么。“我們只要遵循我們的職業(yè)操守就行了,其他的實(shí)在管不了那么多了。估計(jì)下次有問(wèn)題,老板也就不首先懷疑我們了?!?/p>

與非網(wǎng)原創(chuàng)內(nèi)容,謝絕轉(zhuǎn)載!

系列匯總:

之十六:競(jìng)爭(zhēng)對(duì)手的五折價(jià)格戰(zhàn),耗不起!

摘要:合作多年的公司忽然告訴我們要停止供貨,原因是競(jìng)爭(zhēng)對(duì)手開(kāi)發(fā)了一款價(jià)格低廉而性能一樣的產(chǎn)品,于是老板決定要我們開(kāi)發(fā)一款同樣的產(chǎn)品來(lái)和競(jìng)爭(zhēng)對(duì)手競(jìng)爭(zhēng),等產(chǎn)品開(kāi)發(fā)出來(lái)以后不料客戶又有了升級(jí)版,我們繼續(xù)死磕嗎?

之十五:一款產(chǎn)品的成敗在與細(xì)節(jié)

摘要:朋友想要按照市場(chǎng)比較成熟的產(chǎn)品設(shè)計(jì)一款類似的產(chǎn)品,隨后緊鑼密鼓開(kāi)始設(shè)計(jì)硬件和軟件,完成以后發(fā)現(xiàn)在細(xì)節(jié)上有很多缺失,這引起了我對(duì)產(chǎn)品細(xì)節(jié)的考慮...

之十四:一個(gè)任務(wù),可以從第二項(xiàng)開(kāi)始做

摘要:朋友托我給他編寫一本技術(shù)手冊(cè),我思量半天遲遲無(wú)法下筆,后來(lái)女兒拿著玩具過(guò)來(lái)讓我?guī)退龘Q電池,問(wèn)我為啥不能從第二個(gè)句開(kāi)始,我豁然開(kāi)朗,可以從自己會(huì)的先開(kāi)始,靈感慢慢積累...

之十三:上帝遞給你一個(gè)機(jī)會(huì),你敢接嗎?

摘要:上帝是一個(gè)推銷員,她無(wú)時(shí)無(wú)刻都在想你推銷各種機(jī)會(huì),你只需要邁出一步就可以接住。機(jī)會(huì)在與把握,如果你不去把握,再好的機(jī)會(huì)也不屬于你。從我同事小張和小李兩個(gè)人的例子可以看出...

之十二:富二代也愁“娶妻”

摘要:我的同學(xué)李華是家里的獨(dú)生子,1995年西安開(kāi)始建設(shè)大明宮遺址公園,李華家剛好沒(méi)在規(guī)劃之內(nèi),于是一下子過(guò)上了小康的生活,說(shuō)媒的踏破門廳,可是偏偏他母親對(duì)姑娘的要求很高,最后37歲還沒(méi)對(duì)象...

之十一:給自己挖一口“井”

摘要:我同學(xué)講了一個(gè)關(guān)于兩個(gè)小和尚挑水的故事,不是大家聽(tīng)到的那個(gè)版本,如今我同學(xué)已經(jīng)成了當(dāng)?shù)氐钠髽I(yè)主,這與給自己挖井有關(guān),每個(gè)人都應(yīng)該為自己挖一口井,以備不時(shí)之需...

之十:職場(chǎng)菜鳥(niǎo):M3還是C51?

摘要:公司新來(lái)的小伙兒?jiǎn)栁覒?yīng)該選擇從M3開(kāi)始學(xué)習(xí)單片機(jī)還是從C51開(kāi)始?我當(dāng)然提議是M3,但是他卻擔(dān)心沒(méi)有C51的基礎(chǔ)不好入門!那就從M3和C51的價(jià)格、市場(chǎng)發(fā)展趨勢(shì)和占有率來(lái)分析一下吧...

之九:兩瓶啤酒斷送大好前程

摘要:由于公司規(guī)模的擴(kuò)大和業(yè)績(jī)的激增,公司計(jì)劃提拔一些中層管理人員去北京總部任職,而這個(gè)名單里就有駱駝的名字,喜從天降,駱駝心情大好,可是在交接完工作之后的一次偶然事件讓他失去了這次機(jī)會(huì),而且工作也不得不換...

之八:想省勁兒多動(dòng)腦

摘要:每天熬夜寫程序,后來(lái)才發(fā)現(xiàn)一直是白天寫晚上改,晚上寫白天刪,周而復(fù)始,效率低下。后來(lái)認(rèn)識(shí)了公司里的李工,他每天的工作悠閑有序,看上去很輕松,后來(lái)才知道他的高招兒,多動(dòng)腦少動(dòng)手...

之七:工程師愛(ài)上家務(wù)活兒

摘 要:由于母親身體的緣故,駱駝將三歲的女兒從老家接到西安照顧,由于愛(ài)人的工作很忙,于是駱駝不得不肩負(fù)起照顧女兒的重任,從此周末再無(wú)閑暇,買菜、做 飯、整理屋子、帶女兒出去游玩填滿了他的生活,重負(fù)之下他想到了辭職,老板的挽留讓他堅(jiān)持下來(lái),最后竟然發(fā)現(xiàn)自己多年的工程師職業(yè)病竟然好了...

之六:越簡(jiǎn)單坑越深,跳進(jìn)去出不來(lái)

摘要:公司小李由于技術(shù)功底扎實(shí),在軟件業(yè)務(wù)部受到器重,準(zhǔn)備提拔為項(xiàng)目組長(zhǎng),后來(lái)因?yàn)殡S口接了朋友一個(gè)硬件設(shè)計(jì)項(xiàng)目而荒廢了本職工作,最終看似簡(jiǎn)單的項(xiàng)目做了半年之久都沒(méi)有實(shí)現(xiàn),于是找駱駝?wù)埥?..

之五:做個(gè)勇敢的小馬,親自探探河水的深淺

摘要:公司接到一個(gè)大單,大家都眉開(kāi)眼笑,可是到交貨的時(shí)候卻遇到了不可調(diào)和的難題,作為新手的我自然不受上司重視,該研究還是不該研究呢?

之四:拖到辭職也沒(méi)翻開(kāi)書

摘要:小李是我們單位的資深工程師,產(chǎn)品量產(chǎn)以后,小李的工作只需要維護(hù)即可,于是日子變得清閑起來(lái),每天網(wǎng)絡(luò)小說(shuō)度日,有一天良心發(fā)現(xiàn)需要學(xué)習(xí)新知識(shí),跟上技術(shù)更新的步伐,可是遲遲不肯開(kāi)始....

之三:再好的專業(yè),技術(shù)也要扎實(shí)才行

摘要:老板的親戚來(lái)公司上班,還是名牌大學(xué)的碩士,聽(tīng)說(shuō)資歷很深,可是不喜歡和人交流,拿出一個(gè)小項(xiàng)目做實(shí)踐,一個(gè)很小的板子焊接了三天,后來(lái)他竟然問(wèn)了這樣一個(gè)問(wèn)題...

之二:老板的外甥:“朝里”有人也別太任性

摘要:老板的外甥保送了西安某大學(xué)的研究生,想趁暑假來(lái)公司實(shí)習(xí),順便學(xué)習(xí)點(diǎn)實(shí)際知識(shí),于是老板把他托付給了駱駝,結(jié)果這小子基礎(chǔ)知識(shí)沒(méi)有,還不想踏實(shí)補(bǔ)充基礎(chǔ),好高騖遠(yuǎn),只想一下子學(xué)到真本事....

之一:技術(shù)創(chuàng)新更得力

摘要:一位參加工作3-5年的工程師,憑借目前的新技術(shù),其工作能力可以達(dá)到工作30年的老工程師90%的水平甚至超越。由此可見(jiàn),年輕人憑借新技術(shù)完全可以挑戰(zhàn)權(quán)威,可見(jiàn)新技術(shù)的爆發(fā)力...


?

相關(guān)推薦

  • 基于STM32仿三菱工業(yè)PLC設(shè)計(jì)(原理圖、源代碼)
    方案
    8032
    2024/08/26
  • 在LPC55S69上實(shí)現(xiàn)的秘鑰系統(tǒng)
    方案
    1800
    2024/07/25
  • 基于單片機(jī)proteus仿真的設(shè)計(jì)作業(yè)3個(gè)實(shí)驗(yàn)串口、并口、定時(shí)器(仿真圖、源代碼)
    方案
    1053
    2024/07/25
  • 基于單片機(jī)proteus仿真的RS485多機(jī)通信設(shè)計(jì)ModBus通信(仿真圖、源代碼)
    方案
    6826
    2024/07/25
  • 登錄即可解鎖
    • 海量技術(shù)文章
    • 設(shè)計(jì)資源下載
    • 產(chǎn)業(yè)鏈客戶資源
    • 寫文章/發(fā)需求
    立即登錄

    早年從事軟件測(cè)試工作,2002年從事C語(yǔ)言教學(xué)。同年設(shè)計(jì)了視音頻切換器,用于硬盤播出機(jī)。次年開(kāi)始從事熱電偶檢測(cè)裝置的設(shè)計(jì)。2010年從事現(xiàn)代農(nóng)業(yè)管理機(jī)的設(shè)計(jì)。2012年從事電力行業(yè)的FTU設(shè)計(jì)與研發(fā),成功編寫了FTU軟件。2013參與了塔吊安全監(jiān)控設(shè)備開(kāi)發(fā)。10多年來(lái)對(duì)C語(yǔ)言情有獨(dú)鐘。略懂verilog。