文章目录
- Introduction
- Content
- 1. c++求职方向和一些校招流程
- 2· 各个专业知识准备到什么程度
- 1· c++
- 2· 数据结构
- 3· 操作系统
- 4· 计算机网络
- 5· 数据库
- 6· linux
- 7· 项目和实习
- 8· 如何写简历
- 9· 如何通过笔试
- 10 面试
- 3 总结
Introduction
最近看了一篇牛客网的求职经验分享,这里笔记一下重点。here
Content
1. c++求职方向和一些校招流程
这些内容自己已经知道了。 有一点就是如果什么都没准备, 别拿大厂刷经验。
2· 各个专业知识准备到什么程度
ps: 详细的内容还是需要看原文,这里字数有限总结不全。
1· c++
- 一般来说,C++岗位考察C++的主要知识点可以分为基础语法、STL模板库、C++11新标准、泛型编程、内存管理等这几个方面。
- 基础语法最喜欢问的莫过于strlen与sizeof的区别、explicit关键字、mutable关键字、指针和引用、public、protected、private三者在继承情况下的一些访问权限、菱形继承、友元函数等。
- 对于STL最常问的一些知识点包括“Vector的扩容过程”、“Vector的insert何时会引起内存的重新分配”、“迭代器在哪些情况下会失效”、“map和unordered_map的底层数据结构是什么,以及为什么要这么设计他们的数据结构”。
- c++11 特性 右值引用等
- 泛型编程 : 震惊, 虚函数表属于泛型编程里面的。 这个问题必须回答好。
- 内存管理: 真正产生求职者区分度的就是这个。程序内存的分布, STL下内存分配失败应该怎么办等问题, 非常能考察出一个人有没有实际动手过。
2· 数据结构
1· 排序:一般有快速排序、归并排序以及堆排序。 分析复杂度和稳定性。
2· 2020年秋招考察的都是动态规划、贪心算法、回溯算法、剪枝法这些比较难的题目。 但是实习还是链表、树、字符串这些普通题目。
3· 操作系统
对于操作系统,往往考察较多的有内存管理、进程线程、磁盘调度、死锁问题等,详情看原文。
4· 计算机网络
计算机网络的考察,并不会仔细问OSI七层模型中的每一层,只会挑选比较重要的应用层、传输层、网络层来进行考察。
5· 数据库
对于校招中的数据库考察主要是考察关系型数据库如MySQL、SQLServery以及其他非关系型数据库Redis、MongoDB等,其中最经典的莫过于MySQL与Redis了,一般来说掌握这两个基本够用了。在数据库的考察中,也会考察你基本的SQL语句,作为一名技术人员,能去数据库里提取自己所需要的数据应该是需要具备的基本能力。
6· linux
一般只是会问一些简单的命令,基本不会涉及到Linux内核源码这些东西,除非你的岗位是Linux开发工程师这样的。而在Linux命令中考察比较多的是文件处理命令grep、awk、sed这三个命令,如何查看CPU利用如何查看一个进程、如何查看网络情况、远程登录之类的命令,软连接与硬链接也是常问的一个知识点。
此外一些linux技术还会结合计算机网络,操作系统和项目去考。
7· 项目和实习
实习一般会细问, 要做好充分准备。 项目就确定c++web服务器, 把里面内容吃透,学会引导。
8· 如何写简历
- 不用过分谦虚, 不用过分夸大。 写上去的一定要保证能答出来细节。
- 项目中的技术单独列出来。
9· 如何通过笔试
- 性格测试主要测试你的性格是否正常,是否具有极端情绪,测试你与本公司的文化是否匹配。比如说华为就希望招收那些能够踏踏实实做事、性格老实的人,不希望校招生拥有自己的强烈个人思想,用一句话来说就是“一切听党指挥,跟党走”;而一些外企可能会希望招收性格活泼开放,有自己的想法的人。
- 笔试多刷题,没什么捷径。
- 并不是非要会做一道题才能拿分,有时候整这道题我不会做,但是也能拿一点分。
10 面试
1 · 面试组成基本上是10%手写代码+20%基础问题+40%深挖项目+20%开放问题+10%聊人生。其中手写代码是必要的,一般会共享屏幕或者在指定oj上手写代码,同学们可以不用担心,面试过程中的代码题比笔试过程中的代码题要简单多了,难度基本都是easy或者medium的,hard的很少。除此之外面试中的手写代码还有一个目的就是看你的代码风格和debug能力,毕竟代码风格不是一朝一夕能养成的,面试官看你的代码风格也是能够看出来你是不是经常写代码,看你的变量命名是否合理等。经常写代码和不经常写代码的人代码风格完全不一样的。Debug能力更不用说,考察的就是你能否快速定位到bug,进而解决它。
- 展示长处;保持诚实;多总结多回顾; 会的也不要直接写出来体现出自己的思考。
- 第一面都是基础技术面,就是考察面试者的计算机基础,也就是操作系统、计算机网络、数据库、数据结构与算法、编程语言等,有时候也会问一下你的项目,不过一面深挖项目的不多,主要是考察基础,要求面试者具备扎实且广泛的计算机基本知识。 我擦,这个之前不知道,难怪一面不怎么问项目
- 二面没有一面那么注重基础,会开始问你一些这个实习或者项目的细节部分。这个时候你就要跟面试官讲你精心准备的实习或者项目,一般都会是让你说一下你这个项目是用来做什么的?为什么会有这个项目?如何实现某某细节的,用的是什么技术和框架?一般面试官问你问题的都是他们擅长或者喜欢的技术点,所以你如果仔细讲述清楚并且能加入一些自己的思考会加很多面试分,比如当前这个项目还存在着那些不足,可以用什么样的技术去改进它之类的。
- 三面: 三面一般都是综合面考察,并不是很在乎你的基础了,而是会考察你这个人的思维能力、分析能力等,将事务看清楚、看明白,提炼总结的能力,换句话说就是看你这个人是不是脑子够灵活,是不是够聪明。 从面试官的角度来看,他问你经历过的最大困难是什么是真的对你所经历的困难感兴趣吗?不是的,这个问题的重点是在考察你面对困难时所做的思考和应对,是想看到你的努力以及解决问题的能力。困难人人都会遇到,克服困难固然值得鼓励,可更重要的是从这个困难中学到了什么,即使没能够克服困难也不意味着一无所获,面试官希望看到的是你如何从过往的苦难和失败中总结出经验,并在以后的工作中能够用上这些经验,更好的指导日后的工作。面试官问这些问题,是希望所招聘的人能够脚踏实地的做事,充满激情的从事相关工作,所以同学们可以提前想好说辞,提前练习几遍,这样才能做到从容不迫。
- 三面HR关键问题优缺点:优点就是喜欢看书,看各种各样的书。 缺点就是有点强迫症,不喜欢别人乱动我的东西。
3 总结
收获挺大的。相当于了解了一个人的秋招全过程。
最后
以上就是暴躁煎饼最近收集整理的关于技术专栏笔记: c++工程师求职经验分享IntroductionContent的全部内容,更多相关技术专栏笔记:内容请搜索靠谱客的其他文章。
发表评论 取消回复