当前位置:   article > 正文

路虽远,行则将至 - 附暑期实习、秋招历程经验分享

路虽远,行则将至 - 附暑期实习、秋招历程经验分享

前言

大家好

许久没有时间静下心来打开编辑器写文章了

忙碌暂过,难得一闲时

求学三年,终到离别时

回忆过往,枯燥且多彩

有一点经验,以文字形式分享,希望帮助到大家

可能是这段时间事多且杂,加上很长一段时间没有写博客
正在编辑文字的我,脑子空空,有些许陌生感
行文逻辑如有错误、含有不严谨之处,请多见谅

个人情况:

  • 技术语言:C++
  • 求职岗位:后台开发
  • 竞赛:国家级两项(非ACM)、其它若干
  • 奖学金:国家奖学金等
  • 科研成果:专利一项,论文一篇

获得offer情况:

  1. 暑期实习
    • 菜鸟期,只拿到3个offer
    • 一大厂、一中厂,还有一个不知名小公司
  2. 秋招
    • 刷经验 拼命升级期
    • 三家大厂(两sp,一ssp),两中厂,其他若干
    • 字节面两次,二面挂两次
    • 腾讯面两次,二面挂两次
    • 快手面两次,二面挂两次

失败原因:自己最大的问题在于项目深入这一块,对一些项目实战细节了解不深导致大多挂在这一块,所以希望后面的学弟们在准备时一定要把项目准备好!

注:由于求职时间为2023年暑期实习及秋季招聘,时间已过去几个月,一方面细节回忆不是很细节,另一方面具有时效性,请依据实际情况进行调整

求职历程

一、基础篇

1.1 选择技术路线

主旨:结合自身实际情况,选择适合自己、感兴趣的技术方向。

可选择方向:

  1. 算法
  2. 后端
  3. 前端
  4. 测开

自身选择历程:

  • 首先排除算法。掂量了自己的水平及能力,学历/论文不够,算法这一条路应该行不通。
  • 然后在前后端中选择,二者各有一些开发经验,综合考虑发展前景和个人兴趣,最终选择后端开发,编程语言选择了C++。
  • 最后规划学习路线和收集资料。

1.2 收集备战资料

明确路线后,开始在各大网站查找前辈们的求职经验,了解他们的准备过程及所需要使用到的资源。

在此过程中,寻找与自身方向吻合度高的文章并整理到自己的文档中。分析共同点,制定个人学习计划

由于很久没有接触这一块了,很多细节不是很了解。一些内容仅靠自己的少量记忆进行描述。

1.3 按部就班学习

准备资料可以分为四部分:

  1. C++基础及进阶知识
  2. 项目
  3. 八股文
  4. 算法题

(1)基础知识

目标:学习C++的基础知识,语法、函数、特性等。

学习路线:

  • 先看纸质资料,包括C++课本、C++ Primer、计算机网络、操作系统、数据库、Linux基础、Git基础等。边看边使用笔记软件记录,形成笔记,不会的知识点查阅文章帮助自己理解,形成自己的知识库笔记系统。
  • 再看视频资源,主要听的是侯捷老师的课程,大致是:C++面向高级对象开发、STL标准库和范型编程、C++设计模式、C++新标准C++11&14、C++内存管理机制…
  • 最后把书和视频中的一些例子自己重新敲了一遍。

花费时间:大概1个月

(2)项目经历

目标:准备简历中的项目经历。

这里自己狠狠地踩坑了,准备暑期实习时就在Git上找了一个项目,尽管啃完源码后自认为还可以,结果在面试时被问懵了,挂了很多次。这是不太好的一种做法,不建议采取。(后面秋招反应过来了)

平时有机会多参加学校内的一些课题项目或者自己提前准备好个人的项目方案。采用网上同质化严重的项目,加上不熟悉具体流程,很容易被刷下去

当然,还是按照自己的实际情况来准备项目经历。

  • 首要条件是要有与个人技术路线对齐的项目经历,有总比没有好。
  • 更进一步,在可选择条件多时,尽量选择优质的项目写在简历,不用过多,一到两个就可以了。
  • 关键在于:
    • 项目设计的难点在哪里?
    • 遇到的困难是怎么克服的?
    • 具体使用了哪些技术细节?关键点在于如何通过一个项目体现自己的技术实力,如何解决地难点部分?
    • …(想象自己是面试官,多反问自己)

花费时间:大概1个月

个人建议:

  • 即将找工作的小伙伴可以提前看看各大公司的招聘网站,看看对应岗位的招聘需求。PS:有些岗位会介绍一些非常好的开源项目,这里我们是可以借鉴一下的(后悔当时没有早看到)
  • 能完整走完项目流程最好。开发、部署、上线、运营… 相信大部分都会完成一个项目的源码开发,但后续的线上部署实际则忽略了,这一块如果有时间的话也建议做一下,在线上运行时发现问题,思考问题,解决问题。
  • 源码要敲,尽量少copy整个文件。
  • 向已工作的师兄师姐、同学请教实际工作时遇到问题的解法、常用工具等…

(3)八股文

目标:熟悉基础,流程表达

个人准备方法:

