Google 工程師親授:菜鳥開發(fā)者一定要投資的十大目標(biāo)
身為軟件開發(fā)者,有什么是一定得投資的? Google 軟件工程師 Emanuel Saringan 整理了十項他認(rèn)為必要的投資,***項就是身體健康,英文與數(shù)學(xué)也都是必備能力嗎?來看看他怎么說。(以下文字以作者***人稱撰寫))
你的健康
無疑地,軟件開發(fā)者是世界上最久坐不動的職業(yè)之一。
每天連坐八到十六小時,休息時間只有一點點,絕對會讓你的鮪魚肚肆無忌憚的生長。肥胖容易擴(kuò)大罹患其他疾病的風(fēng)險,例如心臟病等。要避免這種情形發(fā)生,盡可能分配時間運動或花點小錢在健身房上。
用不符合人體工學(xué)的方式長時間打字也讓開發(fā)人員的肢體容易重復(fù)損傷,如腕隧道癥候群。要避免這種情形,每打字幾小時就要伸展一下你的手腕,并未你的鼠標(biāo)與鍵盤都買個腕枕。
長期盯著屏幕看也會為你的眼睛施加壓力,也因此如果你有配戴眼鏡,***配副防眩光眼鏡,而不只是普通眼鏡。
增進(jìn)你的數(shù)學(xué)能力
數(shù)學(xué)能力能夠改善你的邏輯思考能力、面對問題的態(tài)度、甚至是你的耐心。
某些數(shù)學(xué)技巧可以直接應(yīng)用在軟件開發(fā),例如離散數(shù)學(xué);其他能力則視領(lǐng)域而定,有不同的功用。舉例來說,游戲開發(fā)者會很頻繁的用到物理與微積分,但企業(yè)開發(fā)者則幾乎不會用到。無論如何,數(shù)學(xué)能讓你變得更好。
o 增進(jìn)你的英文能力
程序設(shè)計/腳本/標(biāo)記語言都是英文的,常見的開源計劃如 Linux 也都是英文的。全世界的開發(fā)者都在使用英文,為跨國客戶工作的開發(fā)者更是被逼得一定要會英文,才能為他們的需求找到解決辦法。
發(fā)現(xiàn)了嗎?英文之于人類,就像二進(jìn)制之于計算機(jī)。
個人域名與網(wǎng)站
比起 OOOOOO@yahoo.com.tw 或 XXXXXX@gmail.com ,不覺得有自己的電子郵件地址酷多了嗎?擁有自己的域名只需要一點點年費,卻能讓你脫穎而出。
個人域名也能讓你潛在客戶與同事立刻認(rèn)知到你的自信與專業(yè):你的品牌就是你自己。當(dāng)然,前提是你的個人域名不能是什么「猛男愛小雞」之類的(hotmale-loves-chicks.com)。
一個活躍的 GitHub 賬號
對開發(fā)者來說,GitHub 賬號就像是藝術(shù)家的作品集。
一臺可靠的機(jī)器
你有聽過沒機(jī)器的開發(fā)者嗎?我也沒聽過。身為軟件開發(fā)者,如果沒有一臺自己開發(fā)用的機(jī)器,就像星際大戰(zhàn)中的絕地沒了光劍一樣。這里說的好機(jī)器至少要有 4GB 的 RAM,***能有 8GB。我可以推薦 4000 美元的 Mac Pro,但那些有極端需求的例外還是不適用。
快速的網(wǎng)絡(luò)
網(wǎng)絡(luò)是開發(fā)者的氧氣。長時間不能上網(wǎng)就像被切斷了氧氣供給一樣,讓人無法忍受。擁有穩(wěn)定的網(wǎng)絡(luò)聯(lián)機(jī)讓你有觀看網(wǎng)絡(luò)教學(xué)、餐與論壇、跟上***科技新聞的優(yōu)勢。
多讀信息科學(xué)的經(jīng)典書籍
以下是我推薦的軟件開發(fā)者圣經(jīng):
1. Structures and Interpretations of Computer Programs(PDF)
2. Code Complete 2
3. Pragmatic Programmer
4. Refactoring
5. Introduction to Algorithms (The MIT Press) (PDF)
6. Discrete Mathematics and Its Applications (PDF)
7. Mythical Man Month
學(xué)士學(xué)位
無論你是應(yīng)屆畢業(yè)生,或是剛離職要尋找新工作的人,學(xué)士學(xué)位都能大大提升你找到工作的機(jī)率。你想想看,假設(shè)有數(shù)以百萬計的研究生都爭先恐后的搶著應(yīng)征,那大學(xué)畢業(yè)生的履歷被丟棄的機(jī)率有多高?
證照(自由選擇)
證照考試能夠看出應(yīng)征者在特定科技的技術(shù)。通過一個證照考試代表這個人有資格深入了解組織的核心價值。
有些公司特別注重?fù)碛凶C照的開發(fā)者,給予較高的薪水;有些公司則完全不在意。例如,如果你是個有證照的 Java 設(shè)計師,代表你透徹了解 Java 語言,但不保證你解決問題的能力有比較強(qiáng)。有些公司會把批判思考看得比程序語言的專業(yè)來得重,畢竟程序語言可以學(xué),但問題解決是學(xué)不來的。