回覆列表
  • 1 # 宏易

    這麼多答案居然都沒一個提到 Bill Joy。

    他寫了第一個能正常工作的 TCP/IP 棧,做了一個作業系統 FreeBSD,摻和了另一個作業系統 Solaris,寫了一個編輯器 Vi,搞了一個 CPU SPARC,指導創造了一門語言 Java (其實他也指導了 JavaScript 最早的實現),共同創立了一家公司 SUN。

    2005 年去 KPCB 當合夥人了。

  • 2 # 浦東張江程式猿

    這裡頂級的程式應該分兩種:一種是深度方面的頂級,一種是廣度方面的頂級。

    首先我們來說一下深度方面的頂級。這種程式設計師在軟體某一方面研究得非常深入,比如作業系統的核心這種,一般的程式設計師是沒辦法理解,只有那種頂級的程式設計師,才能夠理解其中的原理,於是可以最佳化雖然他改的程式碼不多,但是他隨隨便便改一行程式碼就可以讓其他的獲益良多。這種大神級的程式,一般都在頂級的公司,或者自己開公司。他們不修邊幅,過著深入淺出的生活。

    另外一種就是廣度的頂級這種程式設計師。他接觸軟體程式設計的方方面面,懂得非常多的細節,憑藉自己多年的經驗,他們可以很快地定位某一個問題,並且很快可以做出一個可以執行的程式,從前端到後端到資料庫到雲到演算法,他們都有接觸,並且研究。這種全棧程式設計師的頂級,基本上都是一些大型公司的業務骨幹,他們經驗豐富解決能力強,往往會升級為公司的C T O。他們喜歡自己寫程式,把自己一些需要手工操作的事情全部自動化,他們甚至自己寫程式去回覆一些簡單的郵件,如果他們沒有去上班,他們的程式會自動幫助他們請假。

    這種頂級的程式設計師不僅把程式設計的思想放在工作上,他們也在生活上也實行者他們的程式思想。

    他們都是我們的偶像。

  • 3 # 影視綜藝小段子

    有人認為,普通程式設計師用複雜的程式碼解決簡單的問題;而高階程式設計師能把複雜的問題簡單化並用簡潔的程式碼去實現。在w3cschool看來,頂尖程式設計師和普通程式設計師至少在以下6個方面大有區別。

    1、文件能力

    “文件是第一生產力”,這一點在程式設計師的世界是毫無異議的。看看Spring,hibernate,Struts等最流行的開源軟體的文件就知道,他們tutorial,他們的getstarted,他們的reference文件寫的多麼的易懂。

    如果要獲得更高的報酬,文件是絕對關鍵的因素。有文件就有溝通,就有交易。搞技術的容易忽視文件的力量,也因為寫文件十分困難,更多程式設計師選擇舒適區,習慣寫下程式碼,但正因為如此,妨礙了不少程式設計師的進階。

    2、解決BUG的效率差別

    普通程式設計師可以利用搜索引擎(百度)尋找答案,經常性找不到好的解決辦法,然後更換技術方案!頂級程式設計師也利用搜索引擎(Google)尋找答案,一般bug都順利解決(其實跟前期框架選擇等關係非常大)。

    3、表達能力

    表達能力決定了你所做的技術的影響範圍,決定了你的影響力,決定你的威信,決定了你的報酬。普通程式設計師和頂尖程式設計師的表達能力差別非常大,這主要還是取決於他們格局的不同。良好的溝通能力讓你理解產品經理的設計思路,讓你更好的展現自己的特長。

    對於累積人脈,當你的閱歷越來越豐富,人脈對你的幫助也越來越明顯。

    4、優雅和美觀的抽象能力

    普通程式設計師和頂尖程式設計師之間的區別在於優雅和美觀的抽象能力。好的系統通常是要做到兩個方面才合格,其一是好用,其二是好看。但是令人遺憾的是,普通程式設計師僅僅從實現的角度進行堆砌。頂尖程式設計師往往能夠更進一步,經常會去思考使用者在操作這個功能的時候,到底還會做什麼事情。

    所以,頂尖程式設計師和普通程式設計師區別就是是否擁有使用者意識,是否敢於直面使用者。好用,好看一直是軟體能夠被普遍採用的前提,因此,我們有必要學會抽象優雅。

    5、面對如何開源社群態度

    普通程式設計師幾乎沒有在開源社群混,這也導致經常對新技術發展關注度低。而頂尖程式設計師則是擁抱開源社群。

    6、面對功能點

    普通程式設計師:立馬開始構思自己如何實現腦海裡出來一個方案。

    頂尖程式設計師:發現功能點很普通github上面早已經有非常多的解決方案,著手根據業務選擇一個最適合最優的方案

  • 中秋節和大豐收的關聯?
  • 瘦肉型豬有哪些特點?