一、介绍

时间:

  • 实习:每年3-4月,时间越来越提前
  • 秋招:7月开始,会到12月,但是但部分公司在9月中下旬就已经招聘满了,所以尽早准备,尽早投递
  • 春招:秋招补录,针对公司内空余岗位进行招聘,招聘岗位较少,数量不定。

岗位查询:

  1. 牛客网:https://www.nowcoder.com/
  2. Boss直聘、智联招聘、脉脉等App
  3. 各个工作交流群
  4. 公司招聘官网

各个岗位介绍:

  1. 算法工程师:主要负责对现有算法的优化,算法设计等,要求较高,大厂一般要求是顶刊论文
  2. 后端工程师:有java、c++、go、Python工程师等,主要是负责后台的相关工作,负责具体系统的实现,数据库操作等。
  3. 前端工程师:主要负责页面的实现,现在是大前端模式,不仅负责网页的实现,还负责小程序以及App页面的实现等。
  4. 测试开发工程师:针对于新编写的程序进行测试。
  5. 大数据工程师:可以从事对大量数据的采集、清洗、分析、治理、挖掘,并对这些数据加以利用、管理、维护和服务的相关技术工作(百度来的)。
  6. 等等

互联网大厂:

(不按顺序,想到哪个写哪个)
腾讯、阿里、字节跳动、美团、百度、微软、谷歌、亚马逊、京东、快手、网易、新浪、小米、shopee(虾皮)、滴滴、拼多多、陌陌、华为等等。

最后的选择:

并不是所有的互联网部门都是一样的,有的是好部门中的有差组,有的是差部门中有好组,具体判断需要问问里面工作的员工。可以带脉脉上看看,要理智的看,脉脉上有的戾气还是挺重的。
建议不管是实习还是秋招,多投几个公司,拿到offer后,再根据部门的方向、氛围和自己的意向等,选择合适的公司。(拿到多个offer可以argue一下薪资哦)

二、准备

招聘流程:


简历投递 → 简历筛选 → 笔试 → 面试(面试轮数不定)→ hr面 → 发放意向 → 谈薪 → 发放offer → 签订三方

简历投递方式:

  1. 内推:将简历给公司内部员工,他们会把简历给对应的组,减少简历筛选阶段。需要注意,有些人为了赚取内推费用,会大量的推送简历,不会认真辨别是否是符合该岗位,建议把简历给靠谱的内部员工。
  2. 官网投递:各个公司在招聘季节都会在自己招聘网站上发布招聘信息,到对应的页面就可以投递简历。
  3. Boss直聘等:会在App内上传简历,很多公司也会在这些上面发布招聘信息,可以关注,注意辨别真假。

考察内容:

  1. 基础知识:操作系统、计算机网络、数据结构与算法、数据库MySQL、语言基础(java、c++等)、高并发、以及各种八股文等。
  2. 项目:自己做过的项目,负责的部分、遇到的困难以及如何克服的,项目中还有哪些需要改进等等。
  3. 个人能力:思维能力、交流能力、应变能力以及想法。

Java工程师考察内容:

  1. java基础知识:例如集合的种类、ArrayList与LinkedList的区别、HashMap与Hashtable的区别等,各个数据类型的字节大小。面向对象编程的特点、接口与抽象类的区别等等。
  2. java虚拟机:内存的分布、垃圾回收机制、如何编译、锁竞争等。
  3. 框架:spring、springMVC的基本内容、IOC与AOP的基本概念、源码的实现等。Springcloud的相关内容
  4. 并发编程:多线程、锁、并发编程、分布式、分库分表等。
  5. 数据库:基本的增删查改,InnoDB的底层数据结构、优点,数据库中如何实现分库分表,日志的作用,数据库的特性、带来的问题以及隔离级别等
  6. 缓存Redis:基本的数据结构、缓存击穿、缓存穿透、如何实现集群的同步等等。
  7. 数据结构与算法:数组、链表、栈、队列、图、二叉树等。重用的排序算法的实现、时间复杂度、空间复杂度(快排经常考),二叉树的遍历、动态规划等。
  8. 项目:项目中应用的技术,项目中遇到的困难,以及如何克服的。项目中存在的问题,如何改进,如何让项目支持高并发等。
  9. 计算机网络:七层模型、访问网站的过程、http 头信息、http 状态码等
  10. 操作系统:内存、线程之间的通信、进程之间的通信、调度等。

