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

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

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

軟件工程師應(yīng)該怎樣培養(yǎng)

工程師人生 ? 來源:工程師吳畏 ? 2019-07-15 17:01 ? 次閱讀

軟件工程師應(yīng)該算是稀缺人才了,會(huì)編程的人一抓一筐,可是會(huì)做軟件的人就不那么多了,而軟件工程師更是這些人中的鳳毛麟角。軟件工程師的培養(yǎng)是有難度的,而且這個(gè)培養(yǎng)過程沒有章法可循,更重要的是培養(yǎng)出的產(chǎn)品的合格率比較低,因?yàn)槲覀兣囵B(yǎng)出的大部分人都將成為碼農(nóng),而碼農(nóng)顯然是與軟件工程師有較大差距的。幾篇文章也在談?wù)撥浖こ處熍囵B(yǎng)的困難和軟件工程這個(gè)學(xué)科本身面臨的問題,我總結(jié)一下幾篇文章的主要內(nèi)容,即為對(duì)于軟件工程師的培養(yǎng)還沒有形成一個(gè)很好的體系與方法,而軟件工程不等于計(jì)算機(jī)科學(xué)所提出的觀點(diǎn)正是這一大問題的子問題,就是我們著重于培養(yǎng)軟件工程師的計(jì)算機(jī)方面相關(guān)素養(yǎng)而忽略了其它,歸根結(jié)底還是因?yàn)闆]有很好的培養(yǎng)體系,不知道如何培養(yǎng)所致,所以我把它歸為主要內(nèi)容的子問題。

那我們先來看看子問題,我覺得這個(gè)問題是普遍存在的,如果說有解決辦法的話,我認(rèn)為需要讓計(jì)算機(jī)系畢業(yè)的同學(xué)繼續(xù)深造,在文科專業(yè)深造,或者,讓學(xué)文科的人來編程。第一種辦法周期太長,恐怕計(jì)算機(jī)系的同學(xué)不愿意干也干不了,這純粹屬于趕鴨子上架,讓計(jì)算機(jī)系這種典型的工科男學(xué)習(xí)文科,還不如把我們殺了來的痛快是吧;第二種方法,顯然不可行,不是我有對(duì)文科的偏見,畢竟術(shù)業(yè)有專攻,文科的人很難理會(huì)計(jì)算機(jī)的本質(zhì),讓他們學(xué)個(gè)C語言還行,到計(jì)算機(jī)組成原理就不太吃得消了,到了編譯原理的話恐怕得有一半人跳樓,然后剩下一半人回家。所以,這兩個(gè)方法均不行。軟件工程這個(gè)活真不是什么好活,一邊是計(jì)算機(jī),一邊是人,明明軟件工程師是人,可是非得把他們變成人和計(jì)算機(jī)的紐帶,這個(gè)要求就高了,一邊他得懂計(jì)算機(jī),一邊他得懂人。所以好的軟件工程師為什么這么難就可以理解了,我們真的沒有辦法培養(yǎng)這樣的人才嗎?我覺著還是有的,我們?cè)谡n余是否可以培養(yǎng)一些人文素養(yǎng),其實(shí)不要求我們專門去一心一意做這件事,這件事只要穿插在日常的計(jì)算機(jī)相關(guān)課程中間就好,比如學(xué)一些溝通,比如學(xué)一些經(jīng)濟(jì),不需要十分深入,只要了解大概就好,不需要把我們帶入這些相關(guān)領(lǐng)域的大門,只需要讓我們?cè)诖箝T口往里一窺就好。而現(xiàn)在學(xué)校的培養(yǎng)在這方面是很欠缺的,不說開設(shè)專門的課了,就連全校性的關(guān)于人文的大講座都很少,關(guān)注一下學(xué)校的講座信息,不是關(guān)于出國考研,就是關(guān)于就業(yè)的,要不然就是幾個(gè)有頭腦的碼農(nóng)不小心變成了高富帥的成功經(jīng)歷(比如李彥宏),可這有什么用,我們畢竟不是他們,他們的成功是不可復(fù)制的。軟件是人寫的,這些人正是軟件工程師,試想寫軟件的工程師都不能了解客戶的需求,不能與客戶有效溝通,他們可以寫出客戶需要的軟件嗎?一旦軟件寫出的軟件和客戶需要的軟件差別過大,無論這個(gè)軟件運(yùn)行多流暢、bug再少、算法再好,這些又有什么意義呢?我們做軟件的最根本的目的不正是要能解決需求問題嗎?至于其它的,只是在這個(gè)繼承上的點(diǎn)綴而已。就好比是顧客想買一斤水果,可你遞給顧客一碗佛跳墻,你說,這是國宴里的招牌菜,他,他接不接受還真難說,這個(gè)例子有待完善。以上我想說明溝通很重要,能想人所想也很重要。畢竟做軟件不是寫C語言作業(yè),需求就那些,也不用顧及界面友好等等,軟件是解決問題的,而且很大一部分軟件解決的問題不在計(jì)算機(jī)領(lǐng)域內(nèi),這就要懂相關(guān)領(lǐng)域的知識(shí)并且能在給領(lǐng)域?yàn)榭蛻糁耄热缱鲐?cái)務(wù)報(bào)表,本來需要做一些假賬,結(jié)果做成了真帳,出了這種事顧客只會(huì)責(zé)怪軟件工程師,而不會(huì)承認(rèn)自己的錯(cuò)誤,有些東西就是不言而喻的,但對(duì)于天天coding的程序猿來說,還真未必知道。其實(shí)這也不能全怪工程師,畢竟你讓人家一邊搞技術(shù)一邊搞人事,這很難的,要怪只能怪我們這是中國,誰讓中國人說話只說三分,剩下七分要靠猜呢?

