前言
毕业季,对于每一位即将步入社会的学子来说,都是一个充满挑战和机遇的时刻。作为我的一位好朋友也是好学长,他刚刚在一家顶尖科技公司斩获了他梦寐以求的职位。他深知求职路上的艰辛,因此打算把自己的经验分享给大家,希望能够帮助大家在求职季中少走弯路,更快地实现自己的职业梦想。
我的求职之路并非一帆风顺。在早期,我像许多人一样,面对着信息泛滥和选择困难的问题。但通过不断学习和实践,我逐渐掌握了求职的窍门。
面试中的问题
在面试大厂程序员的过程中,我遇到了不少技术问题,这里分享一些我的经历和对这些问题的理解。
1.并行与并发的区别
面试官问我:“并行与并发有什么区别?”
我回答说,从操作系统的角度来看,线程是CPU分配的最小单位。并行是指同一时刻,两个线程都在执行,这要求有两个CPU去分别执行两个线程。而并发则是同一时刻只有一个线程在执行,但一个时间段内,两个线程都有机会执行。并发的实现依赖于CPU快速切换线程,因为切换时间非常短,用户几乎感知不到。
2.线程同步的方式
然后面试官问:“线程同步的方式有哪些?”我回答:
- 临界区:确保多个线程不会同时访问某个独占性共享资源。
- 事件:一个线程完成任务后,可以唤醒另一个线程。
- 互斥量:类似于临界区,但允许跨进程使用。
- 信号量:用于限制可以使用某共享资源的线程数目。
3.什么是分页?
对于“什么是分页?”这个问题,我解释说,分页是将内存空间划分为大小相等且固定的块,每个程序的数据存储在不同的页面中,并通过页表来记录映射关系,实现从页号到物理块号的映射。
4.什么是分段?
答案:
分页是为了提高内存利用率,而分段是为了满足程序员在编写代码的时候的一些逻辑需求(比如数据共享,数据保护,动态链接等)。
分段内存管理当中,地址是二维的,一维是段号,二维是段内地址;其中每个段的长度是不一样的,而且每个段内部都是从0开始编址的。由于分段管理中,每个段内部是连续内存分配,但是段和段之间是离散分配的,因此也存在一个逻辑地址到物理地址的映射关系,相应的就是段表机制。
5.用户态和内核态是如何切换?
答案:
所有的用户进程都是运行在用户态的,但是我们上面也说了,用户程序的访问能力有限,一些比较重要的比如从硬盘读取数据,从键盘获取数据的操作则是内核态才能做的事情,而这些数据却又对用户程序来说非常重要。所以就涉及到两种模式下的转换,即用户态 -> 内核态 -> 用户态,而唯一能够做这些操作的只有 系统调用 ,而能够执行系统调用的就只有 操作系统 。
一般用户态 -> 内核态的转换我们都称之为 trap 进内核,也被称之为 陷阱指令(trap instruction) 。
工作流程如下:
如何正确有效投递
除了要好好准备面试问题之外,如何正确的准备简历以及依靠什么途径去投递也显得至关重要!
1.如何写简历
面试官每天可能看几十上百封简历,一定让自己的简历突出,才能在茫茫人海中抓人眼球。一封优秀的简历有以下几个特点:
- 排版一定要工整,不要搞些花里胡哨的东西
- 项目经历要简明扼要,避免长篇大论,关键突出自己的亮点。项目不在于多而在于精。
- 面试官一般是参照简历中的项目展开询问,所以简历上的内容一定要非常熟悉。比如,你写了高并发的项目经历,面试官大概率会很感兴趣围绕了高并发展开考察。
- 简历一定要真实,不要写自己不会的东西,或者带有欺骗性的东西
- 特别注意,作为一名技术人,简历中提到的技术术语一定要规范,给人一种很专业的感觉。比如:Python不要写成python,Java不要写成 java等。
2.如何自我介绍
1、面带微笑,充满自信,控制好说话的语速,可以适当慢一点。注意把控好时间节奏,最好控制在3到5分钟
2、简单介绍下个人履历,呆过哪些公司,哪些岗位,负责过哪些事情,简历中的一些亮点项目可以在这里简单提下,吸引面试官的兴趣,为后面的深入面谈埋下伏笔。尤其是最近的项目可以重点介绍下。
3、工作中取得过什么业绩,个人收获哪些成长。适当拔下高度,比如:关注业务,主动思考技术如何更好的服务业务;有大局观,当面临团队合作不顺畅时,不计较个人得失,更关注公司层面拿结果。
4、个人的兴趣爱好,最好与工作相关。比如:阅读、写博客等
5、结束语,自我评价,比如:团队协助能力、抗压能力,最好与面试的公司做下关联。
3.选择什么平台进行投递
现在各种求职平台青黄不接,各种虚假错误信息充斥着各个平台,因此找到一个非常合理合适的求职平台十分重要,这里我推荐使用万码优才的求职平台,可以帮助我们获得宝贵的就业行情、薪酬指南、前辈经验和机会速递等信息。这些信息不仅帮助我了解了市场趋势,还让我在面试中更加自信,最终成功获得了offer。
首先,我通过平台提供的就业行情分析,了解到后端工程师是目前市场上需求量最大的岗位。并且根据自己的专业背景和兴趣,选择了这个方向,并针对性地准备了求职材料,这也为我后续可以面试成功打下来坚实的基础:
大家如果也要去找工作的话,建议先用它来分析一下目前市场上岗位的需求情况,针对这个详细的数据和报告去进行合理的选择岗位,毕竟岗位越多代表机会越大嘛,具体的大家可以自行查看:
除此之外,我们也可以在上面查看到各种岗位非常齐全的薪酬问题。平台提供的薪酬指南让我对不同岗位的薪资有了清晰的认识,这在谈薪资时给了我很大的帮助。同时我还通过平台的城市去向分析,选择了一个既符合自己职业发展又生活成本适中的城市。
最让我惊喜的是,这里提供了很多前辈在求职过程中的经验。前辈的经验往往能给我们提供宝贵的参考,更好的帮助我们在简历和面试中脱颖而出。
快来投递
机会总是留给有准备的人,通过这份攻略,我相信我们都可以制定合理的求职策略,最终在职场上迈出坚实的一步。记住,每一个成功的故事都始于一个勇敢的开始,快来投递吧~