嵌入式Linux校招,要学到什么程度,才可以跟面试官对线?(学习路线/校招经验/学习资源/项目推荐/笔试面试八股文)

今天在知乎看到这样一个话题:

想要知道Linux校招需要学到什么程度,我们还是得从招聘岗位要求上来入手

下面一共找了12个校招岗位,从中分析得出最后的【校招学习路线】

Linux(C/C++应用开发)校招学习路径:

  1. 熟悉shell命令,熟悉对Linux的基本命令操作以及shell脚本编写
  2. 熟悉Linux平台网络编程、熟悉常见的网络协议
  3. 熟悉Linux下的多进程、多线程编程

  1. 熟悉Linux平台C++或者C语言开发
  2. 扎实的计算机专业基础知识,包括操作系统数据结构计算机网络

  1. 熟悉C/C++语言,熟悉Windows或Linux平台开发
  2. 成绩优异,有大赛获奖经历优先

  1. 良好的C++语言基础
  2. 熟悉TCP/IP协议串口通信http等协议原理
  3. 具有Socket、websocket、多线程、异步处理等相关开发经验
  4. 熟练Linux操作命令

  1. 熟悉SO9000/CMMI规范,熟悉软件工程原理,具有软件质量意识
  2. 熟悉TCP/IP原理,有网络编程经验
  3. 熟悉Linux环境下C/C++语言编程,有Linux内核编程经验

  1. 熟练掌握C/C++编程
  2. 熟悉Linux开发流程,熟悉shell/python脚本编写
  3. 熟悉进程间通信开发,sharememory,socket等,有C/S实际开发经验者优先

岗位需求总结

除了应用开发的学习路线外,最重要的当然就是C/C++方面知识的学习,对C/C++感兴趣的同学可以试试这个方向

  • C/C++语言

1. 熟练掌握C/C++的基本语法、数据类型、运算符、控制结构等

2. 理解指针、内存管理、文件操作等高级特性

3. 能够编写C/C++程序,并理解面向对象编程的基本概念

4. 掌握Linux环境下的C/C++开发

  • Linux基础
  1. 熟悉Linux操作系统的基本使用,包括命令行操作、文件管理等
  2. 理解Linux的进程、线程、文件系统等基本概念,了解Linux下的多进程、多线程编程
  3. 能够编写简单的Shell脚本,进行基本的系统管理和自动化操作
  • 计算机网络基础
  1. 了解常见网络协议,理解TCP/IP协议、网络协议栈等基本工作原理
  2. 熟悉网络编程,掌握Socket编程,熟悉网络通信的基本原理和实现方式

嵌入式Linux(应用开发方向)校招学习路线

岗位需求总结

● Linux基础

  1. 熟悉Linux操作系统的基本使用,包括命令行操作、文件管理等
  2. 熟练使用makefile, gcc, gdb
  3. 理解Linux的进程、线程、文件系统等基本概念,了解Linux下的多进程、多线程编程
  4. 能够编写简单的Shell脚本,进行基本的系统管理和自动化操作

C/C++语言基础

1. 熟练掌握C/C++的基本语法、数据类型、运算符、控制结构

计算机网络基础

1. 了解常见网络协议,理解TCP/IP协议、网络协议栈等基本工作原理

2. 熟悉网络编程,掌握Socket编程,熟悉网络通信的基本原理和实现方式

3. 多线程编程、多进程

  • 嵌入式ARM开发经验
  1. 熟悉常用外设协议UART,I2C, SPI等优先
  2. I.MX6ULL开发经验
  • 岗位方向

汽车领域、音视频领域、医疗器械、物联网

Linux(驱动开发方向)校招学习路线:

  1. 精通C语言开发,了解ARM汇编语言
  2. 至少熟悉操作系统一个子系统的原理
  3. 至少熟悉一款CPU架构,比如ARM64,RISC-V
  4. 有操作系统研发,复杂驱动程序开发经验者优先考虑(如camera/AI加速器/PCle等)

岗位需求总结

【应用开发学习路线+Linux内核驱动深入学习】

驱动开发因为靠近底层,所以要了解一些硬件相关的知识

  • 嵌入式Linux软件基础优先
  1. 熟练使用Linux系统以及QT开发环境
  2. 数量掌握C++编程语言
  • Linux内核编程
  1. 掌握Linux内核编程的基础知识,如内核模块、中断处理、内存管理、进程管理及锁机制等
  2. 了解Linux内核的编译和调试过程,能够使用内核提供的调试工具进行故障排查
  3. 掌握Linux内核的裁剪和定制
  • 驱动开发基础
  1. 理解设备驱动的基本概念和作用,熟悉驱动与内核的交互方式
  2. 掌握Linux驱动开发的基本流程和技术,包括字符设备驱动、块设备驱动、网络驱动等
  • 硬件相关相关知识
  1. 对计算机硬件有一定的了解,包括CPU、内存、总线、I/O设备等
  2. 掌握ARM汇编语言,以及一定的单片机知识
  3. 理解硬件与软件的交互方式,以及如何通过驱动进行控制和通信
  • 协议和接口规范
  1. 熟悉常见的设备接口协议和规范,如USB、PCI、I2C、SPI等
  2. 了解这些协议在Linux内核中的实现方式和应用