關(guān)于總問題,上面篇幅也涵蓋了一些內(nèi)容,關(guān)于把計(jì)算機(jī)人員當(dāng)成板磚哥一樣的培養(yǎng),不對(duì),是建筑設(shè)計(jì)師,這是個(gè)新穎的想法,這兩個(gè)職業(yè)確實(shí)有很多共同之處。有一篇文章也舉了一些例子來說明它們的共同之處,但我認(rèn)為有幾個(gè)比較大的區(qū)別還是需要考慮的:1、建筑師只管規(guī)劃圖紙,至于建設(shè)過程的細(xì)節(jié)問題可以不予考慮,而且少了很多人事上的擔(dān)憂,比如說需求比較明確,設(shè)計(jì)的是學(xué)校宿舍就要有配套的浴室和開水房,設(shè)計(jì)的是商場(chǎng)就要有逃生避難場(chǎng)所,很多需求是硬性的也是相同的,需求的種類有限,更進(jìn)一步,這些需求是在大框架下小的需求,和大框架可以毫無關(guān)系,比如過道中安排椅子等,這就表明考慮具體需求的人和建筑設(shè)計(jì)師可以是不同的人;反觀軟件工程師,就比較苦逼了,他們需要考慮的事情很多,而且各種各樣的軟件工作的領(lǐng)域跨度很大,更要命的是細(xì)節(jié)上的考慮是和通盤考慮糅合在一起的,如果不考慮周全,一個(gè)細(xì)節(jié)上的改變就可能引起程序很大的改動(dòng),這也就是說一切事情必須自己搞定,沒有除了工程師的人可以代替你完成任務(wù)。2、就是這兩個(gè)體系的差別了,建筑業(yè)已經(jīng)形成了培養(yǎng)工程師的教學(xué)體系,所以才可以有導(dǎo)師帶領(lǐng)來更好的實(shí)踐它,而軟件工程就沒有這樣完備的并且有效的培養(yǎng)體系,不同的老師帶出的軟件工程師可以是長得不一樣的。在知識(shí)傳承過程中沒有形成教學(xué)體系的一個(gè)典型的行業(yè)就是算命,同一個(gè)老師帶出的學(xué)生,領(lǐng)悟多少就是自己的事了,不同老師帶出的學(xué)生那更是千差萬別,如果讓他們給同一個(gè)人算命,肯定每個(gè)人又不同的答案。不過軟件工程還沒有淪落到這個(gè)地步,否則這些軟件工程師也就都到街邊自己打個(gè)什么半仙的橫幅擺攤?cè)チ?。至于其他的區(qū)別,我現(xiàn)在還沒想到。有區(qū)別但也不是說這種思路行不通,只要有共性就必然有行得通的地方,老師可以在實(shí)戰(zhàn)中教會(huì)學(xué)生領(lǐng)悟需求的能力、溝通的能力等等。

綜上,培養(yǎng)軟件工程師是個(gè)體力活加技術(shù)活,不過我們也不能操之過急,畢竟中醫(yī)都傳承了幾千年了,到現(xiàn)在也是沒弄明白什么是冷啊熱啊,什么氣啊虛啊的,不是照樣一代傳一代,照樣治病嗎?

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

    關(guān)注

    8

    文章

    217

    瀏覽量

    21109
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA算法工程師、邏輯工程師、原型驗(yàn)證工程師有什么區(qū)別?

    ,還需要與軟件工程師、硬件工程師緊密合作,對(duì)整個(gè)系統(tǒng)進(jìn)行集成和測(cè)試。 總的來說,F(xiàn)PGA 算法工程師著重于算法優(yōu)化,F(xiàn)PGA 邏輯工程師專注于邏輯設(shè)計(jì),F(xiàn)PGA 原型驗(yàn)證
    發(fā)表于 09-23 18:26

    正是拼的年紀(jì)|65歲電子工程師上班VLOG #65歲退休 #電子工程師 #搞笑 #上班vlog

    電子工程師
    安泰小課堂
    發(fā)布于 :2024年07月25日 11:31:02

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

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個(gè)充滿機(jī)遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們一起探討一下。 1.奠定扎實(shí)
    發(fā)表于 06-12 11:20

    索尼誠邀軟件工程師參與PS免費(fèi)手游平臺(tái)設(shè)計(jì)

    據(jù)悉,近日,澳大利亞知名媒體TweakTown發(fā)現(xiàn),索尼互動(dòng)娛樂正在為其旗下的PlayStation Studios Mobile招募一名資深的軟件工程師,負(fù)責(zé)設(shè)計(jì)PlayStation的免費(fèi)手機(jī)游戲平臺(tái)。
    的頭像 發(fā)表于 05-23 17:08 ?654次閱讀

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

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

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識(shí) #面試題

    電子工程師電路
    安泰小課堂
    發(fā)布于 :2024年04月30日 17:33:15

    如何入門硬件工程師

    想跨行業(yè)做硬件設(shè)計(jì)工程師,應(yīng)該如何學(xué)習(xí)規(guī)劃呢
    發(fā)表于 03-17 21:49

    Cognition發(fā)布首款A(yù)I軟件工程師Devin

    據(jù)報(bào)道,Cognition公司今日公布了其首款人工智能軟件工程師——Devin,掀起了打造軟件模式變革的序幕。該產(chǎn)品在SWE-bench代碼測(cè)驗(yàn)中展現(xiàn)出卓越表現(xiàn),甚至超過了部分頂級(jí)人類工程師的水準(zhǔn)。
    的頭像 發(fā)表于 03-13 10:57 ?567次閱讀

    如何構(gòu)建linux開發(fā)環(huán)境和編譯軟件工程、應(yīng)用程序

    前文介紹了如何使用官方提供的鏡像文件啟動(dòng)開發(fā)板,本文將說明如何構(gòu)建linux開發(fā)環(huán)境和編譯軟件工程、應(yīng)用程序。
    的頭像 發(fā)表于 01-03 12:31 ?1793次閱讀
    如何構(gòu)建linux開發(fā)環(huán)境和編譯<b class='flag-5'>軟件工程</b>、應(yīng)用程序

    嵌入式軟件工程師常用的

    最近我換工作了,看見不同嵌入式軟件工程師用的平臺(tái)都不一樣,所以我整理了一下。PlatformIO:多平臺(tái)支持:PlatformIO支持多種嵌入式平臺(tái),包括Arduino、ESP8266、ESP32
    的頭像 發(fā)表于 12-24 08:00 ?597次閱讀
    嵌入式<b class='flag-5'>軟件工程師</b>常用的

    一文讀懂機(jī)器學(xué)習(xí):基本概念、五大流派與九種常見算法

    軟件工程師編寫程序來解決問題。首先存在一些數(shù)據(jù)→為了解決一個(gè)問題,軟件工程師編寫一個(gè)流程來告訴機(jī)器應(yīng)該怎樣做→計(jì)算機(jī)遵照這一流程執(zhí)行,然后得出結(jié)果
    的頭像 發(fā)表于 11-17 17:37 ?406次閱讀