金三银四,暑期/日常实习准备最佳实践

计算机面试知识学习网站https://www.csview.cn/

背景:C9计算机本硕,刚参加完22年秋招

01 金三银四,请把握住

都说金三银四,现在是投暑期和日常实习的最好时间,各大公司陆续也发出了岗位招聘需求。如果你今年想去实习,建议在三月或者四月投递。对应时间节点和招聘难度是这样的:

  • 三月HC最多,投递起来相对容易,开放投递的公司还走面试过场刷KPI,那就是真岗位紧缺不想招人
  • 四月:三月招收了大量的人但是可能没招满,另外有的企业也会在四月开,机会很多
  • 五月:基本不招或者停招了,这个时候只能投日常而且得看公司有没有需求,可以说纯看运气

所以今年找实习的同学这个时候应该准备甚至冲刺一下,做到在四月中下旬之前投好简历。

02 找实习,没你想的那么难

很多同学担心自己面试不过,也不知道自己定位,更不知道自己如何准备。但是我想说的是找实习要比正式找工作面试容易很多,比如面试可能整体少一面,再一个就是问的东西也不会太深。

想想我们去年找实习,简历做成这个水样子,基础知识也学的一知半解😴,最后大部分也都上岸了,所以大家只要按照下面的内容好好准备,自查一下,还是可以有很大概率找到实习的。

03 如何快速准备+突击面试

如果你问我如何系统学习计算机知识,我不好说,但至少要半年左右,不过等半年时间秋招都会来不及。如果你问我高效准备面试需要多久?我可以给你一个大概的时间,1~2个月,不用再多了

面试就跟你大学期间的考试一样,花再多的时间也没法弄得面面俱到,不如复习一些常见题,最大程度增加自己的通过率

当前我接下来说的方案有一定的适用条件:

你有计算机知识技术的基础,并且至少会用一门常见的编程语言。

在这个前提下,再去准备算法、计算机基础、项目。不然面试官问你一道像栈和队列有什么区别的问题、TCP和UDP在哪一层之类的问题把你问住了,你可能会被这家公司永久拉黑🙃。

算法

这部分准备时间最长,没什么好的办法我们只能需要慢慢理解+堆时间,很多算法大神也是一步一个脚印过来的从面试角度来说,学算法的性价比最低,不过没办法,算法写不出来前面说的再好也白搭。那么学到什么程度可以去准备面试呢?这里给一个标准:

面试中出现频率最高的100题要会做,这是基线,最好是会做150或者200道题。

200题其实就可以,不用再多了。我们都知道边缘递减效应,一分钱可以买一分货,五分钱只能买两分货,超过200题你需要掌握它投入的精力和面试带来的收益会有很大的折扣,所以我不建议贪多。

这100多个题要做到举一反三,比如:反转链表迭代和递归方法是不是都会写?二叉树层序遍历会不会写递归的方法?

我们总结了130多道高频面试题:

链表(18题)

树(20题)

栈和队列(8题)

字符串(11题)

数组(12题)

动态规划(16题)

DFS(3题)

回溯(5题)

手撕(6题)

其他(25题)

计算机基础

主要是数据结构、计算机网络、操作系统、数据库。这部分是能速成的知识,虽然课本上问得很深很繁琐,但是面试的时候就是万年八股。直接背,但是别傻乎乎的死记硬背:

有的时候真不知道你们从哪里弄的一堆八股文PDF,动不动上百页几万题,不要说准备面试了,这估计你从入职到被辞退也看不完😓,而且你大概率弄了几天之后也会发现行不通。比较有效的方法就是在你学习对应的知识之后(最起码知道他说的是啥),对着高频题和面经看,这样做能让你得到面试的直接反馈,帮助不断学习新的知识和方便进一步深入。

还有就是不要死记硬背,死记硬背真的很绝望,你背不下来,面试也发挥不出来。有效做法应该是反复的读,形成自己的话来加深印象,看三遍不如读一遍。

计网面试题:

操作系统面试题

数据库面试题

数据结构我们没总结是因为面试大部分内容都是课本所学,相对简单,日后有需求再弄。

项目

项目认真选一选,最好跟你的岗位投递直接相关,内容上做到和岗位匹配。

如果没项目+零基础,这个时间节点不建议从头开始一行一行敲,节约时间还是从Github上下载一个面试高频项目,然后行一行读代码,了解设计思想和所用的技术,改进可能存在的不足,把它内化成为自己的项目

如果有课设项目或者实验室项目就好好包装一下,实在包装不动还是去Github上面弄一个。

在准备项目的过程中你可以不断给自己挖坑,针对这个项目自己给自己提问,想想面试官会问什么内容,按照这个思路再总结下去,可以让你零基础速成一两个项目。

编程语言基础

C++和Go的同学其实语言基础相关的问的很少,建议这两个方向的同学将更多的经历放在项目和计算机基础底层原理上面。Java真的多,堆时间慢慢看吧。

中间件

这部分Java的同学看的多一点,没法说面试会问什么,都是简历和项目写了就问,不写一般也不会提,此外跟你投的岗位也有关系。

中间件里面我只推荐学一学Redis,开发很常用,不仅要会用还需要搞清楚原理。其他倒是实际使用大于理解原理,学习准备就按照热门技术和你需求来,时间不好估计,我当时学Docker等中间件大约是平均一周一个,还有Zookeeper、Nginx、Kafka啥的。碰上K8s这种难学的我大概学了一个月😭。