(之前整理的嵌入式学习资料,需要的直接私信我)

【校招加分项】

  • 项目经验:

看招聘需求校招似乎对项目经验的要求没有那么高,但想要提升简历和面试的通过率,项目经历是必不可少的一部分

  • Android系统开发知识

Android系统开发知识的了解以及开发经验(以后想从事Android嵌入式开发的,可以多学习相关知识,还是一个非常好的高薪从业方向的)

  • 良好的编程风格:

在平时编程时多注意自己代码的规范性,养成良好的编程风格

  • 竞赛获奖经历:

平时多参加竞赛,积攒经验,参加竞赛的同时也能增加自己的项目经验

  • 学习成绩及英语能力

【校招经验分享】

  • 常规经验

  • 简历着重写公司岗位需求上提到的技术,要和岗位的技术需求匹配
  • 自我介绍好好准备,最好中英文都准备
  • 项目经验很多公司也会重点看,所以最好还是有2-3个左右的项目经历,没有项目就去网上做一些开源项目,虽然技术含量不高,但至少不让简历太难看
  • 牛客或者网上搜大厂笔试面试题,掌握解题思路和技巧
  • 刷leetcode,难的要有思路,中等的要会做,简单的要很快就能做出来
  • 拷打八股文,小公司考的会比较少,大公司基本都会考
  • 校招实景

卷Linux开发,不要以为有简历项目Offer稳了

大厂的面试会询问你简历上的每个细节。

只写到简历上,没有真正掌握的同学,也许能拿到实习的机会,但在技术面试的HR面前,一定的漏洞百出,给技术总监留下很多不好印象。

有位研三硕士,简历上3个项目,其实面试机会不少,但无Offer

原因是什么呢?

  • 基础不扎实。C++和Linux应用基础的细节掌握的差劲。
  • 简历项目注水。跟着网上视频教程Copy的代码,自己没有做,也根本不会做项目。

稍微涉及细节的内容,他就无法回答。给面试官留下很差的印象,包括:

  • 此人可能是乱写的简历骗面试机会,真后悔面试他,MD,整天忙死了,还被这种人忽悠;
  • 啥技能都不会,招过来也是拖后腿,再看看其他人。
  • 需要基础、项目一对一指导的私信我,免费制定学习路线

【学习指南】

嵌入式Linux开发,C++需要学到什么程度?

众所周知,嵌入式开发通常用C语言开发,但是嵌入式Linux,特别是大项目用C++的也非常多,例如百度的Apollo等。

硕士同学,肯定不局限于小公司的单片机开发,

那么,高薪岗位的嵌入式Linux开发C++要学到什么程度呢?

我觉得群内这位已经工作多年的老哥回答的非常有道理:

总结而言,如果你将要找工作,最好能够达到下面的要求:

  • 掌握C++的进阶只是STL等;
  • 掌握C++的现代标准,包括C++11到20的新内容;
  • 能够在项目中熟练应用新的面向对象的写法!

掌握这些,你还可以从事其他C++的岗位,后台开发等,而非仅仅嵌入式Linux开发!

【学习资源】

b站上很多免费课程资源,比如韦东山、野火之类的,大家自行搜索就行,这里主要推荐一些项目学习资源和面试之类的资料

对于项目这块,面试的常见问题有:

  1. 做这个项目的背景是什么?
  2. 项目中具体有哪些模块,都是怎么实现的?
  3. 项目中你的技术亮点有哪些?
  4. 项目中有什么难点,你是怎么解决的?
  5. 要是重新做这个项目,你这个项目有什么不足,你会进行哪些改进?
  • 如何高效在网上找开源项目、参与开源项目

如何高效地在网上找开源项目做!在职程序员实际演示一波视频教程操作_哔哩哔哩_bilibili

  1. 如何参与开源项目

怎么他们都有开源项目经历|手把手教你参与开源_哔哩哔哩_bilibili

  1. GitHub 上的优质 Linux 开源项目

GitHub 上的优质 Linux 开源项目,真滴牛逼!_linux开源项目-CSDN博客

【项目推荐】(含可写入简历的项目)

项目名称

推荐观看链接

链接视频简介

Linux+QT智能猫眼

5.智能猫眼项目演示_哔哩哔哩_bilibili

使用stm32mp157单片机,功能比较简单

