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

再見丶無法複製的曾經


對於這個問題,我談談自己的看法,如果有不認同的,請大家留言討論。


改掉 > 給出方案 > 告知 > 不做聲

如果是我,這就是我的態度和做法。

如果時間充裕的話,儘可能的改掉,同時告知直屬領導,這個問題產生的原因和修改方案。

如果時間不允許的話,比如工作已經交接完了,第二天就不來單位了,那麼想想缺陷的解決方案,然後告知直屬領導和交接工作的同事;如果解決方案沒有考慮清楚,那就先把問題反映出來。

千萬不要不吭聲,讓這個缺陷一直在環境上運行。


職業操守、同事情誼、將來可能還會遇到

為什麼要這樣做?我覺得很少人會選擇默不作聲吧,畢竟程序員都是善良的(悶騷的)小哥哥。

  • 職業操守:這個說法就有些大了,什麼職業操守,自己覺得是正確的事情,就要去做。

  • 同事情誼:談不上情誼,至少都是一個戰壕的戰友,而且程序員之間的關係都很單純,很少有職場鬥爭什麼的,所以這種問題,該說就說了。

  • 將來可能還會遇到:這個就有意思了,我用十多年的工作經驗告訴大家,只要你還從事這個業務行業的IT工作,那麼以後有很大的可能,你跟你的同事、領導會在另外一個公司遇到。萬事留一線,日後好相見。


我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。


會點代碼的大叔


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

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

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

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

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

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

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

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

謝謝!


IT人劉俊明


能怎麼辦?

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

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

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

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


王銳旭


我是一名做了6年的程序員,來談談我的看法。

從職業道德來說,如果你發現了這些漏洞,要及時的反應給公司或者交接給其他同事,有很多人出現離職後就不在接電話,甚至直接把老闆微信拉黑,職場跟做人一樣,圈也就這麼大,要隨時跟自己留條後路。

從程序員的角度來說,發現漏洞並及時去修復漏洞也是作為程序員一種基本素質,有句話叫溫故而知新,可能寫好的代碼過段時間你在去看,就會有這種感受,這也是代表你的編程技術在提高的表現,如果是程序的漏洞,你又發現了問題,證明自己的理解又上了一個新的臺階,如果你把這個漏洞告訴了同事或者公司的話,對自己也是一個圓滿的歸宿。


溫縣圈兒


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

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

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

四種解決方案:

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

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

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

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

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

希望能幫到你。


大學生編程指南


那個軟件沒漏洞,只要不是自己故意留的後門。我們有個客戶單位,找了一家安全公司,對他們公司的所有軟件進行了一次排查,結果發現很多漏洞,比如sql注入~有些頁面沒session檢驗。我們公司也是其中一家,一開始很怕會影響他們對我們公司的映像,結果他們反而對我們公司更加信任了。他們說基本其他公司部署的軟件也有很多漏洞,但我們公司幾天就修復漏洞了。


1378984


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

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

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

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

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

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

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

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


從不加班的程序猿


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

反饋辦法

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

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

提升自己

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

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


TesterDriver


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


點點23038568


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


分享到:


相關文章: