0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一位剛?cè)胄械能浖_(kāi)發(fā)工程師所必須要了解的幾件事

工程師人生 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-08-13 15:35 ? 次閱讀

我的軟件開(kāi)發(fā)生涯開(kāi)始于15年前。

但是直到最近的5年,我才真正開(kāi)始看到自己在軟件開(kāi)發(fā)領(lǐng)域的巨大進(jìn)步。

這里有一些感悟是我希望能夠在我進(jìn)入軟件開(kāi)發(fā)領(lǐng)域時(shí)所知道的事情,如果我早一些領(lǐng)悟到,相信會(huì)比現(xiàn)在更加成功,也更節(jié)省一些時(shí)間。

軟件開(kāi)發(fā)工作沒(méi)有“正確方法”

在軟件開(kāi)發(fā)生涯的早期,我曾經(jīng)浪費(fèi)了大量的時(shí)間在學(xué)習(xí)和爭(zhēng)辯,錯(cuò)誤的相信有一條“絕對(duì)正確的方法”能夠應(yīng)付軟件開(kāi)發(fā)的很多方面。

結(jié)果證明我曾經(jīng)認(rèn)為關(guān)于軟件開(kāi)發(fā)的每一件正確的事情到最后都是錯(cuò)誤的。

但是更重要的是,我發(fā)現(xiàn)很少有事情是黑白分明的。在寫代碼和開(kāi)發(fā)軟件時(shí)所做的幾乎每一個(gè)決定都取決于當(dāng)時(shí)所處的環(huán)境。

我曾經(jīng)討論過(guò)關(guān)于技術(shù)的宗教式信仰是如何對(duì)軟件開(kāi)發(fā)者不利的,但這個(gè)話題已超出技術(shù)范疇。

沒(méi)有萬(wàn)能的最佳實(shí)踐方式,這句話很對(duì)。甚至像“是否應(yīng)該進(jìn)行單元測(cè)試”、“敏捷開(kāi)發(fā)和瀑布模型哪個(gè)最好”這種高熱度的話題都不會(huì)有一個(gè)直截了當(dāng)?shù)暮?jiǎn)單答案。

在我的職業(yè)生涯中,我已經(jīng)浪費(fèi)了大量時(shí)間在這種“正確方法”上以至于最終一無(wú)所獲,而不是探尋可以讓我走更遠(yuǎn)的“實(shí)用主義”道路。

一頁(yè)一頁(yè)看書(shū)不是最佳的學(xué)習(xí)方式

當(dāng)我第一次想提升自己的編程水平和各種技術(shù)水平時(shí),我花了非常多的時(shí)間一頁(yè)一頁(yè)地讀具體的技術(shù)類的書(shū)。

讀書(shū)并沒(méi)有錯(cuò),但是要有選擇那些重要的書(shū)和重要的章節(jié)讀。

比如,我記得我曾經(jīng)讀過(guò)一本非常厚的關(guān)于Visual C++的書(shū)(我非常確定是《Beginning Visual C++ 2012》的早期版本),總之,這本書(shū)是一本包含了海量知識(shí)的好書(shū),但是一頁(yè)一頁(yè)讀并不是學(xué)習(xí)Visual C++的最佳途徑。

早知道我就應(yīng)該像過(guò)流水賬一般地粗略地看下這本書(shū)的所有章節(jié),以了解Visual C++包括哪些知識(shí)點(diǎn),然后再考慮哪些部分是最重要的,是應(yīng)該首先讀的。

如果我坐下來(lái)實(shí)際練習(xí)下書(shū)中的基礎(chǔ)練習(xí)題而不是僅僅看過(guò)或跳過(guò)這些例子的話,會(huì)有更多的收獲。除非你實(shí)際用你的所學(xué)解決了實(shí)際的問(wèn)題,否則算不上你學(xué)會(huì)了這門技術(shù)。

深入學(xué)習(xí)特別技術(shù)是浪費(fèi)時(shí)間

我不僅僅浪費(fèi)時(shí)間在一頁(yè)一頁(yè)的讀書(shū),還經(jīng)常選擇了那些錯(cuò)誤的書(shū)讀。