嵌入式在线词典项目开发

【开源】嵌入式在线词典项目开发,linux开发综合能力实战,框架搭建到功能实现……_哔哩哔哩_bilibili

系统教学,有课件和源码

基于Linux的视频播放器项目

全志linux系统播放视频,其实没有想象中那么难,附编译视频_哔哩哔哩_bilibili

比较基础,用全志开发板

嵌入式Linux数码相框

嵌入式Linux相机_哔哩哔哩_bilibili

韦东山老师录制的系统教学视频,比较细致

嵌入式linux系统开发WIFI智能灯

【Linux系统/QT软件开发】嵌入式linux系统开发WIFI智能灯,考研毕设必备项目,C/C++语言项目,智能家居项目_哔哩哔哩_bilibili

21年视频,有大概的项目构建框架

基于 Linux 的智能家居系统

基于 Linux 的智能家居系统_哔哩哔哩_bilibili

项目演示视频,开源

基于Qt的嵌入式车载智能助手

【基于QT的车载智能助手】-嵌入式Linux进阶项目教学 ARM开发/Linux应用驱动移植开发/阿里云服务器/百度地图/百度天气/音乐播放器/环境监测_哔哩哔哩_bilibili

从0到1系统教学如何实现项目

基于Qt的学生管理系统

Qt学生管理系统1项目设计与布局开发_哔哩哔哩_bilibili

系统教学,比较详细

基于Qt的网页采集软件

网页采集软件,Qt开发的可以替代网页爬虫的开源网页数据采集软件,DS网页数据采集器_哔哩哔哩_bilibili

可以替代网页爬虫的开源网页数据采集软件,DS网页数据采集器,开源

基于Qt的开源远程控制软件(SRE)

开源远程控制软件(SRE)_哔哩哔哩_bilibili

系统讲解,开源

Linux+Qt智能工业电表

手把手教你做嵌入式开发项目《智能工业电表》,Linux+Qt综合项目实战课程,留言免费领项目文档及程序源码_哔哩哔哩_bilibili

项目演示和源码分析

物联网视频监控系统

【自己做一个物联网视频监控系统】韦东山老师手把手带你从0开始自己做一个视频监控系统_哔哩哔哩_bilibili

韦东山老师录制,六节课,讲了项目实现的基本框架

安防监控系统

安防监控项目环境搭建_哔哩哔哩_bilibili

系统教学

嵌入式Linux&Android人脸识别测温门禁

【干货】嵌入式Linux&Android底层开发入门教程 30节课 从零开始实现人脸识别测温门禁 RK3399/3328平台内核驱动单片机嵌入式_哔哩哔哩_bilibili

需要一定的基础,系统教学

基于 imx6UII 的无线点菜系统开发

嵌入式开发实战项目介绍——基于 imx6UII 的无线点菜系统开发 Linux/QT/驱动开发/网络开发/TCP/UDP/系统开发_哔哩哔哩_bilibili

项目介绍

基于I.MX6ULL Linux的智慧农场项目

基于I.MX6ULL的Linux C多线程物联网网关+STM32+Qt上位机+Linux C++多线程服务器(含web服务)的多种无线通信系统的智慧农场项目_哔哩哔哩_bilibili

物联网网关+STM32+Qt上位机+Linux C++多线程服务器(含web服务)的多种无线通信系统的智慧农场项目

智慧无人超市项目

基于Linux C++多线程服务器 + Qt上位机开发 + STM32 + 8266WIFI的智慧无人超市项目_哔哩哔哩_bilibili

基于Linux C++多线程服务器 + Qt上位机开发 + STM32 + 8266WIFI,开源

瑞芯微 RV1126 实现 USB 摄像头

嵌入式Linux音视频项目介绍-基于瑞芯微RV1126实现USB摄像头,学它轻松拿到offer!/黄金稀缺才高价,学技术呢?浅聊一下如何实现自身价值_哔哩哔哩_bilibili

项目介绍,主要锻炼SDK环境搭建。

【嵌入式AI】瑞芯微 RV1126 实现交通标志识别

瑞芯微RV1126车牌识别演示_哔哩哔哩_bilibili

项目演示视频

海思3519平台4K相机

嵌入式开发项目实战介绍——基于 Hi3516 的HDMI 相机开发 MIPI-CSI/Linux驱动开发/boot/QT/海思/单片机/物联网_哔哩哔哩_bilibili

基于Hi3516的HDMI相机开发的项目介绍

数字式双目体视显微系统设计

FPGA/ZYNQ实现SGM双目立体匹配算法教程_哔哩哔哩_bilibili

22年录制的系统的FPGA/ZYNQ实现SGM双目立体匹配算法教程

基于图像处理的手套瑕疵检测系统

