返回信息流在开头澄清一下:
我在评论区的回复是因为之前有两个同学那样说了,让我感到不适,在我发言后他们将回复删除了。
毛教员曾说过”妇女能顶半边天“,因此我希望论坛诸位对女性的就业问题能够以平等和进步的态度评论,至于什么“貌美如花”、“交个男朋友”之类的负面例子希望越少越好,**将一半的人口排除出生产建设,这样既不正义,也不公平。**
**社会主义现代化需要我们共同努力,来之不易的现代文明与现代生活也需要我们共同保卫,与诸位共勉。**
------------------------------------
虽然还有offer审批没下来,但是我的校招基本算是结束了。还算满意吧,至少BAT都拿到SP以上的offer了。
这一路走过来感觉又折腾又幸运,所以想给自己写个总结,也希望对正在或者将来要找工作的你们有用。
以下是目录:
1. 找工作or出国(读研)?
2. 技术or非技术?前端or后端or其他?
3. 实习or直接找?
4. 面试经验(刷题,项目,技术栈)
5. 关于果园,关于女生
6. 推荐的资源
7. 题外话
## 1. 找工作or出国(读研)?
我是果园的,众所周知,出国是我院绝大多数人的归宿,我院谁没有一个湾区打工梦?至少我有(过)。我从没想过国内就业,倒是一直来回折腾上下乱窜,大创,竞赛,实验室,科研上也没做出卵paper,有含金量的奖一个没拿过,唯一可说之处就是试错多,经历丰富。
事实上,如果能从很早就能坚定自己想走什么道路,比常人多出来的积累优势在竞争时就是碾压性的了。
我直到20年1月份仍在做出国的春秋大梦,虽然你院的winter hack取消了(签证费已经退了,之前是调侃请同学老师们别当真),GRE考试也推迟到三月份再推迟到六月份再取消,开学遥遥无期,我一直蹲在家里玩狗,醉生梦死。幸运的是,我并不是那么想出国,只是从众而已,在疫情家庭男朋友三方压力下,我从善如流,迅速转向了工作(我绩点不够保研),但是这个时候,我如梦初醒,我一没实习二没项目,拿什么找工作?
这时,**我大三下学期已经快结束了,秋招即将开始。**
## 2. 技术or非技术?前端or后端or其他?
这个对我来说倒不是什么难事,我就没想过做产品运营什么的,不感兴趣。因个人兴趣驱动,做过几个相对完整的简单项目,写了文档也部署上线了,我不讨厌写代码,反过来说,我是喜欢的。
技术路线上,我第一次写前端时就意识到自己讨厌搭积木搞布局前端那一套,后端的业务逻辑倒算还可以,而且后端可以玩的也不止curd,算法我够不上,客户端运维测试想都没想过。所以这方面很快就确定了。
## 3. 实习or直接找?
前面说到,我要找工作时,秋招即将开始,我面临着找日常实习还是直接找工作的抉择。
我男朋友建议我去找个开源项目参与一下然后直接秋招,我去实习打杂几个月接触不到什么有技术含量的东西,还会错过秋招。他说的没错,但那是对于自制力强的技术大佬而言,对于我这种菜鸡,实习的好处还是很多的,比如:
1. 可以出来租房子住,避免在宿舍面试复习的尴尬。
2. 拿人钱财替人上班,硬性驱动你去干活。
3. 简历上多了一笔**落地的实践经历**。
我胡乱背了两天Java八股,Jvm多线程云云,又把剑指offer题解看了一遍,便开始海投实习。
第一次面试就是字节,面试官要我讲讲我简历上的SpringBoot项目,和Spring底层一些机制,我非常诚实的说,那是我大二做的,现在不记得了,他便又要我讲讲做的另一个Django项目,我又十分坦诚的说那是我大三上做的,我也不记得了,面试官不说话了,又写了两道题,这就是我的第一次面试,结果不说了,大家都能猜到。
所以经验就是,**一定要对写在简历上的每一个字负责**。
但是我也不后悔,因为**没有人能准备完美再去面试**,一直想着准备周全是不可能的,这样只可能导致对面试的畏惧和拖延症,都是面着面着去查漏补缺的,面试的过程就是一次和成熟工程师的对话,我有一个项目的改进方案就是和面试官聊天时面试官指点的。
后面拿到了几个实习offer,有两个是大厂的,但是地处京郊,leader也跟我说要加班,考虑到要秋招,我就选了家小厂的,非常爽(个例,比较幸运,大家看看就行):离学校很近,没人管我的打卡考勤,有一段时间我甚至下午才去上班。项目技术方案上也很自由,面试也很自由,我可以在实习公司申请会议室进行面试,面试时间还可以算进工时,反正我呆的挺开心的。
当然最重要的是,我在这个公司自己独立做了两个比较完整的项目,而且因为这两个公司项目我自己也做了个比较小的个人项目,在后面的面试中有话可讲了。在这里说一下,个人项目最好都放到Github上去,最好有完整的文档。
## 4. 面试经验(刷题,项目,技术栈)
1. **刷题:**
大多数情况下,lc top100 interview + 剑指offer就绰绰有余了,面试官前面和你聊的开心的情况下,算法题并不会给你出太难的,出个排序或者简单dfsbfs都是有可能的。
2. **技术栈:**
大多数情况下,校招不会太在意语言栈。我实习公司用的是Golang,实习了这么久之后,我跟面试官也实话实说我Java/C++都忘光了,只要其他基础扎实和项目丰富面试官不会在意,也不会影响面试评级。
3. **面试技巧:**
1. 基础问题没有印象,可以尽力假设一下。
以一次面试过程为例子:
> 面试官问golang底层是怎么处理golang切换goroutine的,我并不了解,但是可以类比进程和线程的切换,即寄存器,pcb的读取和存储,上下文切换,借机可以顺便讲一下进程,线程,二级线程,以及golang对goroutine的调度,还有GMP。
> 面试官问我java编译过程和golang编译过程的区别,我只记得java的编译,不记得golang的编译,但是我记得golang是用c写的,应该可以类比c的编译,之后又和面试官讨论了一下新语言的自举编译。
> 面试官问我java的gc,我记得是标记清除和新生代老生代了(太久没写java了对不起),顺带讲了一下cpp的引用技术回收以及golang的写屏障。
> 再如,面试官问我linux根目录下面的proc目录是干啥的,我不记得这是什么玩意了。。。回忆了一下,好像是改内核参数用的,动过这里面的文件,又和面试官扯了一堆内核态和用户态。
以上回答不准确,不正确,仅供面试时不记得提供胡扯思路。
2. 基础问题回答可以联系实际应用情况。
如:
1. 大家都知道TCP三次握手四次挥手以及状态机,我一般会联系一次压测问题来说,压测速度过快导致TCP端口不够用,大量压测机连接停留在SYN_SENT状态,然后说一下TCP协议的端口回收机制。
2. 大家都知道上下文切换的性能消耗问题,我一般会联系一次我写出来的大量线程处于饥饿状态竞争锁的性能bug来说,还可以说一下是怎么排查定位问题的。
3. 项目问答。
项目是一个巨大的点。**基础是否扎实决定你能不能过面试,项目上有没有亮点,和面试官聊的投不投缘,决定你是否能拿SP/SSP**。
一定要挖掘出项目的亮点,什么方面都可以。我最喜欢讲的一个项目就是一个技术上没有太大难点的项目,但它因实际需求变更在技术架构上迭代了三次,讲明白每一次变更的原因,技术上的设计,优缺点,就很好了,基本上所有面试官都对我这个项目很感兴趣。
要讲明白你为什么要用这个组件这个数据结构,和其他组件的优劣对比,讲自己做了性能优化,那就要有数据,比如说我从1000QPS优化到10000QPS,是单机部署还是分布式部署,为什么?你用了缓存去做优化,会不会有一致性风险?部署在什么网络环境,业务需求是什么?每天的访问量是多少?日志是怎么处理的?遇到过什么印象深刻的BUG?
表述一定要自然大方流利,多试几次,多讲几次,感觉就出来了,多看看网上关于技术架构文章,就知道怎么表述自己的项目了。
## 5. 关于果园,关于女生
果园工程氛围确实差,比如说,很多同学甚至是绩点非常优秀的同学到了大四也没写过像样的工程代码,就算数据结构网络协议操作系统都学过分数也不错,但是连POST方法是啥都不知道,连github都没注册过,也没上手搭过复杂环境,写大作业不愿意用新技术,抱着上课教的古早技术(Servelet啦,swingx啦)不放手。
在这方面,英方老师有不可推卸的责任,我大二时写大作业,用了数据库认认真真打了JAR包折腾了半天,老师说不准用数据库(事实是他懒得配置数据库),满分50分给我打了16分,其他人都48分以上。我说你规则里也没说不准用数据库,他就不理我了。第二年我再去看,他在规则里加了句不准用数据库。
没有工程氛围的时候,你是很难找到身边人去和你探讨的。
女生的问题同上,我说果园没有工程氛围,但是国内整个技术圈话语权都是男性的,大家说程序员第一时间想到的是男性,连学校的秋招春招群里问问题都是“hxd(好兄弟)”,“xdm(兄弟们)”,女生在这种氛围下更难找到亲切感,难以找到可以讨论技术问题的亲密同性好友。
**我秋招春招大大小小技术面试二三十场,没有一次是女面试官。**有一次技术面结束后,面试官说,“我问个和面试无关的问题哈,你回不回答都不影响面试,就是好奇问一句,做后端的女生很少,你为啥想做这个?”
但我在这方面是幸运的,在技术上遇到问题时我有个可以第一时间探讨的亲密挚友(我男朋友),这个感觉真的很好,但是很多果园人,很多女生没有,他们/她们真的很难找到同路人。
## 6.推荐的资源
- 综合类:
- https://github.com/Snailclimb/JavaGuide JavaGuide不用说了,想找Java方面的工作必看,不想找Java的也可以看看,不止有Java,常用的中间件数据库框架都讲了
- 操作系统:
- https://ty-chen.github.io/categories/Linux%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%86%85%E6%A0%B8%E5%AD%A6%E4%B9%A0/ Linux操作系统内核,我是跳着看的,里面很多细节如果不是想找底层工作不必深究,重点看文件系统,内存管理以及进程线程,系统调用
- 书:《Linux高性能服务器编程》,虽然是讲Linux编程,但是他的计网部分也讲的不错
- 语言底层类:
- https://draveness.me/golang/ Go的底层实现,面向面试学习的话可以跳着看,重点看内存GC,GMP,channel那几段,有时间当然是全看
- https://www.bookstack.cn/read/qcrao-Go-Questions/README.md Go的一些底层问题,我就看了一点,Golang的底层八股还没卷到Java那种地步,全看完并且融会贯通的话应该是无敌了
- https://redspider.gitbook.io/concurrent/ 深入浅出Java多线程
- 系统设计类&海量数据处理题:
- https://soulmachine.gitbooks.io/system-design/content/cn/
- https://blog.csdn.net/v_july_v/article/details/6279498
- 计算机网络:
- http://www.52im.net/forum-105-1.html 讲各个网络协议非常全非常透彻的
- 数据结构与算法:
- https://wizardforcel.gitbooks.io/the-art-of-programming-by-july/content/00.01.html 算法相关的总结,这里面的题目都很经典
- https://github.com/soulmachine/leetcode Leetcode题解,我当时就是先看了一遍再去写,熟悉一下套路,这样能节省时间
当然,还有很多其他的,分布式一致性协议呀,Linux内核呀,Linux性能调优呀,数据库引擎呀,这些都根据自己兴趣去看吧,考的概率不是特别大,就像前面说到,没有人能准备完美去面试。
## 7.题外话
我希望将来想在技术路线上发展的女生能找到可以一起同行的好朋友,希望能帮助你们在技术路线上树立信心,所以我搞了个群,技术女生互助群,**只限于想找实习/工作的女生加入。**
**希望加群的女生可以站内我。** 男生可以问问题但不能加群。
并不是歧视男生,只是男性的基数实在太大,一旦开放男性加群,男生的声音将远远盖过女生的声音。且男性社群的基调也和女性社群基调有所不同,希望各位学弟学长能够理解。
谢谢大家。
这是一条镜像帖。来源:北邮人论坛 / job / #2128295同步于 2021/3/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Job机器人发帖
【心得】果园本科生找工作经历
gwgwgw
2021/3/22镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。