##引言
版上北美科技业文章多为Software的相关职缺跟心得
Firmware Embedded相关文章跟职缺很少
想说来贡献一下我这半年来面试的心得 抛砖引玉一下
本文也适合一些在台湾IC design,OEM,ODM背景的工程师
因为有些公司有签NDA,我不会在公司段落中描述面试的实际问题
我会把所有面试问题集中在下一段
FW engineer 多半不用刷leetcode,我本身也没有刷
常考题我会列在下方,依照类别分类然后再依照出现频率排序
##常考题
1.Linked List - 最常考,因为有许多follow up,而且可以同时考pointer, malloc,
struct等。 我自己当面试官的时候也常出这个题,因为可以随着面试者的Level问不同
follow up。
a.基本:print, push, add, pop, delete
b.应用:reverse, sort, merge多个list, 找出是否有环
2.Bit Operation - 这算做底层跟高阶语言最大差异之一,我面试别人也多半会出一小题
这个
a.基本:set, clear, togger, mask, shift, AND, OR, XOR
b.应用:有几个bit为1, reverse, bit swap, Endianess Swap
3.C语言关键字跟观念 - static(注意用在变量跟函式的差别), extern, volatile,
const, union, enum, struct(注意里面变量顺序会影响实际size这点), malloc, free,
function pointer, sizeof(这有蛮多易错小细节),
call back function, pointer to pointer, call by reference\value(注意C\C++差
异), atomic
4.OS概念题 - multi-thread, mutex, semaphore, interrupt, ISR,
priority inversion, deadlock, shared memory, memory leak, memory alignment
5.嵌入式概念题 - I2C, SPI, UART, JTAG 特色及比较, GPIO
6.应用题 - 这边的题目可能看公司跟看职缺需求,不一定比较难,只是可能需要相关
domain knowhow或是思考要转一下
a.字串搜寻, 比较, 复制
b.影像\声音 讯号 filter 处理,譬如用一个3*3个filter跑过整张图片来模糊化\锐利
化\去噪声。或是去掉特定频率声音
c.Circular Buffer Queue - 基本题不难,但follow up多半是要考虑到 producer跟
consumer为不同thread,结合multi-thread, mutex等观念
d.封包处理:多半是模拟蓝芽I2C UART之类的题目,譬如给定一个字串 "开始字符 指令
长度 参数*n CRC 结束字符",可以当成字串处理题目来做,
但要考虑怎样设计好API跟容错检查。
e. 控制系统:譬如给定三个API分别是加温\降温\现在温度,要你写个可以恒温的系统,
设计概念是fuzzy甚至PID system
f.可以去搜寻API设计概念的影片,Google Facebook都有相关影片在youtube上
g.atoi, itoa, state machine
h.QuickSort, MergeSort, Binary Search,这边的题目最好会用Array也会用
LinkedList解
i.memcpy 及优化
j.Array中找出相加(或相乘)最大,等于特定值的组合
k.矩阵内积
l.floating point 运算,实做
7.behavioral questions这部分答案很个人化,而且也不同公司可能期待不同答案,譬如
有些公司希望你对未知问题尽可能做大胆的推测,有些公司则是希望你"知之为知之,不
知为不知"。 常问的多半包含:
a.你有那些失败经验\code出大bug,怎样解决
b.跟组员\主管意见不合怎解决
c.举个例子证明你团队合作能力
d.客户dealline突然提前怎办
e.怎处理压力\决策\领导
f.接到新专案会怎处理
g.组里有人一直拖后腿怎处理
##各公司面试心得
以下多半是这半年疫情期间的面试心得,全部都是视讯,我底下提到的多半是针对最后一
轮,onsite轮的面试。
公司排序依照我印象深刻跟面试特殊程度,跟难易或时间无关。
部分公司有NDA,所以不会提供各公司面试题目细节,请参考上方一般性FW题库。
以下为均为我个人经验,许多公司可能各组差异极大。
Startup因为可能面试人数较少,虽然他们应该不会看PTT,但我觉得针对性太强,所以暂
不写出名字。
#Blue Origin
Jeff Bezos的火箭公司,因为工作性质不接受H1B,OPT(但可能看组)。
因此面试全程都是美国人,比较特别的是要写个小文章讨论你对宇宙探险的看法,我写了
大概一张A4,但好像他们期待是接近小论文的形式,后来HR跟我讲之后发现这占面试比例
不小的部分。
除了写文章以外,还有一小时个人简报,全组会听你介绍过去做过什么事情,一小时后再
个别coding面试,全程大概6小时。
#Apple
影像相关的组,因此影像相关问题比较多,整体题目不难,但会看重API设计以及testing
,每个面试官多半会问些少量behavioral questions,少量设计问题。
面试全程7小时,我请HR切成两个下午。
#Qualcomm
面试过程全部印度人,题目中等但英听大考验,我多半会打在online coding接口上跟对
方double check 他刚刚说过的重点。约5小时。
#Facebook
ARVR相关组的音讯职缺,感觉他们喜欢问比较难的然后再逐步放提示,分析题目跟问到重
点会是面试关键,有单独几轮是问behavioral questions跟设计问题。全程约6小时。
#Oracle
征FW专长但是问了不少SW算法,约5小时。
#Nintendo
音讯职缺,大部分题目不难但bar riser那关突然变超难,约4.5小时。
#Colgate
高露洁,对!就是牙膏那个,电动牙刷相关职缺,视讯面试但对面没人,录影之后对方回
去看,我觉得是很糟糕的面试经验,缺乏互动。
#Startup-自驾车-Z
蛮看重系统设计的感觉,题目定义很多细节很完整。
#Garmin
影像问题占比较多,一般FW问题次之,全部大概5小时。
#Samsung
题目都在上一段基本题库中,但有几个follow up是有点挑战性,约5小时。
#BlueBerry
回家作业可能要花一下午,要装VM, 他们的系统, 某题库, 然后再写指定需求。我看到就
懒的写了...
#Startup-智慧手环H
比较特别的是他们需要firwmare加ML人才,切成许多小轮,2+2小时考firmware,1+1小时
跟founder\CEO聊天,2小时考ML,ML考试时可以Google、可以用任何常见API。
#Startup-自驾车-I
影像相关问题很多,感觉要找耐加班的。
#Startup-自驾车-B
影像相关问题很多,还有一些ML问题。
#Startup-IoT-S
Coding 1小时,跟founder CEO CTO Team lead聊天4小时。
#Tesla
题目有许多底层细节,有些题目解答不是唯一,感觉是看会用怎样的设计来解题。
#SpaceX, Boring company
钢铁人旗下公司一起写,基本题不难但感觉会期待你架构严谨且bug free。然后设计类题
就是pseudo code加互相讨论,还有部分天马行空创意题。
#Masimo
医疗器材大厂,题目范围广,大概上面题库区的都有各问到一些。
有一半的面试官是专业且认真,热心跟我介绍不同产品跟组里未来方向
但其中几个面试官边面试边吃饭就算了,还有对着视讯剃牙的 =_= ,全程大概6小时。
#Startup-自驾车-R
题目偏算法,以leetcode标准来看不难,但以C\C++来写略有挑战性。
#Startup-助听器-W
音讯处理问题为主,题目对于没做过音讯的颇难,但给的提示算详细,仔细审题之后不难
。
#Marvell
综合式的firmware题,好像比较注重这code执行效率。大概5小时。
#Microsoft
behavioral questions占比很大,coding题目不难,但比较重视code的scalability
还有设计。
#Amazon
有几次经验不错,有几次极糟,遇到面试官放鸟超过一次,面试官非Firmware相关,甚至
直接跟我说:他们是谁有空就来面试,不是看专长跟领域。
感觉面试官都会期待特定标准解答。
#Verifone
Hiring team人都不错,但HR team外包混乱到不行,有5个人在南亚的HR跟我讲4个不同的
onsite时间。
#Google旗下生医新创
Firmware相关题目不难,但是问了很多生医\生技领域学术问题。
#Startup-机器人-E
简报+多轮聊天,期待是从HW FW SW都有涉略的人,题目也会均涵盖一点。
#Intel
五轮,每轮都是大约20分钟coding,20分钟讨论改良前面coding设计,20分钟
behavioral questions。
##结语
疫情期间都是远端面试,因此比较好安排更多onsite,但明显可以感觉到LinkedIn上面职
缺大幅减少,甚至有些拿到口头offer后跟我说hiring freeze了。
再加上有些公司也裁员了,竞争对手也变多了。
我这半年大概面试约50间公司,约2X间到最后一轮,拿到8个offer,加州占4个其他分散
各州。
但这文章希望可以抛砖引玉,有些公司我没写太多心得,但可以给不知道投哪些公司的作
为参考,也可以知道有哪些还在征人。
文章中有不足或疏漏的部分欢迎各位补充!
希望各位求职顺利!