基于Opencv缺陷检测项目实战1-任务需求与环境配置.mp4_哔哩哔哩_bilibili

系统讲解,视频短小精悍

【嵌入式AI】基于Jetson Nano的遥感农业田块分割系统

基于深度学习技术的农业遥感监测平台_哔哩哔哩_bilibili

基于深度学习技术的农业遥感监测平台的项目演示

Linux高并发服务器开发

Linux高并发服务器开发(C/C++阶段四)_哔哩哔哩_bilibili

系统,细致,linux系统部分比网络部分讲得好,可以结合APUE这本书观看

实现分布式网络通信框架

【施磊】C++项目-实现分布式网络通信框架-rpc通信原理--项目简介_ev_哔哩哔哩_bilibili

基于C++的项目介绍视频

树莓派4变身路由器

如何让树莓派4变身路由器!OpenWrt一款开源的路由器系统给你玩转不一样的路由功能!【明富其识】_哔哩哔哩_bilibili

介绍如何把树莓派4配合开源的OpenWrt架设成一个路由器

树莓派变视频监控(专用Linux系统)

树莓派变视频监控(专用Linux系统)_哔哩哔哩_bilibili

3分钟教学视频,评论区有其他方案,可以参考

用树莓派4B搭建Web服务器

用树莓派4B搭建Web服务器,凭借AI助力半天可完成Wordpress自建网站_哔哩哔哩_bilibili

7分钟教学视频,内容精简

树莓派OpenCV人脸识别

【保姆级教程】树莓派OpenCV人脸识别: 前期数据准备工作 | 树莓派防吃灰指南_哔哩哔哩_bilibili

系统教学,比较详细。链接合集内还有其他树莓派玩法(路由器、天气提示器、温湿度记录仪)。

树莓派温室监控系统

树莓派--温室监控系统_哔哩哔哩_bilibili

厦大学生项目汇报,项目功能含温湿度监测、LED报警、监测作物生长

树莓派盲人出行辅助系统

盲人出行辅助系统——厦门大学学科实践(四)大作业汇报(红绿灯识别、树莓派、OneNET、LED、跌倒检测、距离检测)_哔哩哔哩_bilibili

厦大学生项目汇报,项目功能含跌倒监测、红绿灯识别、障碍物监测、LED灯提示和电机提示

树莓派机器人

从零制作树莓派机器人 #raspi #raspberry-pi #树莓派_哔哩哔哩_bilibili

从零制作树莓派机器人,开源

树莓派4 DIY智能魔镜

使用树莓派4 DIY智能魔镜_哔哩哔哩_bilibili

项目演示视频,开源

树莓派+opencv,检测内外边框以及红绿激光点

23电赛E题视觉方案讲解 基于树莓派、opencv,检测内外边框以及红绿激光点_哔哩哔哩_bilibili

23电赛E题视觉方案讲解

树莓派+arduino+opencv的自动驾驶

树莓派+ arduino+ opencv =自动驾驶_哔哩哔哩_bilibili

项目演示视频,不是很清晰,开源

基于树莓派4B开发的ROS机械臂

开源!基于树莓派4B开发的ROS机械臂,内置AI视觉和MoveIt运动学算法 ,实现人工智能手眼合一、移动跟随、智能分拣、智慧仓储系统,ArmPi FPV_哔哩哔哩_bilibili

项目演示视频,内置AI视觉和MoveIt运动学算法,开源

【自动驾驶】基于Jetson Nano的智能小车

基于Jetson nano 2GB打造的ROS AI智能小车,ROS高性价比学习实践方案。_哔哩哔哩_bilibili

基于Jetson nano 2GB打造的ROS AI智能小车的项目演示

【汽车电子】AURIX 智能小车

第18届智能汽车培训——入门篇_哔哩哔哩_bilibili

22年录制的第18届智能汽车培训

【音视频】基于瑞芯微RV1126实现USB摄像头

嵌入式Linux音视频项目介绍-基于瑞芯微RV1126实现USB摄像头,学它轻松拿到offer!/黄金稀缺才高价,学技术呢?浅聊一下如何实现自身价值_哔哩哔哩_bilibili

项目介绍,以及教学片段试听,完整需付费

【音视频】onvif 客户端实战开发

ONVIF系列教程第3讲:Python开发ONVIF客户端,鉴权,校时,图像抓拍,修改分辨率,云台控制_哔哩哔哩_bilibili

Python开发ONVIF客户端

【笔试面试八股文】

  • 大厂面试题
  • 笔试面试资料直接加微星
  • 面试八股文
  1. 【面试-八股文】Linux高频面试题,助你吊打面试官系列-阿里云开发者社区

  1. 面试必备(背)-Linux八股文系列!_牛客网

  1. Linux八股文常见的47个问题及答案_linux常见命令八股文-CSDN博客

  • 20
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值