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