牛客大学第1期,神奇.瀚,准研究生,为了读研期间有更明确的方向,在入学前就开始面试,并且拿到了几家上市公司的offer。
牛牛,感觉今年秋招好难,虽然马上就要读研,但仍然非常担心毕业找不到工作
提前面试了几家,虽然也拿到了offer,但过程也是九曲十八弯,耗费了大量心神
通过这次模拟找工作,更坚定了我练习算法刷题的决心
神奇.瀚同学虽然本科就是计算机专业,但由于专心准备考研,并没有什么实习经验,能在面试中脱颖而出,更多的靠的还是扎实的基础知识和算法编程能力。
对于校招生来说,大家都知道,求职时笔面试考察的最主要的三部分就是基础知识、实习经历和算法编程能力:
基础知识不用说,你求职技术岗位,不管是不是计算机相关专业,基本的基础知识都是要掌握的
实习经历是加分项,但并不是每个人都能有机会获得企业的实习,当你不具备这一加分项的时候,最后一点的算法编程能力就是最最最重要,决定你是否能通过笔面试的决定因素了
算法编程虽然偏难,但却不像实习那样有门槛,只要你肯学习,付出努力,不断的总结练习,就一定会有提升,并逐渐成为你的长板,弥补实习经历的欠缺
多年的校招辅导中得出来的经验:建议想进大厂,拿高薪offer的同学按照上面饼状图中的比例复习,就可以打败90%的学生。
经过神奇.瀚同学本人的同意,我们把他笔面试备考的第一手资料,原原本本的发到这里,祝大家能早日获得名企高薪offer,也祝神奇.瀚同学学业顺利,开开心心!
渣本渣硕经验贴——Java
前言
首先非常感谢牛客这个平台为我们广大靴子提供一个学习、交流和求职的机会,让濒临绝境的“小菜鸟”看到了希望。为了读研期间有更明确的方向,在入学前面试了几家企业同时也拿到来几家上市公司的offer。
算法篇
笔面试常考算法我将用一张图
给大家展示然后再进行讲解:
不要看到上面那个图就被吓到了,你要记住你是找工作不是打竞赛,所以都是有套路的,那套路是什么的呢?刷题!刷题!刷题(不是瞎刷题,要有思想的刷题)用刷题来战胜面试中的算法面。看到这,那你们肯定想问到底怎么刷题呢?
首先你需要判断你属于以下哪类?
如果你是算法小白,那么我们不要着急,从看完帖子开始,我们抓紧去做贪心和思维题
如果你接触过算法,那么我们应该去拔高自己,去多做动态规划
如果满足上面两点,那我们就开始把上面那个图的题型都刷一遍
我们定位好了自己的水平,现在开始来刷题。
拿出一个知识点模块,进行模块化刷题,当刷的差不多的时候(这里只得你对每个模块有一定的感悟了)就开始成套题型练习。每次刷题的时候,如果看了题解那么我们就把这个题标记起来,隔几天就在回顾一下这个题,切记看了题解的题不要去抄写代码了。按照这个方法操作我相信你一定会从笔试一个题做不出来变为能做出来题。
我们应该在哪找这些题呢?
牛客为了助力大家找工作推出了牛客题霸,里面有很多高频的笔面试题,然后还可以给大家提供了标签选择,所以极大程度上帮助了我们选择题型,很好的帮助了我们模块化刷题,当我们模块化刷题结束的时候我们就可以去在牛客题库栏里面的公司真题进行套题练习了解各大企业的出题风格。然后利用休息时间我们可以去讨论区去看看面经积累一些面试常考的题。
唉看了这么多,你们心里肯定会想写着肯定简单啊,但是做着好难啊,你们在拼命刷题的路上肯定会说算法太难了,学不懂啊!!!(没关系我以前也学不懂,所以以前也报了牛客左老师的课程,虽然进行了一定的投资但是收货蛮大的)不过现在牛客的算法课更加细分了,你们可以按照你们的需求来进行报班学习,我相信只要认真学都会有收获的。
有想了解报名的同学可以加牛客茵茵老师微信:niukewang985,报我的牛客昵称(神奇.瀚)会有优惠的哦~
System.out.println("坚持看下去!!!!");
开发经验
初识
先对以后的工作有个感性的认识。目前企业主流使用SpiringCloud、SpringBoot。顶层设计包括数据库设计,系统架构交由架构师和高级工程师搭建。项目经理和产品经理在了解业务需求之后,就交给UI做原型设计。项目经理将业务细化过后分配给初中级工程师,最后前后端工程师对接接口规范之后就开始撸代码了。那么我们就先从小小码农开始说起吧
常用知识点
Java基础
关键字
变量类型
ArraLis、LinkedList、HashMap、HashTable、ConcurrentHashMap
Java核心语法
Java面向对象(继承、多态、封装)
集合框架
异常机制(非常重要的版块,异常处理没有做好的话bug漫天飞~)
Java常用Api
反射机制 (这个版块需要理解,后面的spring相关的框架都是基于反射机制而来的)
线程、进程(常考问题)
设计模式(这个版块不用太着急,慢慢修炼内功)
Java高级(jvm、并发、分布式锁、jni,nio)
数据库
数据库三范式(必考)
b树和b+树的区别
企业常用Mysql作为数据库,增删改查(必备),连表查询,索引,事物geli离级别,数据库优化
学有余力的同学可以去了解下noSql,比如redis,mongodb,hive。分布式数据库(加分项)
计算机网络
osi、Tcp/ip各层协议,每一层代表什么意思
三次握手、四次挥手
为什么三次,为什么四次,自己可以思考一下可不可以两个或者多次?
tcp、upd的区别(常考)
输入网址后了解从客户端到服务端的流程
网络状态码分别代表什么意思,2xx,3xx,4xx,5xx
cookie和session的区别
http、https的区别
推荐入门书籍《图解http》
操作系统
进程间的通信
进程与线程的区别
进程间的状态进程间的调度算法
什么是死锁、如何处理死锁
linux系统的常用命令
*加分项(cp、mkdir、mv、ps、ls、history、ifconfig、rm、find、ping)
项目管理
mavengitsvn
容器技术
docker
k8s
框架层面
Spring
什么是控制反转,什么是依赖注入。最最最基础的问题一定要记住
SpringMvc
理解RESTful风格url,理解前后端的数据交互,熟练使用常用的标签。这些标签都是必不可少的,下来一定多敲敲、理解理解
@Controller
@RestControoler = @Controller +@ResponseBody
@RequestMappping
@ResponseBody
@GetMapping
@PostMapping
@Request
Mybatis
理解实体类与数据库字段的映射关系,动手实现在xml编写sql之后(感兴趣的同学可以去了解一下Mybatis-plus,在Mybatis的基础上,进一步的封装,基础的sql语句在service层编写即可)
框架思维
MVC的思想一定要理解,为什么要分层,分层的目的是在于,每一层都要各行其事。controller层在于负责与前端的交互。service层负责业务的逻辑。dao层负责与数据库建立映射关系。
总结
程序猿这个职业活到老、学到老。学习工作之余注意保养。
必备书籍推荐《程序员面试金典》、《JVM虚拟机》、《程序员面试宝典》、《剑指offer》、《图解http》、考研408全书(也可以直接刷牛客网的线上考研题库,408和各个学校的也比较全)、《编程珠玑》、《深入理解计算机系统》、《TCP/IP 详解》、《程序员康复指南》
年轻人、且行且珍惜
业余时间大家可以利用课余时间来看看牛客大学公开课学习大佬的经验分享,然后多参加牛客竞赛签到抽奖(多划算做题还有奖品)
不想进大厂的程序猿不是好程序猿,想象一下这样的生活:大厂混几年,挣够了钱,然后去高校误人子弟多好
冲压冲压冲压、兄弟们、奥利给~~
渣本渣硕的兄弟们切勿妄自菲薄
不想当p8的程序员不是好程序猿
我期待大家 拿到offer
希望这篇帖子 能给予帮助
最后最后
while(life == true){
System.out.println("coding coding coding!!!");
}
点击阅读原文了解详细算法课程大纲
冲刺秋招备战春招,刻不容缓
▼▼▼
▼▼▼