25 四非嵌入式秋招心酸历程

一、感悟

春招已经告一段落了,写了一些总结,记录了一下秋招期间的每个日日夜夜,总结了每次笔试和面试的经历以及个人的总结,希望能够帮助之后找工作的小伙伴们。

背景:双非一本本科

大三暑假实习:拿到了中电科旗的offer,最后去珠海实习了两个月,体验了上市国企的日常工作及生活,对接下来的秋招有了更加明确的方向。

二、学习经历

大一下学期结束后的那个暑假,加入了嵌入式实验室,一待就是三年。从刚开始的玩STM32单片机,学习Linux基础知识;到之后开始接触图像处理相关知识,学习了计算机视觉OpenCV,ResNet、YOLO系列网络模型,学习了Pytorch、Tensorflow网络框架

大二上学期参与了一个喷码机上位机软件开发的校企合作项目,通过这个项目学习了Python基础语法、PyQt基本控件及界面布局、PLC通信基础知识。因为我们的项目是要基于全英文的使用手册进行二次开发,所以也学会了如何通过阅读英文手册进行项目的开发

大二下学期负责中国大学生工程训练大赛智能垃圾分类的视觉部分(自己没有参赛报名,但是为这个比赛付出了大半年的心血)

大三上学期主要是转向整机开发了,所以学习了硬件原理基础知识、原理图的绘制、PCB板的绘制、ROS机器人操作系统,自己制作了一台基于ROS的智能小车(基于万向轮、主控为Arduino、上层为Jetson Nano),后面参加了RoboCup智能车比赛并获得了国家一等奖

大三下学期协助导师开展Linux驱动教学,制定了uboot移植、Linux内核移植、根文件系统搭建、LED驱动开发实验手册,同时学习了FreeRTOS实时操作系统,在实训时完成了一个基于FreeRTOS的智能预警项目。在此期间和华南理工合作一个喷头驱动项目,学习了FPGA的基本使用。

然后就开始投递秋招,秋招的过程一直看大佬的面经,嵌入式面经虽然不是那么全但是整体来讲问到的还挺多。

秋招期间总共投递了50多家企业,每天都是早上9点左右起床,到实验室准备笔试面试一直到晚上10点左右回宿舍,持续了一个月左右,虽然很累但是很值得!

全部评论

相关推荐

1.简历自我介绍2.技术面(面试官全程1h问的都是实操经验,没有八股文,问题比较开放-因人而异)●离职原因?为何没有骑驴找马?(行业低迷下寻求个人进一步发展+家人生病的时机)●iic协议时序是怎么样的?是如何启动的,如何结束,如何确定ACK和NACK?(scl高时,sda由高变低; scl高时 sda由低变高;第九个时钟-拉低sda即为ACK,拉高则为NACK)●是如何仲裁的?(比如多个从机的仲裁)--这个我说不出来--慌的一批!!(现在想是不是线与逻辑?)●在linux操作系统和MCU上,如何查找内存故障相关的问题?(MCU讲了如何JLINK调试工具+寄存器打印和保存+栈回溯,LINUX上讲了如何gdb+coredump,后面也提及了strace工具)(他问了gdb如何去执行和调试coredump和使用过程?我记不起来了...顿时感觉药丸了)●用过哪些操作系统(UCOS,LINUX,NUTTX,RTT),在实时操作系统上用过或者做过哪些工具?(我说到了单片机上用示波器去拉低拉高io查看耗时情况,然后自己对应的位置设立flag查看调用情况,第三方工具没用过---感觉不是对方想听到的答案)●阅读过内核哪一部分的代码?(我说我-以前看内核视频的适合,每个部分都看过源码,现在有点久远了)●如何解决程序瓶颈问题?(我讲到了top,free指令,还有perf工具)●如何解决内存溢出类似的内存问题(我提到了人工检查--释放和申请成对,mcu利用调试工具和栈回溯,然后Linux上的valgrind工具);●描述下最有印象的一次项目经历?(讲了一下给别人解决bug的一次项目经历)●自己感觉比较擅长或希望哪一个方向?(我说-按照公司方向走,反说公司开发得看看自己怎么选择?我mcu或者linux方向的应用开发皆可-如果两者还有选择的话,我选linux方向-希望在这方面更加深入成长--后来感觉给自己埋了一个雷)说一下内核那几个子系统--内存管理,进程管理,网络管理,文件系统,进程间通信,驱动等对哪个比较熟悉?(我选了网络--因为开发的时候有用到了●有无linux开机优化的经验-讲一讲?(我说有过将47s开机启动完善到20内的经历:说了几个比如ssh的优化,rcS内复位的优化,将很多内核操作后置的行为-●比如加载文件系统、ko模块,启动UI的优化等等)●如何优化开机启动-比如给任务优化到5s--给思路!(属实没有研究过内核启动的必要条件,说不太出来---面试官安慰说-没关系。)●网络传输如果发生丢帧或者延时和卡顿,怎么办--给解决思路?(我提及了这个接入交换机或者路由器-通过抓包工具来查,提及了两个工具wireshark和tcpdump,来分析到底是网络风暴/拥塞,发送方发出数据帧慢了还是错了,还是接收方收的慢还是收错了还是他应答的慢了,来定位)●网络的可调参数有哪些?(这真的到了盲区了,我一开始说的是TCP的socket,bind,listen函数里面的参数,他说不是这个,我有点懵,后来反应了--应该是TCP流程的那一套参数:比如建立连接的参数-SYN Retry(SYN 重传次数)、SYN Timeout(SYN 超时时间)数据传输参数:TCP Window Size(TCP 窗口大小)、Max Segment Size(MSS,最大段大小)、TCP Congestion Control Algorithm(TCP 拥塞控制算法) 连接关闭参数:FIN Wait Time(FIN 等待时间)、Time - Wait State Duration(TIME - WAIT 状态持续时间)、Keepalive Time(保活时间) 只有这个收发缓存是我用过的:Receive Buffer Size(接收缓冲区大小) 和 Send Buffer Size(发送缓冲区大小) 我后来AI查的,但是没想到。。。药丸的感觉越来越重)●最后问了下:MTU的含义?即最大传输单元(Maximum Transmission Unit)●●反问阶段:我想问下这个岗位的定位是怎么样的?说是给其他团队兜底的存在!其他团队解决不了的他们来解决!所以不需要懂得太广,要懂得深刻!沉默了--没其他问题了!上述应该是80%+的问题,可能有个别遗漏,全程一个小时,语速和节奏中等偏快!●--面完总体感觉:我回答的不够深入,感觉不够完美,难过!--
查看19道真题和解析
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务