# 校招准备
目标职位: java 工程师、大数据开发方向
[简历](熊饶饶-校招简历-0717.pdf)
[头像](我的头像.jpg)
## 1. 招聘信息
招聘信息的来源主要是学校的群和牛客网。
2018年秋季招聘信息:
公司|招聘类型|起止时间|备注
---|---|---|---
~~百度~~ | 提前批 | 7.8 -- * | 百度SER 线下面试
阿里巴巴 | 内推/网申 | 7.16 - 8.17 | [招聘官网](https://campus.alibaba.com/process.htm)
网易游戏 | 内推 | | [招聘官网](http://game.campus.163.com/2018/zhiwei/zaixian/yxchl/2018/06/25/29304_760507.html)
京东 | 网申 |
简历截止:8.30笔试时间 9.9面试时间 9.16-9.20 | [技术岗java](http://campus.jd.com/web/job/job_detail?jobId=561)
网易 | 内推/网申 | 内推时间:7.16-8.8 网申时间:8.9-9.5| [职位列表](https://campus.163.com/app/campus/recruitment4campus)
唯品会 | 网申 | 笔试9.15 面试9月中下旬 | [招聘官网](http://campus.vip.com/) 7月18已投简历
拼多多 | | | [招聘官网]
蚂蚁金服 | | | [招聘官网](https://mp.weixin.qq.com/s/6THqKtD1sUF2034ZZYi0hw)
百度智能云技术三部 | 内推 | | 内推邮箱:zhangchi25@baidu.com
Thoutworks | 内推 | | [内推链接](https://jinshuju.net/f/CcO2JA)
## 2. 面试记录
1. 2017.7.8, 百度SRE面试
面了108分钟,手机都快没电了,主要问的是项目,然后根据我的专业技能问了一些基础的东西。
(1) du 和 df 的区别
du 和 df的命令都被用于获得文件系统大小的信息;
du, disk usage, 通过搜索文件来计算每个文件的大小,然后累加,du能看到的文件只是一些当前存在的,没有被删除的。
df, disk free, 通过文件系统来快速获取空间大小的信息,当我们删除一个文件的时候,这个文件不是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已经删除的文件, df记录的是通过文件系统获取到的文件的大小,他比du强的地方就是能够看到已经删除的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了。
当文件系统也确定删除了该文件后,这时候du与df就一致了。
(2) kafka 组件
(3) HDFS读写文件等
## 3. 技术范围
1. 数据结构和算法
- 数据结构:
数组,链表,哈希表,堆,队列,栈,二叉树,B树/B+树,红黑树,图
- 排序:
冒泡,选择,插入,快排,堆排,归并排序,希尔排序
- 查找:
二分查找,红黑树,散列表,二叉查找树
- 并查集:
- 算法分析:
2. jvm
内存模型、垃圾回收、类加载机制
3. java web
tomcat servlet JSP cookie/session 等基本概念
4. 框架
Spring(AOP, IOC) MyBatis等
5. 数据库
基本SQL,索引优化,存储引擎(InnoDB, MyISAM),索引原理
事务ACID 隔离级别
分库分表,主从复制,读写分离
6. 计算机网络
OSI7 层模型和 TCP4层模型
传输层:TCP/IP 相关知识, UDP, TCP握手挥手
HTTP: 报文结构,POST/GET方法
网络编程:socket, NIO, select 等
7. 操作系统
linux指令
进程、线程区别
进程间通信方式
P/V 操作
磁盘调度,虚拟内存
死锁,中断
## 4. 学习路线
我自己的学习路线规划:技能的主线是 **Java 语言基础 -> Spring 框架开发业务 -> 分布式系统解决高并发,基础方面 算法,网络协议,操作系统**
概念性的程度:了解是啥,能够口述含义
使用的程度:可以熟练使用,比如调用 API,写 SQL 查询
原理的程度:能够讲清楚底层实现
提出见解的程度:从任意技术可以引申出相关技术,并能够分析联系和区别,提出自己的见解和体会
以上四种程度逐层加深,当然越深越好,通常前两种程度只能称之为“了解”;而写上简历迎接考核的,至少需要掌握到「原理」的程度。
## 5. 参考书籍
《算法》(第四版)图以前章节
《剑指 Offer》
《Java 编程思想》
《Java多线程编程核心技术》(高洪岩 著)
《Java 并发编程实战》
《深入理解 Java 虚拟机》
《Java 8 实战》
《鸟哥的 Linux 私房菜》
《MySQL 必知必会》
《Maven 实战》
《图解 HTTP》
《敏捷软件开发》
《架构探险-从零开始写 Java Web 框架》
《Spring 3.x 企业应用开发实战》
《Head First 设计模式》
《大型网站技术架构》(李智慧 著)
《大型网站系统与 Java 中间件实践》
## 6. 面试技巧