在軟體外包公司幹了一年,離職的時候發現自己的代碼有漏洞,怎麼辦?

再見丶無法複製的曾經


作為一名從業多年的老程序員,我來說說我對這個問題的看法。

代碼為什麼會出現漏洞?代碼編寫是一個以腦力勞動為主的工作,不同程序員在解決問題的思路上並不完全一直,也就是說同一個功能通常有多種實現方式和途徑,所以代碼出現各種問題是不可避免的,即使有精細化的管理過程,也避免不了代碼出現各種漏洞。

簡單的說,代碼存在漏洞具有一定的客觀性。所以,為了避免代碼在編寫過程中出現各種問題,軟件公司通常會有比較精細的管理流程,在這方面歐美國家包括日本做的都不錯,做過對日外包項目的程序員應該深有感觸。

另外為了保障產品的質量,軟件開發團隊都會有配套的測試團隊,測試團隊的任務就是檢查產品質量,儘量避免出現各種軟件漏洞。好的測試團隊也會幫助程序員不斷成長,程序員的能力不僅體現在代碼的編寫速度上,也體現在代碼質量上。

通常情況下,如果程序員在工作中發現代碼有漏洞一定會及時處理並做好標註。不少團隊都會定期探討漏洞的出現點以及對應的解決方案。雖然很多程序員對這個過程比較反感,但是從軟件團隊的管理方面來說,這個過程還是很有必要的。

如果發現漏洞的時間點恰好出現在離職期間,作為程序員來說首先要做的事情應該是做好標註。然後跟負責人做出說明,如果條件允許的情況下最好處理完再離職,這不僅體現了一個程序員的職業素養,也體現了對程序員工作本身的態度。

我帶軟件團隊多年,我會陸續在頭條上寫一些關於軟件開發方面的科普文章,感興趣的朋友可以關注我的頭條號,相信一定會有所收穫。

如果有軟件開發方面的問題,也可以諮詢我。

謝謝!


IT人劉俊明


從職業道德來講,可以把這些漏洞信息說給你的交接人或者上司,有句話叫好聚好散,可能很多人都會覺得已經離職了,幹嘛還要多此一舉,離開已經和你沒有任何關係了。混職場其實和做人一樣的道理,人都會走背字的時候,不要時時刻刻把自己的路給堵死了,留下一個良好的印象對於別人和自己都是一件很愉快的事情,這個世界上雖然看上去很大但湊巧的事情的確很多,算是給自己做個積德的事情。

從代碼的角度來講,自己認識到出現問題了,及時的去修正也是作為一個程序員的基本素質,一般的老程序員都有這種感受,之前寫的代碼重新拿過來再去研究發現又會有新的知識點,每隔一段時間去審視下代碼幾乎每次都有一定的感受,其實這就是編程水平不停提高的一種表現,如果自己本身發現了代碼的漏洞,證明了自己的理解又上了一個臺階,是一件很不錯的事情,如果這個漏洞告訴了交接人,也算是給自己的代碼一個圓滿的歸宿。

在實際寫代碼過程中如何減少代碼漏洞的出現,作為一個寫了十幾年代碼的老程序員總結出以下

四種解決方案:

1.在模塊設計之初,就要把裡面的來龍去脈搞清楚,數據結構的設計上一定要留出足夠的時間

2.在寫代碼之前就要把可能會出現的漏洞在自己的大腦中過濾一遍,避免低級的錯誤出現。

3.寫過的代碼模塊一定要加上單元測試,來測試代碼的穩定性

4.寫過的代碼最好找個水平相當的幫你審核下,看看有沒有明顯的漏洞

基於以上四點能很好的避免出現代碼的漏洞,要想寫的代碼一點漏洞也麼有不是一件現實的事情,所以代碼漏洞主要影響因素,一個是基本功,一個是框架思想,設計的模塊就容易暴露漏洞,所以相對來講有經驗的老程序員代碼的質量會高很多,熟能生巧,多看多練才是關鍵。

希望能幫到你。


大學生編程指南


無論是外包公司還是自己服務的公司,作為一個程序員來說知道代碼有漏洞,首先就是要分析漏洞的原因,在離職的時候發現的,也是有很多機會來補救的。

反饋辦法

1、可以和對接人來進行交接,告訴他哪裡代碼有漏洞是怎麼產生的,最好是告訴一下需要怎麼修改,因為這和自己咋什麼公司無關,主要是一個程序員的自我修養和道德的問題,這裡並不是說道德綁架之類的,因為這也不涉及,就是一個漏洞修復就好。

2、可以和領導溝通,要是忘了和對接人說的話,或者交接時間有限,可以和領導溝通,這塊的問題在哪裡,再由領導來指定人員來解決。

提升自己

對自己也是一種考驗,有些人在外包乾,覺得自己沒有歸屬感,尤其是自己要離職了,就會像,這個跟自己沒有關係了,但是作為一個優秀的程序員來講,出現bug並不可怕,可怕的是自己都沒法面對,俗話說“前人搭樹,後人乘涼。”,我們儘可能要給自己的對接人減少不必要的障礙,給人留個好的口碑。