曾經(jīng)的我花費(fèi)了大量的時(shí)間讀諸如ASP.NET或Hibernate等特別技術(shù)的書(shū),而不是讀像《代碼大全》、《代碼整潔之道》、《敏捷軟件開(kāi)發(fā):原則、模式與實(shí)踐(C#版)》(順便說(shuō)一句,如果你還沒(méi)有讀過(guò)這些書(shū),我推薦你讀一讀)。

比起知道你所用的技術(shù)的重要性,成為某一特別領(lǐng)域的專家是不重要的。知道某一個(gè)具體API調(diào)用一點(diǎn)好處都沒(méi)有,當(dāng)你需要它的時(shí)候只要查詢下就好了。

我曾經(jīng)花費(fèi)大量時(shí)間深入學(xué)習(xí)的許多技術(shù)中,到最后要不這技術(shù)逐漸沒(méi)落,要不就是太過(guò)技術(shù)以至于我自己放棄了它。這些特別技術(shù)中的絕大多數(shù)最終都證明是在浪費(fèi)時(shí)間。

只要是我正在使用,無(wú)論什么語(yǔ)言,成為這種編程語(yǔ)言方面的專家都是很重要的,因?yàn)樵谝婚T特殊語(yǔ)言方面的專業(yè)知識(shí)能夠讓你活躍在軟件開(kāi)發(fā)領(lǐng)域許多年。當(dāng)然,我仍然在花時(shí)間深入學(xué)習(xí)C++、C#和JAVA,但是,對(duì)于現(xiàn)在的我來(lái)說(shuō),可能多花一點(diǎn)時(shí)間在C++的各種紛繁難懂之處并沒(méi)有什么好處。

技術(shù)社區(qū)在軟件生涯中及其重要

在我早年的職業(yè)生涯中,我犯過(guò)的一個(gè)錯(cuò)誤就是沒(méi)有投入到技術(shù)社區(qū)中求助或幫助他人。

我總是樂(lè)于幫助我的同事,并和我所接觸的各類職業(yè)打交道,但從來(lái)超出我所在公司的人員和崗位范圍。

曾經(jīng)我花了大量時(shí)間將自己投入在所在公司的職業(yè)生涯中,而沒(méi)有在軟件開(kāi)發(fā)社區(qū)中投入一點(diǎn)時(shí)間,這點(diǎn)非常的不劃算。