第一步:把需要理解/背诵的知识点誊抄到自己的文档,形成自己的笔记内容

在这里插入图片描述

可以依据类别,把知识点按照问题+回答的方式总结下来,形成自己的知识体系
再打印出纸质材料方便自己学习与背诵。

第二步:理解与记忆,形成“肌肉”记忆。

每天坚持9点左右到达图书馆,开始进行知识点学习与记忆。

  • 无他,就理解+记忆反复多次
  • 每天坚持读完/背完一类知识点,一次需要3小时左右,一个上午
  • 一轮学习所需时间为1周。

1周后,将问题单独打印成一册,训练时,只看问题描述,然后回答

  • 回答时,必须要说出来,不能是觉得心里知道,而不开口讲述。
  • 面试时是需要向面试官解释知识点的细节的,是需要开口说话的,同时也需要讲解得当,将知识点叙述地尽可能地准确,而不是讲完了后,只有你自己懂了,面试官根本没有听懂…
  • 训练时,可以使用手机将自己的回答过程录制下来,然后再回看视频,想象自己是一个小白,看看自己的回答是否将此知识点讲解明白。
  • 切记,一定要敢说,敢讲,敢练。
  • 目标:坚持练习30天,基本实现看到某个知识点后,立马可以熟练地回答,不卡壳、语速适中。

以经常被问到的一个计算机网络知识为例:请你描述下TCP三次握手和四次挥手的过程。

相信一看到这个题目,大家都会觉得很简单。但是一到真实面试时,会很紧张,同时描述也会磕磕绊绊的,尽管描述没什么问题,也有可能会显得不熟练、不稳重、知识深度很低、不自信。

对于这样的高频问题,在训练过程中,可以考虑每天都坚持讲解一遍,要保证回答过程中语速适当、不磕绊,回答流畅且顺利,不漏知识点,自信向面试官展示自己对于这类问题的理解。

面试多次后,自己就会明白,有些题目是在反复出现,这类问题就是平时训练的重点,尽可能的把答案回答全、回答准确,不要遗漏细节内容

(4)算法题

在算法题这部分,短时间内突击效果不理想。

因此选择采取每天尽可能练习,保持题感,坚持刷题,强化肌肉记忆。

刷题阶段可以分为三阶段:

  1. 基础了解
  2. 专项学习
  3. 拼命刷题

基础了解:此阶段是没有刷题经验同学的第一关。

  • 刷算法题和实际编程稍微有点区别,部分同学在第一次进入刷题网站时,尽管知道题目的解题思路,但是不熟悉刷题网站的使用、解题模式的转变等…
  • 这里需要做的就是花点时间了解下解答算法题的操作、熟悉编程语言对应的一些API(比如C++经常使用到vector、queue等对应的一些api)…

专项学习:重要阶段。

  • 这里有两种学习路线,一种是按照类型刷题,另一种是按照题目顺序学习。
  • 两种方法各有优劣,按照自己的实际情况选择一种坚持学习就行。
  • 以自己为例,采用按照类型进行专项学习。
    • 先统计出一些热门题型,如动态规划、二叉树、链表等
    • 再针对某类题型的概念、解题思路、例题、变式题进行线形学习。不局限于大佬的笔记、B站讲解等方式,选择适合自己的就行。
    • 关键在于,每一次学习后,要对学习内容按照自己的理解总结并记录下来,而不是光是听,而是要将其转化为自己的知识点。
      在这里插入图片描述

使用笔记软件对每次学习的内容进行总结,并给出自己的思考过程。

总之一句话就是:学习,总结、记录、反思,形成自己的知识笔记,方便后续的复习。

在这里插入图片描述

了解各类题型后,就可以通过做题巩固及拓宽自己的知识点。

  • 开始时,每道题给自己的时间不要超过20分钟,20分钟后若还不会做,可以放弃了,直接看题解。
  • debug也不宜过久,不需要出现几天半个月都专注于一道题上。完全不会的题看评论区各位大佬的题解,有思路但没有正确的同学需对照题解看看自己的错误点在哪里。
  • 提交成功且正确的同学可以看看其余的解法,不局限于一种解法。在这个阶段,建议每道题从做题、解题、反思总结这几个阶段时间限制到1小时内,不要太长,每天坚持做1题都是可以的,关键是要坚持。

拼命刷题:通过上一阶段的训练后,可以按照题目序号顺序进行刷题了。

  • 刷题号为1-300的题库,每道题时间限制为5分钟,包括题目思考与代码编写。
  • 时间一到没有思路或者测试失败立马查看题解,着重于思考大佬的思路为什么可以解出来,而自己却没有这种思路。
  • 理解后再按照此思路重新敲一遍,这个过程不要看着答案敲,而要凭借自己的理解重新写一遍代码。
  • 如果思路卡壳或者测试case不过,那么再对照检查。重复上述过程,直到可以所有case通过。
  • 按照个人经验,一道题大概需要0.5-1h。

形成刷题记录:每次刷题后,可以对自己的刷题过程进行总结。

  • 使用xmind进行归纳,统计刷题日期、是否成功解出(YES表示所有测试case通过,NO表示失败)、是否为最优解、
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/707448
推荐阅读
相关标签