04 准备时间预估

最后我们估计一下时间和应该有的学习计划:

  • 算法150题:有刷题基础每天1~3小时一个月可以看完,零基础每天需要投入2~5小时。不过算法是一个渐入佳境的学习过程,越到中后期刷的越快。
  • 项目:选定项目+读代码+逐渐理解,平均1~3周一个。
  • 计算机基础+语言基础:一天读1~3小时,一直读到面试之前为止。
  • 中间件:从安装到使用1~3天一个,系统学习一周一个。
  • 每天找一篇好的面经深入研究

以上的方案都是并行执行的,之前做过了现在就可以少学一点,根据实际情况进行调整;之前没做过就尽快准备起来,减小自己的时间沉没成本。把上面的内容做好了你可以再去补充一下设计题或者将知识往深了学

#实习##暑期实习##2023届校园招聘##招聘##准备面试#
CSView校招指南 文章被收录于专栏

从面试准备到面试思想多方面介绍计算机校招,希望带给你不一样的见解。

全部评论
谢谢楼主分享,看出来你很喜欢仙子伊布了
6 回复 分享
发布于 2023-03-16 16:06 湖北
4 回复 分享
发布于 2023-03-16 20:55 河南
楼主,我想问下双非本211硕走c++进大厂有希望吗?
点赞 回复 分享
发布于 2023-08-26 21:22 江西
刚日常实习一个月了,想做到5月再找个日常呢,5月hc很少么
点赞 回复 分享
发布于 2023-03-22 19:17 上海

相关推荐

常规问题: 1. 3分钟简单自我介绍2. 在实习和开源经历中,你遇到的最大困难或最具挑战性的事情是什么?实习拷打(拓展相应的场景八股)慢 sql 治理相关的1. 你在平台稳定性建设中提到通过添加索引、读写分离优化慢SQL,具体是怎么做的?2. 读写分离可以再详细说一下吗3. 能否举一个添加索引的具体例子?比如在哪个字段上加了什么类型的索引?4. 你加的是单列索引,如果查询只需要表中的几个字段,当前的单列索引是否有优化空间?5. 联合索引相比单列索引的优势是什么?为什么更优?(从回表,索引下推优化那个方向说就好)es 慢查治理相关1. 关于ES扩容主分片优化查询,具体是怎么做的?2. 系统的ES集群资源配置你了解吗?(如CPU、节点数等)3. 扩容分片数量是如何确定的?仅依据数据量吗?4. 分片切割后为什么查询会变快(并行查询)5. 将 long 类型字段转为keyword类型,是如何利用跳表结构的?这里其实并不能,只是切换是为了适应精准匹配的场景,keyword 的底层用的是倒排索引+跳表6. 除了分片扩容和类型转换,还有哪些方式可以优化ES慢查询?(force merge 整理碎片)分布式锁(业务中有个并发修改用到了,主要问的一些分布式锁的实现细节)1. 你在业务中使用的分布式锁是标准库还是自研的?2. 让你自己实现一个最简单的分布式锁,你会怎么实现?3. 如果任务加锁后异常退出,没有释放锁,如何避免死锁?4. 如果任务执行时间很长,锁过期被其他任务获取,原任务完成后误删了别人的锁,如何解决(防止锁的误释放,加标识)5. 如果任务A包含多个子任务,且子任务本身也有加锁逻辑,在嵌套调用时会因重复加锁失败,如何解决?(可重入锁的实现)6. 在秒杀场景下,能否直接用分布式锁控制库存扣减?会有什么问题?7. 如何让秒杀请求不立即失败?(锁的自旋)并发编程1. 你使用CompletableFuture并发查询多个维度,底层是如何实现并发的?2. 你是自己定义线程池,还是使用默认线程池?3. 你是基于什么依据设置线程池参数的?4. 如果一个任务同时包含CPU密集型和I/O密集型操作,共用一个线程池会有什么问题?应该如何设计?(线程池隔离,避免cpu密集型任务阻塞I/O密集型任务)Agent和开源相关的内容1. 你的基座模型切换(DeepSeek → 千问)后,响应是流式还是非流式?2. 为什么关注完整响应时间,而不是首字响应时间?(主要是业务上的一个需要)3. 你的性能优化目标是在保证输出内容不变的前提下缩短生成时间吗?4. 你在Agent框架中使用了责任链模式和观察者模式,请分别解释这两种模式5. 既然有四个固定执行步骤(Agent执行前,执行后,模型执行前,执行后),是否可以用模板方法模式替代责任链模式?6. 你使用观察者模式的具体场景是什么?为什么选择它?7. 你还了解哪些常用设计模式?8. 你提到使用HNSW算法进行向量搜索,能简述其基本原理吗?(避免全表的向量查询)9. 为什么不直接用余弦相似度做全量匹配,而要引入HNSW?10. 你是否使用过BM25算法?它的作用是什么?11. 向量搜索有哪些弊端?12. 向量检索和BM25全文检索的得分量纲不同,如何进行混合排序?(引入一个精排模型重新打分)反问:1. 业务(智能客服相关)2. 不足,基础还需要加强无手撕,总体一个小时总结:面试体验很好,主要就是根据简历延伸一些八股和简单场景,有些还需要加强的地方,挖出来了自己基础上的一些问题
点赞 评论 收藏
分享
评论
39
310
分享

创作者周榜

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