電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 32|回復: 0
收起左側(cè)

嵌入式軟件,寫代碼之前,真的不需要進行軟件架構(gòu)設計嗎?

[復制鏈接]

455

主題

455

帖子

849

積分

二級會員

Rank: 2

積分
849
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 前天 17:50 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
我是老溫,一名熱愛學習的嵌入式工程師. Y( f# {3 S% k" o
關注我,一起變得更加優(yōu)秀!
  }4 K. W, R+ i9 }# J0 {$ R. V注:此處嵌入式軟件,特指基于Linux平臺,單片機和其他rtos不在討論范圍。
8 }8 Y* l* F/ h4 s0 X& O/ S( I! l( T筆者從事嵌入式軟件開發(fā)有6,7個年頭,bsp,驅(qū)動,應用軟件,Android hall,framework等都有涉獵,平時除了關注嵌入式行業(yè)的發(fā)展,也多少對Web,后臺服務端,分布式等方向的技術有一些關注。3 Q) r. M) Y9 N  T0 D
近期有萌生換個行業(yè)方向的想法,想做做后臺服務器相關的開發(fā),由于之前工作中并沒有這方面的實際需求,只是自己平時關注,了解了些知識,5 r7 m, q* P  R
比如:NIO,epoll,ngnix,zeromq,libevent,libuv,高并發(fā),分布式,Redis,Python,tornado,django,涉獵比較雜,都了解個皮毛,不精。; W% W) D9 l, n4 y
; {) K: K9 p4 d. P5 Q8 w' \
意外的是,嵌入式屢屢被互聯(lián)網(wǎng)行業(yè)鄙視,面試機會都寥寥無幾,此時我想,到底是什么問題呢,難道嵌入式出身的,就這么不受待見嗎?
" x- _  k, N7 e想當初,嵌入式驅(qū)動開發(fā),可是趨之若鶩的技術方向(有點夸張,不過10年前的嵌入式,可是聽著比做Java web的要牛逼些噢),問題總是有原因的,我說下自己的理解:
4 _, A: t3 y* E- \2 O打開拉勾等招聘網(wǎng)站,搜索架構(gòu)師,會出現(xiàn)各種系統(tǒng)架構(gòu)師,web架構(gòu)師,后臺服務端架構(gòu)師等等,但是唯獨很難看到嵌入式軟件架構(gòu)師。* K# A2 d& f% b8 S
嵌入式軟件不需要架構(gòu)嗎,驅(qū)動不需要架構(gòu)嗎?答案是當然需要,但為什么沒有這方面的職位?
% @& c/ Z5 `" N6 g  P我的看法是:目前國內(nèi)的嵌入式開發(fā)主要分為嵌入式底層開發(fā)和嵌入式應用開發(fā),嵌入式的底層開發(fā)一般叫做驅(qū)動開發(fā),或者bsp開發(fā),有時也有稱之為linux內(nèi)核開發(fā),名字聽著都很高大上。
/ Z8 H) D- U# n! y+ g: `Linux kernel 的架構(gòu)師是 Linus 等一眾內(nèi)核開發(fā)維護者,因為本身Linux kernel 或者操作系統(tǒng)就是一個通用的平臺,解決的是通用問題,. o2 ?* O* V4 W; X2 m+ B
Linux開源屆的大牛都已經(jīng)制定好了架構(gòu)規(guī)則,留給可發(fā)揮的地方并不多,大部分工作只需要按照規(guī)則框架填充就可以了,而且以目前國內(nèi)大部分公司的業(yè)務需求,只是在做外圍設備的集成,
1 x! x" ?. Y' p嵌入式平臺的porting,搭建裁剪,業(yè)務需求完全不會超過kernel里提供的功能范圍,導致沒有什么新的架構(gòu)需要開發(fā)人員去設計,實現(xiàn)。# _7 v4 F$ \# \6 Y/ U4 N1 f
那嵌入式bsp開發(fā)人員都在做什么:除了調(diào)試多種多樣的外設,替硬件擦屁股,就是解些穩(wěn)定性的bug了,
4 o* c9 {% e+ m( 這里對具體工作不詳細描述了,調(diào)試外設只會增加一些經(jīng)驗,增加廣度,對提高深度貢獻不大,只是按不會調(diào)試 -> 會調(diào)試 -> 調(diào)試的快這個路線發(fā)展,而解穩(wěn)定性問題確實是需要一些積累經(jīng)驗)
" s; u# }$ J) _0 ? : J* P( ^5 V1 H1 Y- ?4 M! E/ b
而嵌入式應用軟件開發(fā),一般行外人會覺得業(yè)務邏輯比較簡單,容易被很多人忽略,所以招聘方也會感覺沒有什么必要找架構(gòu)師級別的了。1 A4 C, R- T/ n2 Y) V; J
至此感覺嵌入式技術相關的行業(yè)的確不需要架構(gòu)師,被互聯(lián)網(wǎng)行業(yè)的鄙視也沒什么大驚小怪的,而對于嵌入式底層的開發(fā),有能力對kernel,驅(qū)動架構(gòu)提出架構(gòu)層優(yōu)化的,國內(nèi)的開發(fā)人員應該為數(shù)不多。
" R: }  g+ J$ |# E' o; {所以對于大部分普通人,還是不要“妄想”做 Linux kernel 的架構(gòu)師了(當然我相信國人中一定存在有這個能力的大牛),發(fā)現(xiàn)和解決一些業(yè)務上的 bug,可能會更靠譜些。
; s4 S- z: c3 ~: y7 d. J- [那么,對于嵌入式應用層開發(fā),你認為,需要進行嵌入式軟件架構(gòu)設計嗎?
  E5 B8 K- |. S# ]% l) |6 T來源:https://www.cnblogs.com/lizhensheng/p/11117388.html4 _( g, E% `4 T" a
$ Y1 o5 O0 R2 D: X0 Z# N
-END-
9 @5 E# w/ V4 H0 k" ]往期推薦:點擊圖片即可跳轉(zhuǎn)閱讀
2 C' N8 u( I. E/ `% O3 t' Q. k                                                        + G) r8 _3 ~. Q: I
                                                               