机试:


主要考察基本知识的掌握,大部分是考察算法。算法考察采用ACM模式,与常用的LeetCode的模式不同,需要自己处理输入输出数据,建议提前熟悉。

面试内容:

  1. 基础内容,
  2. 项目:建议自己准备1-2个项目,最好是非常熟悉,会根据项目内容进行深问
  3. 实习内容,最好是有大厂实习,这个是加分项
  4. 手撕算法:一般是LeetCode 简单题 和 中等题,很少有困难题。
  5. 场景题:给你一个场景,问你的解决方法和思路等。
  6. 个人性格:考察你的个人性格、表达能力等,经常会问你的优点、缺点,你经历过最难忘的事情、你最自豪的事情等等。
  7. 面试常见的问题可以在牛客网上看到,可以提前到网站上看看相应的问题

常用的网站:

  1. 牛客网:https://www.nowcoder.com/:信息交流,招聘信息、面试内容等
  2. LeetCode https://leetcode-cn.com/problemset/all/ :刷算法题,建议把《剑指offer》和 热题100道 做2~3遍,大概总体做个300-500道题,掌握常用的算法。
  3. Codetop https://codetop.cc/home:收集了各个公司面试常考的算法题。
  4. 超级简历 https://www.wondercv.com/:用来制作简历,建议选择简洁模板,拒绝花里胡哨的模板
  5. JavaGuide https://javaguide.cn/home/:一个java的八股文总结网站,包含了大量的java面试考察内容。但是网站上的内容都是比较浅显的内容,需要深入,需要看书、看视频以及看源码。
  6. CS-Notes http://www.cyc2018.xyz/ :也是一个八股文网站,包含一些基础知识内容。
  7. 设计模式 http://c.biancheng.net/view/1317.html : 常见的23中设计模式,这个网站总结的很好,可以仔细看看

建议看的书:(无顺序)

  1. 《深入理解Java虚拟机(第3版)》:了解java虚拟机的内容,也是java工程师常考的内容。豆瓣地址:https://book.douban.com/subject/34907497/
  2. 《互联网轻量级框架整合开发》:主要讲述了Spring、Spring Mvc、Mybatis、redis的相关内容,用来回顾ssm的知识是比较不错的。豆瓣:https://book.douban.com/subject/27090950/
  3. 《Java并发编程实战》:讲解java并发编程的相关知识,比较经典。豆瓣地址:https://book.douban.com/subject/10484692/
  4. 《Java并发编程的艺术》:java并发的内容,里面会有一些错误,可以作为参考看一下。豆瓣地址:https://book.douban.com/subject/26591326/
  5. 《大话数据结构》:讲解常用的数据结构与算法,这个书作为入门还是比较不错的,建议将书中的算法用自己熟悉的编程语言重新实现一遍,收获会很大的。豆瓣地址:https://book.douban.com/subject/6424904/
  6. 《算法(第4版)》:主要是常见的算法,这个本书是比较不错的,就是有点厚,是一个经典书。 豆瓣地址:https://book.douban.com/subject/19952400/
  7. 《算法导论(原书第3版)》:(可选)这本书我没有看过,以后计划要看一下 豆瓣地址:https://book.douban.com/subject/20432061/
  8. 《数据密集型应用系统设计》:(可选)适合于大量数据的数据库设计,这本书可以了解一下,暂时不需要读。 豆瓣地址:https://book.douban.com/subject/30329536/
  9. 《Netty实战》讲解netty的基础知识和应用,netty是一个网络编程框架,很多中间件都是使用netty构建的。豆瓣地址:https://book.douban.com/subject/27038538/
  10. 《深入理解计算机系统(原书第3版)》:该书简称CSAPP,详细介绍了计算机的组成原理以及系统的实现,建议搭配视频观看最佳。豆瓣地址:https://book.douban.com/subject/26912767/
  11. 《计算机网络(原书第7版)》:经典书籍,讲解非常细致,建议观看,搭配视频食用更佳。豆瓣地址:https://book.douban.com/subject/30280001/
  12. 《图解HTTP》:以图的形式讲解http的相关内容,比较生动。豆瓣地址:https://read.douban.com/ebook/12054542/
  13. 《MySQL必知必会》:一个简单的MySQL小册子,包括常用的MySQL操作。豆瓣地址:https://book.douban.com/subject/3354490/

需要详细讲述的内容有?