电子产业一站式赋能平台

PCB联盟网

搜索
查看: 350|回复: 0
收起左侧

嵌入式软件,写代码之前,真的不需要进行软件架构设计吗?

[复制链接]

568

主题

568

帖子

4219

积分

四级会员

Rank: 4

积分
4219
发表于 2024-11-13 17:50:00 | 显示全部楼层 |阅读模式
我是老温,一名热爱学习的嵌入式工程师
' X$ R; ^2 O) `% e9 ~. q关注我,一起变得更加优秀!/ j9 E7 L7 c7 Z1 W7 V: n
注:此处嵌入式软件,特指基于Linux平台,单片机和其他rtos不在讨论范围。( T* l3 W+ b& G( i4 ~: N
笔者从事嵌入式软件开发有6,7个年头,bsp,驱动,应用软件,Android hall,framework等都有涉猎,平时除了关注嵌入式行业的发展,也多少对Web,后台服务端,分布式等方向的技术有一些关注。: K# E) Z! {0 j  N- {1 M0 `
近期有萌生换个行业方向的想法,想做做后台服务器相关的开发,由于之前工作中并没有这方面的实际需求,只是自己平时关注,了解了些知识,0 h0 Z; T/ q9 \8 \
比如:NIO,epoll,ngnix,zeromq,libevent,libuv,高并发,分布式,Redis,Python,tornado,django,涉猎比较杂,都了解个皮毛,不精。
# e; p2 O6 F4 Z# B

hxgzo3ux5qt640134080124.jpg

hxgzo3ux5qt640134080124.jpg
3 L! D( }+ |, y4 G) E2 p/ y, c
意外的是,嵌入式屡屡被互联网行业鄙视,面试机会都寥寥无几,此时我想,到底是什么问题呢,难道嵌入式出身的,就这么不受待见吗?/ A+ J/ Q4 L7 t! e8 a1 O) x/ {
想当初,嵌入式驱动开发,可是趋之若鹜的技术方向(有点夸张,不过10年前的嵌入式,可是听着比做Java web的要牛逼些噢),问题总是有原因的,我说下自己的理解:
" a- @( g' v' C# W6 [/ t  C7 _打开拉勾等招聘网站,搜索架构师,会出现各种系统架构师,web架构师,后台服务端架构师等等,但是唯独很难看到嵌入式软件架构师。
: R3 D# d: P& Q) U& e, V. G: @嵌入式软件不需要架构吗,驱动不需要架构吗?答案是当然需要,但为什么没有这方面的职位?! B* \9 O& \6 a- i/ X1 G5 i$ N
我的看法是:目前国内的嵌入式开发主要分为嵌入式底层开发和嵌入式应用开发,嵌入式的底层开发一般叫做驱动开发,或者bsp开发,有时也有称之为linux内核开发,名字听着都很高大上。* ]8 B9 Z$ E1 o
Linux kernel 的架构师是 Linus 等一众内核开发维护者,因为本身Linux kernel 或者操作系统就是一个通用的平台,解决的是通用问题,
0 i; k+ q2 O5 r5 O7 pLinux开源届的大牛都已经制定好了架构规则,留给可发挥的地方并不多,大部分工作只需要按照规则框架填充就可以了,而且以目前国内大部分公司的业务需求,只是在做外围设备的集成,# b$ ~$ y. Q( I9 m
嵌入式平台的porting,搭建裁剪,业务需求完全不会超过kernel里提供的功能范围,导致没有什么新的架构需要开发人员去设计,实现。+ r$ m& I1 `; b( Y: L7 a
那嵌入式bsp开发人员都在做什么:除了调试多种多样的外设,替硬件擦屁股,就是解些稳定性的bug了,* [( i- ?) a& ^% x; s8 S
( 这里对具体工作不详细描述了,调试外设只会增加一些经验,增加广度,对提高深度贡献不大,只是按不会调试 -> 会调试 -> 调试的快这个路线发展,而解稳定性问题确实是需要一些积累经验)9 K$ s4 H9 b* c

n3a1uh02a14640134080224.jpg

n3a1uh02a14640134080224.jpg
$ P- m6 I6 W# |9 p4 ?
而嵌入式应用软件开发,一般行外人会觉得业务逻辑比较简单,容易被很多人忽略,所以招聘方也会感觉没有什么必要找架构师级别的了。, K3 ]& [) M( F1 j$ i
至此感觉嵌入式技术相关的行业的确不需要架构师,被互联网行业的鄙视也没什么大惊小怪的,而对于嵌入式底层的开发,有能力对kernel,驱动架构提出架构层优化的,国内的开发人员应该为数不多。8 K% A2 p( a% C% {
所以对于大部分普通人,还是不要“妄想”做 Linux kernel 的架构师了(当然我相信国人中一定存在有这个能力的大牛),发现和解决一些业务上的 bug,可能会更靠谱些。& M8 H( I/ V% [2 A2 I5 P
那么,对于嵌入式应用层开发,你认为,需要进行嵌入式软件架构设计吗?
3 H4 a  P5 `: ]' E+ g$ O来源:https://www.cnblogs.com/lizhensheng/p/11117388.html
3 B/ i( N3 Q* C4 t! F$ ?: Q

4uiks04wyi1640134080325.png

4uiks04wyi1640134080325.png
5 E" ~0 [3 M  a( W8 B% o5 S
-END-
- q/ c% w* D! X- X: w& E往期推荐:点击图片即可跳转阅读" d, M6 f1 B, D
                                                       
5 {  c3 c! \: F1 l% x  ^                                                               
5 Q" P  t3 h- N! K2 M8 j+ K                                                                        8 t: T7 W& p7 `# O4 G
                                                                                . X$ ?' m4 }9 j1 T1 X

wonfxkxgfmk640134080425.jpg

wonfxkxgfmk640134080425.jpg
% \( B+ p; C- ]7 m* Y
                                                                               
8 w+ B: r$ ?9 c3 S                                                                                        搞嵌入式硬件,一不小心把全公司都得罪了!
7 h* R8 W" F; Q) l                                                        : Q" e1 a& e* Z, b8 t6 q# F2 S
                                                               
" R$ S9 A; R* ^                                                                        8 ]$ @+ u/ |2 k$ Z( Y
                                                                               
( m/ }: r- k+ \1 I

aui2bsgdmki640134080525.jpg

aui2bsgdmki640134080525.jpg
+ @6 O4 \# W: Z
                                                                               
- ?% G# W4 |6 k& ]- W                                                                                        最近都在传,C/C++ 大限将至,面临淘汰。
. q& p* I2 A9 v7 r6 G' r                                                                7 f! o0 B) i4 B* ?
                                                                        , o1 R- K9 F1 s# @& h8 l
                                                                                , s5 t* E; h2 R0 }( N: u* z1 u5 F

vz52nhygfwv640134080625.jpg

vz52nhygfwv640134080625.jpg
& a$ j8 F- t; k& m
                                                                                9 B  B, c0 {/ t1 }2 U
                                                                                        嵌入式MCU工程师,面试常被问及的问题。( `1 U" y* i2 V$ ~
                                                                               
; I0 E2 F* ^+ X2 @                                                                        * \9 F6 T; X6 G- ?
                                                                3 f" ~" |: f; B  j
                                                        我是老温,一名热爱学习的嵌入式工程师+ o& K- x; a# r
关注我,一起变得更加优秀!
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表