本文
前往“校招VIP”小程序,访问更方便

双非本科生的春招体验

小拿 04月12日

本文转自:知乎


前言

思来想去,还是觉得有必要把自己这一路的经历写出来给小伙伴分享分享,也感谢身边人对自己这一路来的帮助。


首先自我介绍一下,本人非科班非211渣本,电子科学与技术专业,电子、光通信方向,真是偏的不能再偏了。从七月初到九月底,秋招历时三个月。最后拿到了海康威视Java开发和涂鸦移动软件工程师offer,也还算幸运。


谨以此文记录我的校招经历与感悟。同时祝还在一线奋战的各位都能尽快找到自己满意的工作!


春招体验

大一学C语言,大二学了点C++、数据结构、基础算法、设计模式、数据库。大三开始接触Java,从2017年2月底开始,就在牛客上寻找内推。美团、阿里、网易、京东、腾讯等等,只要讨论区有的招聘信息,能投的都投了。


当时框架还没学,简历上还是用着一个servlet+jsp+jdbc的某某系统充数。最后也还算幸运,接到了阿里的面试电话。人生第一次正式面试,太惨不忍睹......


蚂蚁金服-研发实习生JAVA一面


1.做一个两到三分钟的自我介绍。(一分钟不到就介绍完了....)

2.从下往上说一下OSI七个分层?

3.TCP、UDP属于哪个层?有什么区别?

4.FTP在哪个层?

5.说说SQL中连接(join)?

回答了inner join和outer join,又说了left join与right join和区别,然后他又问我那inner join呢?(当时直接卡壳了,一脸懵逼,无奈放弃回答,后来想想也真是好笑....)

6.说说数据库事务?

7.了解数据结构吗?单向链表概念及特点?

(突然抛出什么是链表?有点惊讶,这问题也问得有点简单了吧?难道有什么坑?)

回答:链表就是带着指针的结构体,含数据域和指向下一个节点的地址。

8.头部和尾部有什么特点?

答:头部没有前驱节点,尾部指向NULL??增删快于数组,遍历慢于数组??

9.HashMap原理

底层是数组加链表实现的哈希表。允许null作为键,null作为值。线程不安全。

10.说一本印象深刻的书?回答《深入理解Java虚拟机》

11.方法区里存放什么?

12.怎样判断是否需要收集?

13.什么可作为GCRoot的对象?

14.说说红黑树这个数据结构?

15.你都用过什么框架?

(如果再问我一次,打死也不会再说Spring了,只是看博客学过压根没用过,最后只能磕磕绊绊,不知所云......基本上这块就知道自己要gg了)

16.学习编程的方法、渠道?(看博客,网站)?上哪些网站?

17.看过GitHub上的开放源码、项目吗(比如阿里,腾讯团队的)?

讲了讲druid,当时还是背readme文件的


面试持续30 分钟,毫无悬念的gg了。春招虽然积极热情,但是当时水平有限,身边也没有小伙伴一起互帮互助。其余的一些公司需要笔试的最后也是因为基础太弱都没过。后来转变战略放弃校招实习,开始在实习僧上投散招了,原因是可以避免笔试......期间经历了几个电话面试,慢慢总结了一些经验。


翼展科技(西安)有限公司(研发实习生offer)


于是一个月快速学完框架,做了一个ssh的玩具项目。那时候四月底,大多数公司春招也已经结束,只能投本地小公司,最后面试了翼展科技(西安)有限公司并拿到研发实习生offer。这个时候面试基本上不会太紧张了。


技术面:

1.做一个自我介绍。

2.数据结构了解多少?说说B+树。

B+树的应用如我们所熟知的MYSQL索引实现。balaba...感觉最后说了不少,但是没突出重点。

3.了解JDK源码吗?说说ArrayList和HashMap?

因为这是本人中简历中标出的两个,所以被针对性提问。

ArrayList实现List接口,底层是由数组实现,随机查找速度快0(1),插入和删除因为要移动数组元素所以效率慢。

HashMap实现Map接口。底层是数组加链表实现,线程不安全,允许存储Null键值对。装载因子0.75.

4.项目中使用什么ORM框架?

Hibernate

5.Hibernate和Mybatis如何比较?

Hibernate封装的功能完全,不需要手写SQL语句;Mybatis索引效率快,要手写SQL语句,但该特点可实现有针对性SQL优化...

6.说说Spring AOP?

面向切面编程:如声明式事务、日志等功能

7.IOC呢?

解释依赖注入。
之前程序员可通过new创建新实例对象,但是Spring可向容器索取使用注解:@Autowired...

8.注入方式都有哪些? 

9.说说线程。什么是线程什么是进程? 

10.项目中有没有用到线程相关的,如何解决的? 


HR面:

1.能实习多长时间 

2.什么时候能到岗

3.每周到岗的时间安排  

4.学校的安排,然后闲聊了别的


总体上难度尚可,但是之前还是没摆正自己的位置,低估了本地公司的面试难度。

个人的知识点线还不是很完善,虽然说面试不会再出现紧张说不出话的情况,但是知识点准备的不充足,仍然会很影响面试结果。很多东西知识会用,但是没有深究其原理:


(1)Spring IOC,AOP 途径:github上找到spring开源库查看源码,技术博客总结
(2)框架应用的区别比较.用词还应更专业,途径:多看看技术博客,学习别人的总结
(3)数据结构。基础数据结构基本没问题,但是各种树,尤其应用底层的数据结构,应该好好去了解。途径:《算法4》、技术博客
(4)项目介绍的流程还应更加规范,多去深究底层原理。只会用不会说也很尴尬...
(5)SE基础:集合类、线程

最后一点最重要:摆正自己的位置! 


进去之后,发现是C#后端开发,但是本着学习的态度,既来之则安之。后来研究公司项目源码,参与到项目中。公司里福利不错,零食饮料、免费健身房,组里大佬也很耐心指教,同时认识了几个小伙伴,很棒的一段经历!

回复

Bury

03月31日

清晰直白,真不戳

0 0

小小

01月19日

收藏不息,战斗不止

0 0

coderpwh

09月13日

可以把所有资料打包,发给我嘛?

0 0

博客园

09月12日

我想咨询下,如果是做产品经理,考研可以考哪些相关专业

0 0

兔兔

09月03日

这文章真的很棒

0 0