寫(xiě)代碼可能是成為軟件工程師最容易的部分
當(dāng)然,寫(xiě)代碼是超級(jí)重要的,但是我認(rèn)為它只是整個(gè)過(guò)程中的一小部分,且不一定是最難學(xué)的。
學(xué)習(xí)如何寫(xiě)代碼要花些時(shí)間,但是只要有足夠的訓(xùn)練(每天寫(xiě)代碼,堅(jiān)持?jǐn)?shù)年),你就能真正擅長(zhǎng)它。
你知道的,我相信在某種程度上,每個(gè)軟件開(kāi)發(fā)人員幾乎能給任何軟件寫(xiě)代碼。(當(dāng)然有時(shí)候這要用更長(zhǎng)的時(shí)間,但是你不再感到害怕,肯定能按照你的方式來(lái)運(yùn)行。)
我和自己的同事都看到了這種現(xiàn)象。我今天的一部分工作是把項(xiàng)目分配給開(kāi)發(fā)人員,我的團(tuán)隊(duì)有一些成員,常常能夠適應(yīng)任何項(xiàng)目。這些家伙就是我說(shuō)的能夠給任何軟件寫(xiě)代碼的人。
基本上,我不得不改變我過(guò)去用于衡量他們做為工程師的標(biāo)準(zhǔn)。他們已經(jīng)都是非常優(yōu)秀的程序員了。
不僅僅是要成為優(yōu)秀的寫(xiě)代碼的人
這些家伙都擅長(zhǎng)讓計(jì)算機(jī)做他們想做的事情。但是這個(gè)行業(yè)里任何有經(jīng)驗(yàn)的人將要對(duì)你說(shuō),還有更多的能力。
其中較大的一部分,是你通過(guò)看書(shū)、然后經(jīng)過(guò)一周訓(xùn)練還無(wú)法準(zhǔn)備好的。像大部分其它工作一樣,經(jīng)驗(yàn)在軟件工程職業(yè)里發(fā)揮著巨大作用,沒(méi)有其它捷徑可走。
我花了一些時(shí)間,盡量思考我在軟件工程里最看重的所有方面(和寫(xiě)代碼有關(guān)),下面是我想到的,不分順序:
-
編碼的能力(當(dāng)然,這是既定事實(shí)。)
-
編寫(xiě)正確的程序的能力。
-
使用正確的方式編碼的能力。
-
快速編碼的能力。
-
證明你的代碼運(yùn)行的能力。
-
和其他人編碼的能力。
-
為其他人寫(xiě)代碼的能力。
-
討論你的代碼的能力。
-
為將來(lái)編碼的能力。
-
從你的代碼學(xué)到經(jīng)驗(yàn)的能力。
除了寫(xiě)代碼的能力,列表中的其它方面對(duì)于靠軟件謀生的任何人而言,都是相當(dāng)重要的。而且,我敢肯定,所有這些對(duì)于優(yōu)秀的職業(yè)生涯都是同等重要的。它們每一項(xiàng)都難以學(xué)習(xí),不能速成,需要數(shù)年經(jīng)驗(yàn)才能掌握。
(當(dāng)然,寫(xiě)代碼的能力就像把其它所有東西粘在一起的膠水。沒(méi)有這種能力,一切無(wú)從談起。)
不過(guò),它是最容易的嗎?
我給本文的標(biāo)題為“寫(xiě)代碼可能是成為軟件工程師最容易的部分”,因?yàn)槲疑钚?,成為?yōu)秀的開(kāi)發(fā)人員,比成為優(yōu)秀的工程師要用更少的時(shí)間。
達(dá)到“優(yōu)秀的開(kāi)發(fā)人員”的狀態(tài),對(duì)于任何軟件工程師而言,是一個(gè)不可逾越的階段:首先你需要學(xué)習(xí)彈鋼琴,然后你才能開(kāi)始音樂(lè)創(chuàng)作。你具備了寫(xiě)代碼的***能力,才能打造你的軟件工程師職業(yè)生涯。此后你拓展能力,開(kāi)始增加和夯實(shí)越來(lái)越多的技能。
但是,所有一切能力的基礎(chǔ)是掌握寫(xiě)代碼的能力。
沒(méi)有絕對(duì)
我認(rèn)識(shí)一些杰出的開(kāi)發(fā)人員,他們能夠用 C++ 編譯器做出牛逼的東西。我從來(lái)達(dá)不到這種境界。我認(rèn)識(shí)的大部分優(yōu)秀的軟件工程師也將不可能達(dá)到這種境界。這些家伙是用他們的生命積累了海量的編程技能,十分不易。
我還認(rèn)識(shí)一些優(yōu)秀的軟件工程師,他們從來(lái)不是好的開(kāi)發(fā)人員。他們選擇了一條不同的道路,才成為他們今天的樣子,這條路適合他們。
對(duì)于我,以及我認(rèn)識(shí)的大部分人來(lái)說(shuō),他們從寫(xiě)代碼開(kāi)始,并以此為基礎(chǔ)。寫(xiě)代碼是最容易的部分。其它部分要花時(shí)間,大量的時(shí)間。
原文地址(original source):https://medium.com/@jaltucher/what-does-your-map-look-like-today-59eaa9223630
英文原文:Coding is probably the easiest part of being a software engineer