曾經(jīng)我花時(shí)間致力于內(nèi)部技術(shù)建設(shè)的分享或?qū)嵺`原本也可以在技術(shù)社區(qū)中做同樣的分享和交流,也同樣會(huì)給我?guī)?lái)工作上的認(rèn)可。

我也錯(cuò)誤的認(rèn)為我沒(méi)有什么有價(jià)值的事情貢獻(xiàn)給技術(shù)社區(qū)。

現(xiàn)在的我會(huì)和很多軟件開(kāi)發(fā)的新手們聊天,有時(shí)候我想相比我們他們一定花了很多精力貢獻(xiàn)在技術(shù)社區(qū),因?yàn)楹推渌率窒啾容^,他們看起來(lái)沒(méi)有懂的更多,也沒(méi)那么抓狂。

如果時(shí)光能夠倒流,我確信年輕時(shí)候的自己一定會(huì)投入很多時(shí)間在技術(shù)會(huì)議和用戶群組上,我會(huì)盡早地開(kāi)始寫自己的博客并創(chuàng)建自己的項(xiàng)目和資源與其他人分享,而不是呆呆地讀書(shū)。

永遠(yuǎn)有編外項(xiàng)目在做

影響我職業(yè)生涯最大的選擇可能就是杜絕看電視、《無(wú)盡的任務(wù)》和《魔獸世界》游戲了,取而代之的是將這些時(shí)間用在我的編外項(xiàng)目上。

在過(guò)去的生活中我已經(jīng)浪費(fèi)了很多時(shí)間在做娛樂(lè)活動(dòng),而不是那些能夠充實(shí)我生活的事情。

在大約3-4年前,我已經(jīng)基本和看電視這種活動(dòng)決絕了,現(xiàn)在的我甚至都很少看電影。看電視和看絕大多數(shù)電影都是一種時(shí)間浪費(fèi),浪費(fèi)那些原本可以做一些有用之事的時(shí)間。多數(shù)的電視游戲也是如此,但至少玩電視游戲收獲的也不僅僅只是無(wú)用信息

我非常喜歡玩電視游戲,而且恐怕也不會(huì)有停手的那一天,但是我著實(shí)希望我能夠把花費(fèi)在玩游戲、看電視的時(shí)間投入在自有的項(xiàng)目上。

不幸的是,我真正開(kāi)始自己的第一個(gè)項(xiàng)目卻是在大約3年以前,那時(shí)的我開(kāi)始著手創(chuàng)建一個(gè)Android應(yīng)用程序。

當(dāng)你為別人工作時(shí),能夠花時(shí)間在自己的項(xiàng)目上非常重要,否則就是在犧牲自己的精力為別人建造帝國(guó)。

在過(guò)去的幾年間,我不僅從編外項(xiàng)目中學(xué)習(xí)到了不少東西,而且也從其中得到了巨大的利益。事實(shí)上,其中的一個(gè)編外計(jì)劃:創(chuàng)建Pluralsight課程,是我現(xiàn)在正全職在在做的事情。

將所學(xué)揉合起來(lái)

以上所說(shuō)是少數(shù)我后悔沒(méi)有在自己職業(yè)生涯開(kāi)始時(shí)不知道的感悟,但從一開(kāi)始我仍然做了很多正確的事情。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    【《軟件開(kāi)發(fā)珠璣》閱讀體驗(yàn)】+ 心得

    ,《軟件開(kāi)發(fā)珠璣》是本值得每個(gè)軟件開(kāi)發(fā)者閱讀的書(shū)籍。它教會(huì)了我們?nèi)绾?b class='flag-5'>了解需求、設(shè)計(jì)、項(xiàng)目管理,如何與團(tuán)隊(duì)合作以及如何持續(xù)學(xué)習(xí)和進(jìn)步。在未來(lái)的軟件開(kāi)
    發(fā)表于 06-23 17:56

    找STM32硬件開(kāi)發(fā)兼職工程師

    上海做傳感器的公司,找STM32硬件開(kāi)發(fā)兼職工程師,會(huì)硬件開(kāi)發(fā),嵌入式軟件開(kāi)發(fā),可項(xiàng)目外包。有意聯(lián)系:15900460170
    發(fā)表于 06-22 19:12

    嵌入式軟件工程師如何提升自己?

    ,可以為自己的職業(yè)生涯打下堅(jiān)實(shí)的基礎(chǔ),并實(shí)現(xiàn)個(gè)人的職業(yè)目標(biāo)。愿每一位嵌入式軟件工程師都能在這個(gè)充滿挑戰(zhàn)和機(jī)遇的領(lǐng)域中取得成功!
    發(fā)表于 06-12 11:20

    共讀《軟件開(kāi)發(fā)珠璣》

    作為項(xiàng)目經(jīng)理,要處理好五大過(guò)程組和十大領(lǐng)域; 作為軟件配置管理,對(duì)軟件工程、算法和應(yīng)用開(kāi)發(fā)還不夠了解,本書(shū)介紹的軟件開(kāi)發(fā)和管理60條經(jīng)驗(yàn)教訓(xùn)
    發(fā)表于 05-21 11:28

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師軟件開(kāi)發(fā)領(lǐng)域中的種專
    發(fā)表于 05-16 11:00

    一位硬件工程師的歷練之路:從入門學(xué)習(xí)理論到... #搞笑 #硬件工程師 #電子工程師 #揚(yáng)興科技

    硬件工程師揚(yáng)興科技
    揚(yáng)興科技
    發(fā)布于 :2024年03月13日 17:50:21

    嵌入式工程師需要掌握哪些技術(shù)?

    些必要的技術(shù)能力是至關(guān)重要的。在本篇中,我們將討論入行嵌入式必須的技術(shù)能力。 1.C/C++編程能力:C/C++是嵌入式系統(tǒng)開(kāi)發(fā)中最常
    發(fā)表于 03-04 16:38

    嵌入式軟件開(kāi)發(fā)軟件開(kāi)發(fā)的區(qū)別

    嵌入式軟件開(kāi)發(fā)軟件開(kāi)發(fā)是兩個(gè)不同的概念,它們?cè)?b class='flag-5'>一些關(guān)鍵方面有著明顯的區(qū)別。嵌入式軟件開(kāi)發(fā)是指開(kāi)發(fā)嵌入在硬件設(shè)備中的
    的頭像 發(fā)表于 01-22 15:27 ?2130次閱讀

    為什么要做自動(dòng)化測(cè)試?測(cè)試工程師存在的必然性

    軟件測(cè)試這個(gè)過(guò)程的實(shí)施主體就是測(cè)試工程師。那么多少個(gè)測(cè)試工程師比較合適呢,或者換句話說(shuō)如上的事情必須要測(cè)試工程師完成嗎?
    的頭像 發(fā)表于 01-16 11:32 ?867次閱讀

    名嵌入式工程師的漲薪經(jīng)歷

    下面是一位嵌入式工程師的漲薪經(jīng)歷,希望可以幫助到你,幫到其他的在校學(xué)生。 ? 階段 1 大到大三這個(gè)階段我與大多數(shù)學(xué)生相同: ? 、學(xué)習(xí)本專業(yè)知識(shí)(電子信息類專業(yè)) 二、學(xué)習(xí)嵌入式
    的頭像 發(fā)表于 01-05 08:39 ?405次閱讀

    作為個(gè)平臺(tái)開(kāi)發(fā)工程師,我如何使用愛(ài)星物聯(lián)?

    如果你是一位平臺(tái)開(kāi)發(fā)工程師,需要了解愛(ài)星物聯(lián)作為IoT云平臺(tái),由 云管平臺(tái)、開(kāi)放平臺(tái)、APP 三部分應(yīng)用組成,同時(shí)打通了短信推送、語(yǔ)音助手、地圖等第三方平臺(tái),實(shí)現(xiàn)與安信可模組的互通互聯(lián)
    的頭像 發(fā)表于 12-18 10:52 ?338次閱讀
    作為<b class='flag-5'>一</b>個(gè)平臺(tái)<b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>工程師</b>,我如何使用愛(ài)星物聯(lián)?

    自動(dòng)化工程師必須掌握的六大知識(shí)面

    對(duì)于電氣工程師來(lái)講,圖紙是相當(dāng)重要的,所以制圖軟件必須要掌握的,這是毫無(wú)疑問(wèn)的。而且電路設(shè)計(jì)和電氣識(shí)圖這兩個(gè)知識(shí)點(diǎn)是相互關(guān)聯(lián)的,會(huì)畫電氣圖肯定看得懂電氣圖,電氣圖看多了,也能設(shè)計(jì)電氣圖。這個(gè)地方需要根據(jù)項(xiàng)目的實(shí)際經(jīng)驗(yàn)來(lái)學(xué),多看
    的頭像 發(fā)表于 12-07 09:31 ?1338次閱讀
    自動(dòng)化<b class='flag-5'>工程師</b><b class='flag-5'>必須</b>掌握的六大知識(shí)面

    硬件工程師要了解主機(jī)廠的標(biāo)準(zhǔn)嗎?

    公司最近購(gòu)買了GMW14082-2010通用汽車的標(biāo)準(zhǔn),要求硬件工程師進(jìn)行閱讀。我有點(diǎn)不清楚這個(gè)標(biāo)準(zhǔn)的作用對(duì)于我們來(lái)說(shuō)有什么用,里面的內(nèi)容需要全部都掌握嗎?還是只要知道其中些關(guān)鍵點(diǎn)就行?
    發(fā)表于 11-23 15:03

    機(jī)械人必須要了解的絲桿螺母參數(shù)

    機(jī)械人必須要了解的絲桿螺母參數(shù)
    的頭像 發(fā)表于 11-17 09:55 ?1875次閱讀
    機(jī)械人<b class='flag-5'>必須要了解</b>的絲桿螺母參數(shù)