5 H% c' \" a& r. }                                                                        * i: I- ?: i+ o# y2 G& ~
                                                                               
+ A% S1 n! Z6 N8 i! p$ R% S( x9 E" V- H
7 p  ^2 [8 `3 H5 ?* Q% Z                                                                                % E' v5 S/ o9 @' u$ x4 Q$ Y
                                                                                        搞嵌入式硬件,一不小心把全公司都得罪了!
: q5 Z+ N1 p& B. L2 @4 ]. D8 m                                                       
5 Y' }5 r& e3 n9 M) A8 e6 o                                                               
) f6 g  x& V1 f% h% w                                                                        9 J! M; U9 e# c( r
                                                                                ( K5 M( {. r" r, E

8 O8 l5 ~* y& A8 B; J                                                                               
) Z: ~" S% D8 S5 a* m6 L; E                                                                                        最近都在傳,C/C++ 大限將至,面臨淘汰。
" n# D6 I+ V( O9 N- A- {4 b) N                                                                $ _! O2 k2 ^, y) g3 l, z, N" e
                                                                       
2 Y7 f. g" a5 {; ]4 }1 U% v* c                                                                               
1 i; l( f' a, }* ]: ~6 q 6 p" @0 V. p9 N; U' F( Z
                                                                               
/ ]& V+ y+ _/ T- }2 k' {                                                                                        嵌入式MCU工程師,面試常被問及的問題。5 f& z! q$ Q# u* m1 F
                                                                               
* \  }" x, B5 {" h/ t/ A& R                                                                       
1 U- ]' Z$ p; x& P9 n0 h0 i/ f  `                                                               
6 R$ v4 R+ j8 w( U  U' B3 E- L7 d                                                        我是老溫,一名熱愛學習的嵌入式工程師
. j( d* K: z9 g# T5 c; _8 @% h關注我,一起變得更加優(yōu)秀!
回復

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表