蔚来嵌入式一面面经
面了50多分钟,全程面试官很友好会给一点提示,整体过程还是比较随和,但是问项目是问的真的细节。
蔚来:(嵌入式)
1.三分钟自我介绍
2.说说关键字的作用:extern、static、const、voliate
3.说一说指针的理解,二级指针,三级指针等,对函数指针的理解等。
4.说一说指针使用的场景是什么。
5.C++中的ldambda
6.两个手撕程序问题,一个是看程序的错误,对程序进行解答
第一道是:
#include <stdlib.h>
int* test(){
int a = 10;
return &a;
}
int main()
{
int *p = test;
printf("%d\n",p);
return(0);
}
看这个程序哪里有问题,他的输出会是怎么样的为什么?
第二道是:
给你两个绝对路径地址,然后你去把file1中的内容拷贝到file2中。
7. 开始深挖项目,差不多问了30分钟,很细很多小点都没有准备好,只能说感悟很多
8. 问为什么要选择蔚来?如何看待的?
09.04 蔚来 嵌入式笔试DCA卷
C++岗挂之后,嵌入式部门捞了,复活赛,重新做一遍笔试,36分客观 + 64分编程,三道编程。
- 字符串打卡题,100.
- 实现一个链表,增删改查什么的,100.
- 两个字符串,可以把第一个字符串的任意位置的字母移动到末尾,最少移动几次使得第一个字符串和第二个字符串相等,木有思路。
做了四五十分钟直接交了,但是一小时内不让提前交卷,抽象,前面的判断也是有一些嵌入式的东西,有点忘了,72小时任意选时间做,双机位。
蔚来嵌入式(印象不好)
我投了两个志愿,一志愿是要求硕士的车载嵌入式,二志愿是本科及以上
投了十几天看有人进面了,我就给官方发邮件问了一下进度,然后第二天就给我发笔试了,比完后秒挂😅
然后昨天通知二志愿进面了,我看网上不是要重新笔试吗,怎么就直接进面了?
因为已经留下不好的印象,然后问了师兄的意见,就不打算面了
我感觉自己好摆烂啊,技术不咋滴,还挑三拣四的
蔚来嵌入式笔试 凉
双机位,限时2个小时
单选18道:考察数据结构、C/C++、操作系统、计网、编译原理、汇编
编程3道:
第一题签到题(easy),比较简单,AC
第二题类似LRU(middle),用双链表模拟,AC
第三题字符串相关(hard),一点都不会写
题目大概是:给定两个长度相等的字符串S、T,长度为[1, 1e5],均为小写字母组成,一次操作可以将字符串S中任意一个字符移动到字符串S的末尾,求将字符串S变成字符串T的最小操作次数,若不可能完成,输出-1
感谢信了。。。
蔚来嵌入式四面面经
没自我介绍,两个面试官
1.为什么投这个岗位,对蔚来这个岗位的理解
2.项目中最有成就感的一件事
3.家乡,选择武汉的考虑
4.实习中最有感触或者印象最深刻的人
5.反问
6.offer情况
7.期望薪资
蔚来嵌入式软开校招
蔚来嵌入式软开校招 1.自我介绍 2.项目介绍,背景/主要工作/难点等等 3.项目赛用的多线程是什么? 4. UART的线据帧格式 5. IIC的交互协议 6.常用的总线 7.进程间是如何通信的? 8.共享内存是如何使用的?库函数有哪些? 9. RTOS中断如何处理的? 10.c++的多态是什么? 11.static作用,局部static和全局static区别 12. new和malloc的区别 13. 智能指针是什么,智能和指针有哪些 14. TCP和UDP的区别 15. TCP三次握手 16. Linux虚拟内存 17.算法题 18. 对蔚来的了解 19. 对智能座舱的了解 20.反问
蔚来嵌入式一面
- HR介绍业务(不回答问题)
负责SOC(高通平台)的linux和安卓下的驱动开发,基础软件、驱动、集成等等 - 自我介绍 - 项目和技术栈
- 项目是落地项目还是初步研究?项目开发的主要功能是什么?
- 数据是怎么传出?用蓝牙?UART跟蓝牙模块通讯?
- 项目中FreeRTOS分了几个task?之间的协作是怎么样的?
- 项目中遇到什么困难的问题吗?
- IIC传输时间有评估吗?对系统实时性的影响?
- 蓝牙的mesh组网了解吗?
- linux开发知道多少?什么程度?
- uboot移植是做的什么样的移植?做了什么裁剪?
- linux开发板,启动的流程和uboot的作用?
- 各种总线有了解吗?关于他们之间的一些差异啊?UART,IIC,USB2.0,网卡
- 后面是像做哪些方面的工作呢?SOC还是linux?大部分都是Linux的工作
- 关于内存管理,包括Freertos的内核和数据的内存管理,你了解哪些?task的堆和栈,如何使用?
- 写代码 - 链表翻转
- 反问:
面试流程,四轮面试,最后一面hr面
初次面试准备不足,都回答地很浅,bg是soc,可能是主要挂掉的原因
蔚来 嵌入式软件实习面经
一面:全程20分钟
- 讲讲遇到过的最难解决的一次Debug经历
- 如果产品上线,用户遇到bug,怎么定位
- 讲讲其中一个项目怎么做的,具体到软件编写方面
- 有了解过我们的业务吗,接触过什么相关的
- C语言:说出3个使用switch时应注意的事项
- 使用过哪几款芯片
无手撕
二面:HR面
很难评价,二面不知道在干什么
蔚来中间件软件开发 hr面
8.12三面,8.18通知8.19面试,25min
并不是闲聊,hr面还是考核,留面评到后续统一复盘
-
自我介绍
-
对于不同C++开发工作的意愿优先级,包括游戏开发,嵌入式开发,服务器开发。同时有多个offer可挑的情况下,如何做选择(回答的是地点>待遇>内容)
-
学术经历、实习经历,说说其中认为的闪光点
-
对于工作的期望
反问,还补充了自己选开发而不是算法的原因,强调了入职意愿
漫长的流程,不能是kpi了吧,佛祖保佑🙏球球了给孩子一个机会吧
蔚来提前批车联网嵌入式软件一面
#软件开发笔面经#
30min。道心破碎,没准备,也不想去,有点摆烂的面了。
上来两道算法题,一道leetcode316,有点难,做不来。第二道降低难度,leetcode最小栈,秒了。
都是给利口链接,共享屏幕写的。
问做项目中遇到的问题是什么,怎么解决的。举例子讲一讲。随便说了说结束了。
下午就人才库了。
试真题 | 蔚来嵌入式一二三面面经
文章目录
一面
static作用,局部static和全局static区别
在C或C++编程语言中,static关键字有几个不同的作用,具体取决于它被使用的环境。以下是static的一些常见用法和它们的区别:
局部静态变量:
当static关键字用于一个局部变量(通常是函数内的变量),它改变了该变量的存储期为整个程序的生命周期,而不是函数调用的局部作用域。这意味着变量在函数调用结束后不会消失,其值会保留到下一次函数调用。
局部静态变量在首次创建时会被初始化,并且只会初始化一次。
全局静态变量:
全局静态变量是指在函数外部定义的静态变量。这种变量的生命周期同样是整个程序的运行期,但与局部静态变量不同,全局静态变量的作用域仅限于定义它的文件内部。也就是说,它们在其他文件中是不可见的,具有内部链接。
这可以用于模块化编程,防止不同模块间的全局变量名冲突。
静态函数:
当static关键字用于函数定义时,它限制了该函数的作用域,使其只能在定义它的文件内部被调用。这同样有助于避免不同文件中的函数名冲突,并且有助于模块化设计。
总结区别:
作用域:局部静态变量在函数内部,全局静态变量在文件内部。
生命周期:两者都是静态存储期,即整个程序运行期间。
初始化:局部静态变量和全局静态变量都只会被初始化一次。
可见性:局部静态变量仅在函数内部可见,全局静态变量仅在定义它的文件内部可见。
面试官可能会询问这个问题来评估你对C/C++中变量和函数作用域、生命周期以及链接的理解。
TCP三次握手
通信协议 | 三次握手、七次握手、四次挥手
Linux虚拟内存
底软驱动 | Linux虚拟内存管理,MMU机制,原来如此
底软驱动 | Linux虚拟内存
想象一下,我们的计算机内存(RAM)就像是一个书架,而书架上的空间是有限的。但是,你有很多书(程序和数据)需要存放。虚拟内存就像是你家里的其他空间,比如地板、桌子或者墙壁,你可以把书放在这些地方,然后在需要的时候再把它们放回书架上。
在Linux系统中,虚拟内存是这样工作的:
页表:这就像是一个目录,告诉你每本书(数据)应该放在哪里。每个程序都有自己的目录,这样它们就不会混淆。
分页:操作系统把内存分成很多小块,每一块就像是一个小型书架,可以单独管理。
交换空间:当书架上没有足够的空间时,你可以把一些不常用的书放到其他地方,比如地下室(磁盘空间)。这就是交换空间。
需求分页:只有在你需要阅读某本书时,操作系统才会把它从地下室拿上来。这样可以节省书架上的空间。
写时复制:如果有两本书看起来一样,但是你知道其中一本很快就会被修改,操作系统会等到修改发生时才复制这本书,这样可以节省空间。
内存映射:这就像是把书架直接连接到你的图书馆,这样你就可以直接从图书馆读取书籍,而不需要把它们搬到书架上。
透明大页:有时候,一本书很大,需要占用很多小型书架。操作系统可以使用更大的书架来存放这些大书,这样可以减少书架的数量。
内存回收:如果书架上的空间不够了,操作系统会检查哪些书不常用,然后把它们放回地下室,为其他书腾出空间。
内核同页合并:如果发现两本书的内容是一样的,操作系统会把它们合并成一本书,这样就可以节省书架上的空间。
指针引用区别
区别:
1.指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元,即指针是一个实体;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。
2.有const指针,但是没有const引用。
3.指针可以有多级,但是引用只能是一级(int** p;合法,而int&& a;不合法)。
4.指针的值可以为空,但是引用的值不可以,并且引用在定义的时候必须初始化。
5.指针的值在初始化后可以改变,即指向其它的存储单元,而引用在初始化后就不会再改变了,从一而终。
6.sizeof引用得到的是所指向的变量(对象)的大小,而sizeof指针得到的是指针本身的大小。
7.指针和引用的自增++运算意义不一样。
相同点:
1.都可以对变量就行修改。
2.都是地址的概念,指针指向一块内存,它的内容是所指内存的地址,引用是某块内存的别名。
何时使用:
1.当考虑到存在不指向任何对象的可能,这时候应该使用指针。
2.当需要在能够在不同的时刻指向不同的对象,这个时候使用指针。如果总是指向一个对象并且一旦指向一个对象后就不会改变指向,那么应该使用引用。
3.当重载某个操作符时,应该使用引用。
C++内存分区
这个可以好好看看,大厂真的爱考。
底软驱动 | C++内存相关
new/delete和malloc/free区别
new/delete和malloc/free区别:动态内存管理
职业规划
面对嵌入式公众面试中关于职业规划的问题,一个全面而积极的回答可以展现你的目标导向性、对行业的热情以及对个人成长的规划。以下是一个参考回答,你可以根据自己的实际情况进行调整:
面试官您好,非常感谢有这个机会分享我的职业规划。在我看来,嵌入式系统作为连接物理世界与数字世界的桥梁,正日益成为推动技术创新和产业升级的关键力量。因此,我的职业规划紧密围绕着在嵌入式领域深耕细作,不断提升自己的专业技能与项目经验,力求成为该领域的专家型人才。
短期目标(1-3年):
技术深化:首先,我计划通过深入学习嵌入式系统的基础理论,包括微控制器架构、嵌入式操作系统(如RTOS)、硬件接口与通信协议等,建立起坚实的技术基础。同时,积极参与实际项目,将理论知识应用于实践,通过解决具体问题来提升自己的问题分析与解决能力。
技能拓展:除了技术深度,我也将注重技能广度的拓展,比如学习并掌握一些前沿技术,如物联网(IoT)、人工智能在嵌入式系统中的应用等,以适应行业发展的需求。
建立网络:积极参与行业会议、技术论坛及开源项目,与同行交流学习,建立广泛的人脉网络,为未来的职业发展铺路。
中期目标(3-5年):
专业定位:在积累了一定经验后,我希望能够找到自己最感兴趣且擅长的细分领域,比如汽车电子、医疗设备、智能家居等,进行更深入的研究和实践,逐步成为该领域的专家。
项目管理:同时,我也期望能够承担更多项目管理的职责,学习并掌握项目管理的知识与方法,提升团队协作与项目管理能力,带领团队完成更具挑战性的项目。
长期目标(5年以上):
领导与影响:在职业生涯的后期,我希望能有机会担任技术负责人或团队领导的角色,不仅要在技术上持续引领创新,还要在团队建设和人才培养方面发挥重要作用,为公司乃至整个行业培养更多优秀的嵌入式工程师。
持续学习:技术日新月异,我将始终保持对新技术、新趋势的敏感度,通过不断学习来保持自己的竞争力,为行业的发展贡献自己的力量。
总之,我的职业规划是围绕嵌入式领域,通过不断学习与实践,逐步成长为一名技术精湛、视野开阔、具有领导力的专业人才。我相信,通过不懈的努力和持续的学习,我能够实现这些目标,并在嵌入式领域创造属于自己的价值。
为什么选择蔚来
选择来蔚来汽车做嵌入式工程师,可能基于多个方面的考虑,这些考虑因素涵盖了个人职业发展、技术兴趣、行业前景、企业文化以及工作内容的吸引力等。以下是一些可能的原因:
行业前景广阔:随着新能源汽车和智能网联汽车技术的快速发展,汽车行业正经历着前所未有的变革。蔚来汽车作为新能源汽车领域的领军企业之一,具有广阔的市场前景和无限的发展潜力。选择在这样的公司工作,能够参与到汽车行业的未来发展中,个人职业成长也将更加迅速。
技术领先与创新:蔚来汽车在新能源汽车、自动驾驶、智能互联等领域投入了大量研发资源,并取得了一系列重要成果。作为嵌入式工程师,你将有机会接触到最前沿的技术和解决方案,参与到创新产品的研发过程中,不断提升自己的技术水平和专业能力。
团队与企业文化:蔚来汽车注重团队建设和企业文化的营造,鼓励员工创新、协作和分享。在这样的工作环境中,你将能够与一群志同道合的伙伴共同奋斗,享受到团队合作的乐趣和成就感。同时,蔚来汽车也非常注重员工的个人发展和成长,提供丰富的培训资源和晋升机会,帮助你实现职业目标。
蔚来嵌入式岗三面面经
我是24应届毕业生,去面试了蔚来的嵌入式岗,总体面试感觉不错,说实话面试难度挺大的,所以没通过。面试一共是有三面:
一面:常规八股文,linux、kernel问的比较多些,还有一道算法题,建议提前复习好相关专业知识
二面:偏向于场景,给了两个mcu的场景进行提问,最后是一道算法题。
三面:闲聊,和HR、主管聊聊对公司的看法和发展,个人发展之类的,这个的话我觉得需要提前做好自身规划,把自己想法和计划流畅说出来,不要磕磕巴巴。
三面难度挺大的,没通过也是在意料之中,之后继续努力吧!