春季实习生校园招聘总结
一、情况介绍
1.春招情况介绍:春招实习竞争非常激烈。国内知名互联网企业10家左右(阿里、腾讯、网易、百度、京东、美团、滴滴、携程、去哪儿、今日头条、唯品会等等),开发实习生岗位按300-400人来计算,总共也就3000-4000人左右,所以竞争还是非常激烈。
2.介绍本人情况:去哪儿网公司开发实习生。具备一定项目经验(i西科项目负责人),对服务器开发,数据库设计,计算机网络,java语言有一定的了解与认识。不足的地方也很多,数据结构与算法能力不足,对jvm了解时间太迟,对Mysql优化了解太少,计算机网络了解不够深入。
二、春招要求
1.目前大型互联网公司对应届Java研发工程师的基本要求是,熟悉Java语言、熟悉服务器开发流程(Linux环境下)、熟练使用ssh/ssm框架、具备良好的数据库设计与优化能力、了解计算机网络TCP/IP与HTTP等协议、了解操作系统、掌握常见数据结构和算法、了解常用设计模式等。
⑴Java语言。我们要掌握到什么地步呢?①了解HashMap与HashTable、ConcurrentHaMap之间区别与原理(看源码)
②了解LinkedList与ArrayList、Vector之间区别与原理(看源码)
③了解Java多线程,如线程同步方法(sychronize、Lock)使用方法与基本原理等。
④了解JVM,如Java内存区域、垃圾收集器、虚拟机类加载、Java内存模型等
⑤Java动态代理等
⑥还有非常多零碎的知识点需要自己去用心体会。
⑵熟悉服务器开发流程 ①了解web应用服务器(Apache、Tomcat、Jetty等)至少了解一个基本流程与原理
②了解服务器环境配置与部署(在Linux环境下)
③了解数据库连接池(druid)、线程池作用等等
④了解输入网址之后到服务器整个过程
⑤了解常见加密方式(MD5、SHA-1等)
⑶ssh/ssm框架 ①了解SpringMVC与Struct2区别
②了解Spring IOC、AOP等。
③了解SpringMVC请求流程
④Hibernate与Mybatis区别
⑤Hibernate、Mybatis与JDBC区别
⑷数据库设计与优化能力 ①数据库基本知识(存取控制、触发器、存储过程(了解作用)、游标(了解作用)
②基本数据库安全
③数据库优化能力(索引(了解其原理)、分区、分表以及SQL语句优化等)
④数据库设计,不多讲看看i西科和圈子表结构设计(满足三范式等等),多思考。
⑤并发控制(并发数据不一致性、事务隔离级别、乐观锁与悲观锁等)
⑸计算机网络 ①了解TCP与UDP区别,分别应用于什么场景
②了解ICMP协议、ARP协议等
③了解TCP协议(超时重传、流量控制(滑动窗口)、拥塞控制等等)
④了解HTTP与HTTPS区别
⑤了解常见网络攻击(SQL注入、DDOS攻击、重放攻击、DNS欺骗等等)
⑹操作系统 ①了解内存管理页面置换算法(LRU,Java中如何实现(LinkedHashMap))
②了解进程与线程区别
③了解进程间通信方式
④了解死锁与饥饿区别
⑤死锁的产生必要条件
⑥了解如何预防死锁(银行家算法、破坏条件等等)
⑦实现阻塞队列
⑧生产者消费者模型实现
⑺常见数据结构与算法 ①熟练掌握八大算法
②熟练掌握链表、队列、树实现
③能够实现栈与队列
④了解哈夫曼树、b+/b-树、红黑树
⑤掌握BFS/DFS、KMP、DP等等
⑥没什么捷径多刷题(剑指offer、Leetcode)
⑻常见设计模式
①单例模式(双检锁模式)、简单工厂、观察者模式、适配器模式、职责链模式等等
⑼加分项
①了解分布式缓存、Zookeeper、阿里dubbo、Nginx等
②了解NoSQL(Redis等)
③了解Hadoop大数据相关知识
总结:无论是春招还是秋招,运气和实力都非常重要。无论去哪里实习,只要初心不改,最终一定能够实现我们的目标。
剑尚未佩妥,出门便江湖。愿历尽千帆,归来仍少年。