【廣告】
“你們進行同行評審嗎?”
同行評審,或者讓別人看看你的代碼再把它放進代碼庫,這是識別愚蠢錯誤的辦法,同時也是開始你的職業(yè)生涯時一個關(guān)鍵的培訓機會。
危險信號:“我們相互信任!”→很有可能那些開發(fā)者對自己的代碼非常警惕不想給人看也不擅長接受反饋。
“你們的繼續(xù)教育計劃是什么樣的?”
作為一名軟件工程師意味著當新技術(shù)出現(xiàn)、成熟并以令人眼花繚亂的速度走向過時的時候要不斷學習。因此,很多公司都有培訓預算用來買大學和在線課程、會議或者內(nèi)部交流。
危險信號:“你是說在閑暇時間讀讀網(wǎng)上的東西?” →這家公司要么資金緊張,要么把開發(fā)者視為可替代的,而不是長期投資。
編碼的工作你不會干太多的
說出來也許有點令人吃驚,但是大多數(shù)時候你都不用寫新代碼,而是相反,要做:調(diào)試讀已有代碼開會或者寫電子郵件研究該怎么做以便不用寫代碼因此編碼以外的技能對你的職業(yè)一樣關(guān)鍵。
調(diào)試和閱讀代碼調(diào)試遠不僅僅是用打印語句。一切使用廣泛的語言和技術(shù)棧都有各種強大的工具。它是幫助識別開發(fā)完成(中間或最終的版本)的計算機軟件(整體或部分)的正確度(correctness)、完全度(completeness)和質(zhì)量(quality)的軟件過程。學會使用它們,因為這些會讓調(diào)試輕而易舉,節(jié)省你無數(shù)的時間。理解代碼庫。大多數(shù)技術(shù)棧都有某種代碼圖譜生成工具來幫助你理解代碼庫的結(jié)構(gòu)。企業(yè)級的 IDE 通常都內(nèi)置了那種功能。你還可以利用 ReSharper、grep 或者 Sourcegraph 之類的工具來探索代碼。理解產(chǎn)品。你會對居然有這么多開發(fā)者在試圖“修復”軟件前不知道軟件應該是怎么工作的感到驚訝。先看看文檔再說吧。
一般來說,在系統(tǒng)的設(shè)計范圍之內(nèi),吞吐量隨系統(tǒng)的并發(fā)用戶數(shù)的增加呈現(xiàn)增加趨勢,也就是說你客戶端來多少請求數(shù)系統(tǒng)吃(處理)多少請求數(shù);其中全項目參與測試計劃、方案、需求評審、用例執(zhí)行、bug跟蹤、測試報告、項目評估、接口測試、性能測試、自動化等高新技術(shù)綜合應用。當超出這個范圍時有兩種情況,一種是系統(tǒng)只能處理這么多,超過這個數(shù)系統(tǒng)不接收了,后隨著并發(fā)用戶數(shù)的增多吞吐量是一個水平的直線;
還有一種情況是不管來多少系統(tǒng)都接收后導致系統(tǒng)吞吐量下降甚至系統(tǒng)崩潰。這個我幸好知道,我說07年7千多萬美元,后來金融危機,到09年降到1千多萬美元,他問我降這么多,你為什么沒有離開那個公司。并發(fā)用戶數(shù)是客戶端單位時間內(nèi)對服務(wù)器端施加的壓力,具體能不能接受并處理要看被測系統(tǒng)的吞吐量,而吞吐量是被測系統(tǒng)單位時間內(nèi)處理的請求數(shù)或者說單位時間內(nèi)處理的字節(jié)數(shù);一個著重于客戶端的操作即測試手段,一個著重于應用系統(tǒng)的處理能力即查看對象;(上面的討論沒有考慮兩者的單位,如一個用戶同時有多個請求情況)