最後要說的的註釋、註釋、註釋,重要的事情說三遍,別到時候自己都看不懂了呦。


測試老司機


能怎麼辦?

1. 表示自己檢查時發現漏洞,並作出修改方案交給上司,以表示你站好最後一班崗。這會為你留下一個好印象,以後有需要大家幫助的地方,大家也會更願意幫你,因為你的個人信譽擺在那裡;

2. 什麼也不說,假裝沒事發生,也是情理之中。畢竟也是要離職了,如果離職時才發現問題,比較小氣的上司可能會疑神疑鬼,覺得你之前怎麼發現不了,是不是不認真工作。如果沒有什麼感情,也沒有什麼想法的,那放在那裡留著等下一任來接手就是了。

3. 利用漏洞報復公司,是萬萬不可的行為。如果你對公司有什麼不滿,也不要在離職前倒打一把。錢給少了,可以協商,不行就去勞動仲裁,不要用違反道德、法律的方法去報復他們,因為任何風吹草動都會影響你的風評,更不值得為此把自己搭進去。

不要把自己的退路堵死,也不要低估大家的八卦心理,好聚好散,站好最後一班崗,日後才好相見。


王銳旭


一個人的職業素養很重要,建議你能指出來,改正,然後走人。

在一個行業混,如果要混出名堂,成為龍頭老大,必須要有操守,要有口碑。離職了,下一個顧主會調查你的過去,如果原單位認為你寫的程序一般,有漏洞,對你的以後不會有什麼好處。

不論什麼行業,最後總是體現在德上,而不是一般的才上。口碑不好,不會成就大事。


beijingwanger


遇到上述問題,相信很多人的建議都是不用負責,交接完等於毫無瓜葛,比較極端的做法大不了就是刪庫跑路……但是我想說的是,離職最能看出一個人的人品和責任心,也最能檢驗一個公司對待員工的真實態度。所以上述問題,追根到底其實是考驗人性的一個過程。

站在離職員工角度,大概有3種處事態度:

  • 1.積極上進的做法!如果你將事情講明白,老闆也認同的話,最好結果!這樣相互取得信任,以後也好繼續相處(誰能不能保證自己今後不會再會老東家,而人脈關係永遠都是一筆寶貴的財富)。

  • 2.消極的做法!恩斷義絕,老死不相往來……最終的結局就是矛盾升級、誤會積累。有一點要注意,員工在離職的時候還沒有結算當月工資或者還有沒發年終獎的情況,企業是否能夠按時數額準確的發放工資完全取決於員工的離職態度。


  • 3.偏激的做法!相互撕逼,魚死網破。更有甚者可能會在離職之前估計埋下更多的bug,上升到報復公司的級別。本來離職很正常的現象,硬是要演繹成世界大戰,我覺得這是非常沒有必要的。

在程序員這個職業裡面,英雄主義實在太普遍了。有無數的理由說服領導、PM和自己,要重新造個輪子,因為大家都認為自己天下無敵了,但是又不好承認看不懂別人的代碼。如果你的個人影響力和表達能力有限,沒有足夠的理由說服其他人選擇這個輪子,又不願意花時間推動和完善,那麼最後的結果是,你認為這麼美好的東西,真的只是你這麼認為。等你不再維護了,離職了,下一個人又會循環這個過程...

我個人認為,其實最難的不是自己寫代碼,而是維護別人寫的代碼,在複雜的邏輯中找到某一個隱藏得很深的bug,或者在某個(些)位置添加一些代碼以實現新的功能。你需要按照最初實現者的思路去理解,這往往是最難的,這個過程中非常讓人容易產生挫敗感和不良情緒。

所以個人建議,為了不給對接員工填麻煩,也是為了自己避免深陷麻煩之中,希望大家都能對自己寫的程序負責到底。


從不加班的程序猿


往往職業道德,能決定你未來高度,認真做好每一件事。離職代碼發現漏洞時,有時間的儘量修復,時間不夠留下文檔,說明漏洞所在和修復思路,既不坑人,又能讓自身成長,說不定無心插柳柳成央呢


點點23038568


當然是該跑路跑路啦。。

從別人手裡接手代碼有多痛苦。程序員應該都懂的。但是既然都離職了。。就別想這麼多了。。

所以說。。養成良好的編碼習慣很重要。。註釋不怕多。。


Variazioni


補上。

外包不外包的,都是你的工作。離職也罷,繼續留職也罷,既然發現了,就補好,如果自己沒空,,可以提交BUG,讓後續跟進的人處理。


鄰居說A輕點


我的答案很簡單,儘量修復掉。你把這個搞定了,是一種技術成長和經驗積累,對將來的職位有好處。反過來說,如果你放著不動走了,其實對人家公司也沒什麼影響,現在版本更新和代碼重構普遍很頻繁,今天還在working 的代碼可能幾周後就沒有調用了或者不存在了,別把自己的工作想的太重要


分享到:


相關文章: