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

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

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

一位三年工作經(jīng)驗的軟件工程師的經(jīng)驗之談

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-06-27 09:16 ? 次閱讀

時間過得很快,我做軟件工程師已經(jīng)三年整了。我沒有做過一個項目,一直在做框架相關(guān)的工作,有時維護(hù)Web框架代碼,有時寫移動Hybrid的前端UI框架,也有時做開發(fā)工具或自動編譯平臺等。

我想分享下這段時間在工作上的個人經(jīng)驗,分為幾點:

做框架的態(tài)度

我工作中做得最多就是框架,框架的本質(zhì)是提高重用性。對于做框架,除了本身能力很重要外,很關(guān)鍵的是做框架的態(tài)度。

1. 不要因為困難的而不去做

(1)。作為程序員的程序員,如果你解決了一個困難的問題,你造福的是所有使用你框架的人。

(2)。即便是很簡單的功能,能做就要做,只要這功能不是嘩眾取寵的。

我很厭煩的是一些遇到困難后,連去深入研究都沒有的人。當(dāng)然困難問題解決起來耗費(fèi)的時間可能會長,但如果有益,就去解決。

2. 辨認(rèn)是否真的做不了

可能由于框架開發(fā)者能力的問題,在某些問題上找不到解決方案,于是有人就輕易歸結(jié)為做不了。并不是說不能承認(rèn)做不了,而是希望能在問題上多加探討,一句解決不了真太簡單了。不要那么容易說“做不了”,這個“做不了”應(yīng)該是反復(fù)驗證之后才得出的結(jié)論,而不是“你不會”。

3. 將用戶當(dāng)傻瓜

提供出去的東西,不要讓使用者做得太多,能封裝就封裝,能簡單就簡單。別讓他們繞太多彎彎,不然會有一堆疑問拋向你,用的人也很痛苦。

4. 框架技術(shù)選擇

框架如果需要接入其他技術(shù),不是用自己最擅長的技術(shù),而是大眾最常用的。例如當(dāng)Python、Go、NodeJS都可以選擇時候,是否可以考慮最為大眾化的NodeJS。

JavaScript

1. 控件本質(zhì)

我寫得最多,最深刻的一點感悟就是。所有的控件效果,抽絲剝繭,可以歸結(jié)的本質(zhì)是,對于DOM元素的位置變換、隱現(xiàn),事件的控制。所以在實現(xiàn)一個控件的時候,最應(yīng)該做的分析最本質(zhì)的現(xiàn)象,是與哪些元素相關(guān),包含什么事件,涉及什么CSS3效果。這樣,你就不會無從下手。

2. 注意重用

另外,當(dāng)你寫重復(fù)代碼的時間就要注意了,重復(fù)地方是否有重用地方,是否可以做優(yōu)化。不要就直接復(fù)制、粘貼了。JavaScript里面這種隨意復(fù)制粘貼的情況很常見,所以加強(qiáng)復(fù)用東西(組件、控件)的編寫能力挺重要。

Hybrid框架(mobile)

之前我做了一年多Hybrid框架的Web UI部分。(目前有很多很好的Hybrid框架,我以前的文章也有說過很多,想看的可以往前翻翻)。這里有兩點我想告訴Hybrid框架的開發(fā)者。

1. 如何做得像原生做的

(1).Web頁面結(jié)合原生殼的應(yīng)用,在效果上與真正的原生應(yīng)用還是存在差別。那怎么做的像原生做的,那就是用原生做。動畫效果、控件用原生實現(xiàn),那么效果才真的像。

(2)。 控件樣式就根據(jù)手機(jī)原生控件樣子做,像framework7?,F(xiàn)在很多框架都能在原生上找到影子。自己特立獨(dú)行一套效果圖出來其實沒必要,除非你的能比蘋果公司的設(shè)計師做的更好。

2. 別用單頁

這個是我添加在框架里最糟糕的東西。這個導(dǎo)致了加大開發(fā)者開發(fā)難度,效果在Android上也不盡如人意。

部署自動化

1. 能自動化的東西,就別手動做

無論是做手機(jī)應(yīng)用,還是桌面應(yīng)用,原生或混合應(yīng)用(Hybrid),又或者是前端后端,程序打包編譯都應(yīng)該實現(xiàn)自動化。

2. 把開發(fā)人員解放出來

開發(fā)一個打包平臺,將版本、可配置內(nèi)容開放出來,給部署人員去做配置打包,開發(fā)人員并不參與。

這種事利己利人,特別是在頻繁打包構(gòu)建時候。當(dāng)你花幾天做出自動化東西,會發(fā)現(xiàn)后面省下的時間何止幾天。

對學(xué)習(xí)的問題

1.學(xué)習(xí)只能靠自己

1. 公司本身不是讓你學(xué)習(xí)地方,是為了讓你創(chuàng)造價值的,只不過在創(chuàng)造價值時,順帶學(xué)習(xí)了東西,讓你可以得到實踐。 當(dāng)然可能做的事本身就沒有可學(xué)習(xí)地方,那充實自己也只能是自己,也可能學(xué)到的東西得不到實踐。

2. 前輩只會講個大概給你,誰也不想手把手的教,都想你能夠主動去學(xué)習(xí)。

2.多學(xué)習(xí)多總結(jié)

從畢業(yè)開始到現(xiàn)在,我每到有疑問的時候,都會記下來,找時間去解決它,然后會總結(jié)經(jīng)驗,寫到博客里??偨Y(jié)寫博客有個好處,就是能把經(jīng)驗教訓(xùn)進(jìn)行一次完整總結(jié),而為了博文內(nèi)容是正確的,我會查閱很多資料去歸納總結(jié),這樣總會有點成長。

還有一點是,學(xué)習(xí)東西必須有結(jié)論,不能看了很多東西,卻沒有一個定論,這樣的話,下次你想起,你依舊不知道關(guān)鍵點在哪。所以,無論結(jié)論是對還是錯,學(xué)了就做屬于自己的總結(jié),即便是錯,也錯得明白。

對錯誤的態(tài)度

1.不要怕

在早些年,遇到問題錯誤時,在沒明白詳情時,就開始慌張了,擔(dān)心自己解決不了。而現(xiàn)在是比較坦然了,對于錯誤,先理清問題到底是什么,接著判斷是不是你該解決的,這問題是否緊急,最后才是考慮怎么解決。最后,天塌了還有老大擋著。

2.承認(rèn)做不了

自己做不了,就承認(rèn)做不了,別死鴨子嘴硬,到后面出問題了再說,那就尷尬了。

對于自我

1. 直面不足

我雖然自詡是個前端工程師,但是我知道我做不成那些漂亮的頁面(設(shè)計),只是在腳本部分有些造詣。我不是個聰明的人,只是還有些小勤奮,我會花時間去弄懂。為了寫好一篇博文,會去完整的查找資料驗證。

2.成為別人的依靠

三年時間,也使得自己在某些方面是別人完成不了最后一個依靠。這時天塌了,找你了。

3.有些偏執(zhí)了

隨著我看到的東西越來越多,知道得越多,越能認(rèn)清一個東西對錯好壞,對于我認(rèn)為不對的,就不妥協(xié),一定指出來。

4.小進(jìn)步

我不是個勤奮的人,也不是個不思進(jìn)取的人。我也怕自己沒有進(jìn)步,但也不喜歡強(qiáng)迫自己,所以現(xiàn)在我都是爭取自己每天有一點不同。閑暇時間會學(xué)學(xué)弄弄小東西,寫寫博文,無聊時也會打打游戲,我希望是能遵從我本心。

人總要一些追求的,不然每天都過得差不多。我追求是每天有一點不同,每天有一點小進(jìn)步,就夠了。

總結(jié)

我一開始是做一個產(chǎn)品的后端,再后面兩年轉(zhuǎn)而做前端的(應(yīng)部門需要,在我的部門里面,不是看你會什么,而是看要做什么,如果需要新技術(shù)才能做的,那就要去學(xué),然后用起來)。三年時間過得很快,上面這些是我感覺比較重要的,希望對初入社會的程序員有些用處。

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

    關(guān)注

    8

    文章

    217

    瀏覽量

    21091
收藏 人收藏

    評論

    相關(guān)推薦

    尋求專業(yè)工程師幫助設(shè)計USB多口充電器

    嗨, 我正在開發(fā)款USB多口充電器,現(xiàn)尋求一位專業(yè)工程師或產(chǎn)品設(shè)計的幫助。希望能夠與有經(jīng)驗工程師
    發(fā)表于 08-05 12:03

    嵌入式軟件開發(fā)招聘

    本帖最后由 jf_19082533 于 2024-7-26 13:56 編輯 尋求:嵌入式軟件工程師 要求:3以上開發(fā)經(jīng)驗,音視頻領(lǐng)域應(yīng)用層開發(fā) 地址:北京市昌平區(qū) 郵箱:1017933921@qq.com 歡迎廣大感興
    發(fā)表于 07-26 13:44

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

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

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

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

    名單公布!【書籍評測活動NO.33】做了50軟件開發(fā),總結(jié)出60條經(jīng)驗教訓(xùn),每條都太扎心!

    寫這本書的目的是不讓你們走我“踩坑”的老路、步我的后塵。 一位經(jīng)驗豐富的軟件工程師在讀了本書的教訓(xùn)清單后評論說 :“每點都太扎心了,有些還不止扎過我
    發(fā)表于 05-17 14:36

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

    和通信協(xié)議,以及熟練掌握種或多種編程語言和開發(fā)工具。 主要負(fù)責(zé)的任務(wù)和領(lǐng)域 嵌入式軟件工程師工作涉及到各種任務(wù),主要包括: * 系統(tǒng)設(shè)計:包括確定系統(tǒng)功能、分配資源、優(yōu)化性能等。 * 軟件
    發(fā)表于 05-16 11:00

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

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

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

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

    【2023電子工程師大會】我和LabVIEW:工程師經(jīng)驗分享pp

    【2023電子工程師大會】我和LabVIEW:工程師經(jīng)驗分享ppt
    發(fā)表于 01-03 16:31 ?13次下載

    嵌入式軟件工程師常用的

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

    嵌入式硬件和軟件哪個好?

    方案,要求理解嵌入式系統(tǒng)架構(gòu),有定的C語言基礎(chǔ),熟悉ARM、protel設(shè)計軟件,有四層板開發(fā)經(jīng)驗。 成為優(yōu)秀的嵌入式硬件開發(fā)工程師需具備以下技能:由需求分析至總體方案、詳細(xì)設(shè)計的規(guī)
    發(fā)表于 12-05 15:17

    【熱招】蘇州,單片機(jī)工程師

    【單片機(jī)工程師】 3及以上經(jīng)驗,要求有智能產(chǎn)品經(jīng)驗。 崗位職責(zé): 1、根據(jù)MRD,與產(chǎn)品部等部門的需求,負(fù)責(zé)對新開發(fā)的產(chǎn)品進(jìn)行可行性分析,主要負(fù)責(zé)分析產(chǎn)品的
    發(fā)表于 11-28 14:02

    經(jīng)典設(shè)計經(jīng)驗筆記,電子工程師必備基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《經(jīng)典設(shè)計經(jīng)驗筆記,電子工程師必備基礎(chǔ)知識.pdf》資料免費(fèi)下載
    發(fā)表于 11-21 11:13 ?12次下載
    經(jīng)典設(shè)計<b class='flag-5'>經(jīng)驗</b>筆記,電子<b class='flag-5'>工程師</b>必備基礎(chǔ)知識

    【社區(qū)之星】彭仲維:扎實的基本功與時間的沉淀才是工程師成功的關(guān)鍵!

    班,早日成為老鳥。 社區(qū)小助手:應(yīng)屆生如何吸引招聘者的眼球?換句話說您招聘新人的時候你會看重些什么呢?應(yīng)屆生和有兩、三年左右工作經(jīng)驗人有什么側(cè)重點呢? 彭仲維老師: 應(yīng)屆生主要看態(tài)度。有工作經(jīng)驗的人
    發(fā)表于 10-13 14:15