点击“开发者技术前线”,选择“星标????”

在看|星标|留言,  真爱

作者:  前线小熙  | 责编: 可可   来源 :开发者技术前线 

刚好要到端午节前后,又是大家 面试的高峰期,本文是Java开发 小熙(妹子) 的面试分享。之前有分享过很多面试:拿到蚂蚁金服 offer,  我不去了。刷题一个半月,一口气拿下腾讯、华为、Oppo 、微软7个大厂offer,字节跳动薪资涨幅60%! 等。

为何要面试?

过完年回来 公司的项目很闲,很多人觉得没意思陆续跳槽走了,我也考虑到自己的发展,从3月底开始面,面到4月底,面了三十家公司,虽很累,但我从不打没准备的仗, 我是一个喜欢总结经验的人,每经过一场面试,我都会拿个本子记录下来,哪些问题是自己之前没遇到过的,或者哪些问题是新遇到的。通过一段时间的备战,面试,拿了几家offer ,最好的是头条和阿里,最终我入职了阿里。但让我记得深刻的是阿里面试官问我有没有男朋友。

 准备阶段

算法

  1. leetcodehttp://leetcode.com/

  2. careeruphttp://www.careercup.com/http://hawstein.com/posts/ctci-solutions-contents.html

  3. glassdoorhttp://www.glassdoor.com/index.htm

  4. topcoderhttp://www.topcoder.com/

  5. zojhttp://acm.zju.edu.cn/onlinejudge/

  6. july的博客http://blog.csdn.net/v_july_v/article/details/6543438

  7. mitbbshttp://www.mitbbs.com/bbsdoc/JobHunting.html

  8. pojhttp://poj.org/

  9. 杭电acmhttp://acm.hdu.edu.cn/

  10. codeforceshttp://codeforces.com/

  11. 复杂数据结构的讲解及实现GeeksForGeeks: 
    http://www.geeksforgeeks.org/

  12. 一个比较牛逼的coding challenge网站: 
    https://www.hackerrank.com/

Java基础

面向对象的特征:继承、封装和多态

int 和 Integer 有什么区别;Integer的值缓存范围

说说反射的用途及实现

Http 请求的 GET 和 POST 方式的区别

MVC设计思想

什么是Java序列化和反序列化;如何实现Java序列化;或者请描述

Serializable接口的作用

重载和重写的区别

进程和线程

线程和进程的概念

并行和并发的概念

创建线程的方式及实现

进程间通信的方式

说说 CountDownLatch、CyclicBarrier 原理和区别

说说 Semaphore 原理

说说 Exchanger 原理

ThreadLocal 原理分析;ThreadLocal为什么会出现OOM,出现的深

层次原理

讲讲线程池的实现原理

线程池的几种实现方式

线程的生命周期;状态是如何转移的

锁机制

什么是线程安全?如何保证线程安全?

重入锁的概念;重入锁为什么可以防止死锁?

产生死锁的四个条件

如何检查死锁

volatile 实现原理

synchronized 实现原理(对象监视器)

synchronized 与 lock 的区别

AQS 同步队列

CAS 无锁的概念;乐观锁和悲观锁

常见的原子操作类

什么是 ABA 问题;出现 ABA 问题 JDK 是如何解决的

乐观锁的业务场景及实现方式

Java 8 并发包下常见的并发类

偏向锁、轻量级锁、重量级锁、自旋锁的概念

数据库

DDL、DML、DCL 分别指什么

explain 命令

脏读、幻读、不可重复读

事务的隔离级别

数据库的几大范式

说说分库与分表设计

分库与分表带来的分布式困境与对应之策

说说 SQL 优化之道

存储引擎的 InnoDB 与 MyISAM 区别、优缺点、使用场景

索引类别(B+树索引、全文索引、哈希索引);索引的区别

什么是自适应哈希索引(AHI)

为什么要用 B+tree 作为 MySql 索引的数据结构

聚集索引与非聚集索引的区别

limit 20000 加载很慢怎么解决

常见的几种分布式 ID 的设计方案

  JVM

JVM 运行时内存区域划分

常见的 GC 回收算法及其含义

常见的 JVM 性能监控和故障处理工具类

JVM 性能调优

类加载器、双亲委派模型

类加载的过程

强引用、软引用、弱引用、虚引用

Java 内存模型 JMM

在对上面的内容做了准备后,我开始投简历面试,先从小公司开始面,小公司一般 1-2面技术,大公司 3-5 轮技术,一般都是一面基础,二面进阶,三面优化和场景,四面问规划,五面hr.

自我评估

面试自我介绍

本人没太多的优点,双非本科,只不过大学学的数学专业,逻辑还行,英语水平一般。

优势:

1 大学拿过奥数三等奖,ACM 大赛二等奖,当年的优秀大学生。

2 良好的沟通交流能力

3.较强的学习能力和逻辑思维能力

简历写上,自我评价潜力好!此处有装逼的嫌疑。

劣势: 
1. 16年毕业,经验不多,非常尴尬,上不上,下不下的情况。

2.毕业于双非本科,只要是本科就基本没问题,但有的公司要985.211的,并且还要30岁以内的。

3.前一家公司是传统行业,加入项目组时,项目稳定,每天就是有bug就修复,优化一下,其他时间就是学习的,聊骚各干各的,工作2年多跟在养老一样,每天都是 用一句话说就是编程5分钟,扯淡2小时,项目经验严重不足,很怕开发很难的需求。

这一点是最伤的,很多公司看项目经历,结果你告诉面试官我写的需求都是垃圾。

学习方式

我自己情况,项目和学历肯定无法加分的。我自己对此也有清晰的认识,因此我在平时抓紧空闲时间学习和复习技术点。

1.看面试题 
正常人第一步肯定都会看面试题,我也不例外,在看的过程中,我发现有些文章写的不错,对我帮助不小值得推荐 。

2.对问题深入理解 
在看面试题的过程,你会遇到一些自己没接触过的或者以前没深入学习过的知识,例如最常问的HashMap内部实现原理,这就促使你得开始去看jdk的源码或者是学习一些新的东西。看源码是很重要的一步,起步很难,但是会让你收益良多。

3.熟悉项目的代码和需求

把项目中不错的需求拿出来,看会,代码熟悉好,将整个功能的流程和涉及的东西吃透。项目是面试中必问的环节,一般是以一个功能点为基础展开问,因此你必须对这个功能有很深的认识,不能有模糊的地方。如果有时间,能把涉及到的知识点也搞懂最好。

4.网上做题和刷题
头条会远程面试, 一般会做题。建议去本文开头的一些刷题网站多做些题目。

5.总结记录 
把自己每天学到的内容记录下来,可以让自己更有动力的复习,技术是一个枯燥的过程,你必须让自己时刻保持有动力。

投简历、约面试环节

1.投简历渠道
BOSS直聘、猎聘网。拉钩等(一般不靠谱),找靠谱猎头也行。

2.简历不要海投 
为两个情况。 
1)没有社招面试经验:建议采取海投的方式,只要职位要求跟自己比较匹配都可以投,累计面试经验。

2)社招面试经验已经足够:投那些职位匹配、公司满意的职位。公司评价可以去看准网,企业查等。

3.投简历没下文
简历确实亮点不多,学历不好,项目不行,容易被HR给刷掉,因此他们看得最直接的就是你上家的公司和你毕业的学校,如果你不是从牛逼的公司/学校出来,可能会碰到和我一样的情况,应对的办法就是多投。

4.一天约几家面试合适? 
最理想的情况为2家面试,上午一般在10点左右,下午一般在2点左右。建议把理想的公司放下午,因为下午的时间比较充足,可以让公司更充分的了解你。我开始面的时候,每次都是上午面的不好,下午面的不错。

5.是否该裸辞? 
我一开始是边上班边投,然后利用调休时间,或者请假去面试。后来,面试机会越来越多,请假太频繁了,自己都不好意思了,并且自己也已经有足够的信心,这个时候我选择了裸辞。

裸辞还有一个原因是,在面试过程中你会发现,遇到公司要人紧急的,如果你的入职流程过长可能错过这个公司。

6.注意事项 
1)千万别迟到。 
2)做好特殊情况处理,带简历、充电宝、纸巾、伞。

面试现场

1 笔试常见的问题 
面试常见的问题上面给的面试题链接基本都有。

1 手写代码:手写代码一般考单例、排序、线程、消费者生产者 排序。

2 写SQL很常考察group by、内连接和外连接

 2.面试1-5面总结 

1)让你自我介绍

2)做两道算法题(刷题必中)
3)问Java基础知识

4)java 高级进阶就是我准备的那些
4)问项目中指责和做了什么
5)业务情景问题,例如:你的一个功能上了生产环境后,服务器压力骤增,该怎么排查。

6)对职业的规划
7)你有什么想问面试官

8)问期望待遇

      3.常问的知识要点
      1)集合相关问题(必问):

2)线程相关问题(必问):

3)JVM相关问题(必问):

4)设计模式相关问题(必问):

5)数据库相关问题,针对Mysql(必问):

6)主流框架相关问题:  
Spring的设计模式。 
Spring中AOP。 
Spring注入bean的方式。 
什么是IOC,什么是依赖注入。 
Spring是单例还是多例,怎么修改。 
Spring事务隔离级别和传播性。 
介绍下Mybatis/Hibernate的缓存机制。 
Mybatis的mapper文件中#和$的区别。 
Mybatis的mapper文件中resultType和resultMap的区别。

Hibernate和Mybatis的区别。 
Spring MVC和Struts2的区别。

Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的,其内部是怎么实现的。

7)其他遇到问题:

介绍下B树、二叉树。

IO和NIO的区别。

重载和重写的区别。

栈和队列。 
接口和抽象类的区别。 
int和Integer的自动拆箱/装箱相关问题。常量池相关问题。 
==和equals的区别。 
String和StringBuilder、StringBuffer的区别。 
静态变量、实例变量、局部变量线程安全吗,为什么。

try、catch、finally都有return语句时执行哪个。 
分布式锁的实现。 
分布式session存储解决方案。 
常用的linux命令。

终面

家里多少人?
有没有对象?

平时爱好?

看不看剧?

如何学习?

对象这块就如实回答了,我单身

Offer 流程

面试通过当然还有一些后续的环节

1)提交工资流水(大点的公司),学历,学位照片。

2)定薪

3)体检通知

4)背调 ,发offer。

5)入职材料 选择入职日期。

一些经验

1 .千万别裸辞,别裸辞,别裸辞 我同事裸辞了,2个月了到现在还没找到工作。

2.先投一些普通的小公司,等面出感觉了再去面大公司。 
3.自己不会的技术简历不要写

4.很多公司压待遇,期望待遇适当提高。

5.不要去实习期6个月还打8折的公司,除非你没有其他选择了,否则不要去。

6.不要去参加很多大大小小的招聘会,纯粹是浪费时间。 
7.把面试当作一次技术的交流,不要太在意是否能被录取。就当学习。

8.公司一般面完就决定是否录取了,让你回去等消息这种情况一般没戏,感觉良好也没用。
9.地方远的尽量通过电话面试,不然白跑。 
10.面试冲刺阶段,要保持每天学习,无论是学习新东西还是复习旧东西。 
11.无论好的坏的公司,先拿到offer再说,最后看看自己这个公司自己是否值得去。
12.通过面试体验和面试官的风格 可以大概判断入职团队的情况。 
13.拉勾投的简历很多会被筛掉,但是拉勾还是面试机会的最主要来源。 
13.理想的公司可以多投几次,不同部门要求不一样。
14.问到自己有深入研究过的知识,抓住机会好好表现,吹是必须的,不要轻易错过吹得机会。

15.大公司可以走猎头渠道,谈待遇靠谱一点。

学习交流,加”妹子“微信交流

END

后台回复“面试” “资料” 领取一份干货,数百面试手册等你

开发者技术前线 ,汇集技术前线快讯和关注行业趋势,大厂干货,是开发者经历和成长的优秀指南。

历史推荐

真香!红色警戒游戏源代码被开源了!

真香!我终于干掉了该死的 if-else...

丢人!华人高考状元,华科35岁软件工程师:因涉嫌欺诈150万美元抗疫贷款被捕!伪造文件开空壳公司…

美国官宣117000名 IT 人失业,真是史无前例!

看,官方出品了 Vue 编码风格指南!


http://www.taodudu.cc/news/show-4742323.html

相关文章:

  • C#使用HttpWebRequest下载文件
  • 计算机应用系统的基本特征是什么,B是计算机应用系统的基本特征.doc
  • 基因表达分析(上)- 差异表达分析
  • 基于深度学习的YOLO目标检测研究-附Matlab代码
  • QC管理工具
  • QC是什么
  • QC-LDPC简介
  • qc35 说明书_BOSE QC35
  • clean_code总结
  • 论文:TransVG: End-to-End Visual Grounding with Transformers
  • 《代码整洁之道》阅读笔记 2有意义的命名
  • Shell变量测试
  • Shell declare 变量声明
  • Shell expr
  • Shell 函数库
  • 互联网最坏的时代可能真的来了
  • 2019年一定要去缅甸看一看,景色美到让人哭
  • 游北海公园遇到一个特别有活力的大爷,感觉他才是年轻人
  • 技术的使用是好是坏,取决于我们如何负责任地设计和部署它们
  • R语言KMEANS均值聚类和层次聚类:亚洲国家地区生活幸福质量异同可视化分析和选择最优聚类数
  • 2023届毕业生职场第一步:挡飞刀
  • 什么是soft matting方法_宜家的娃娃为什么这么”丑“
  • 【java毕业设计】基于javaEE+SSH+oracle的健康管理系统设计与实现(毕业论文+程序源码)——健康管理系统
  • 企业做好私域电商的六大关键点
  • 2021年,企业做好电商的六大关键点
  • 最强整理:Java开发究竟该如何学习,大厂面经合集
  • 21个经典深度学习句间关系模型|代码技巧
  • 2021年,企业做好私域电商的六大关键点
  • 数字化转型时代,如何让你的 App 摆脱“内卷”?
  • 一线程序员与二三线城市的困局,他们不能没有性生活

面试阿里!妹子终面,阿里面试官问:有没有男朋友? 结果...相关推荐

  1. Android架构师经验谈:互联网寒冬,面试7家终获阿里Offer定级P6

    这次去阿里面试的是我老家的好朋友,我们之前都是一个项目组的,一起吃饭,一起洗脚,一起... 他们公司最近也裁员了,不过他是裁员前去的阿里,不知道谁捞到他简历了,莫名就走了流程,他莫名的就过了. 他想着 ...

  2. 妹子面试阿里,面试官竟问她有没有男朋友?面试真题「PDF分享

    刚好要到八月十五前后,又是大家 面试的高峰期,本文是Java开发 小熙(妹子) 的面试分享.之前有分享过很多面试:拿到蚂蚁金服 offer, 我不去了.身为技术专家的我,面试居然还要靠刷题?,刷了一个 ...

  3. eureka自我保护时间_阿里面试官问我:到底知不知道什么是Eureka,这次,我没沉默...

    文章首发:阿里面试官问我:到底知不知道什么是Eureka,这次,我没沉默 什么是服务注册? 首先我们来了解下,服务注册.服务发现和服务注册中心的之间的关系. 举个形象的例子,三者之间的关系就好像是供货 ...

  4. 【阿里面试官的抨击】大厂面试竟该这么答?| 面试竟有这些坑?| 面试该如何准备?| 如何学习知识点?

    前段时间,在和程序猿们闲聊的时候,碰巧聊到了一些面试题.于是乎,各路大神就开始大显身手(虽然没我啥事-) 当然重点还是,那位阿里的大神,无意间透露出来的面试要点: 事情是这样的: 在阿里,他们部门的面 ...

  5. 985硕士美女程序媛:10次面试的真实经历!阿里/携程/美团/58/华为....

    作者:倾听潮汐 来源:nowcoder.com/discuss/57771 # 自我介绍 本人妹子,985硕士,211本科,专业都是软件工程,一直投的是java后台开发,只投过一次网易的测试,技术不是 ...

  6. 测试人真实面试经历:十面阿里,七面头条,六个Offer

    本文转载自某论坛 @jkgeekjack 这是一篇很好的面试经验,转载过来,希望各位小伙伴可以借鉴. 01 面试者背景简介 双非末流一本,大三,CS(计算机科学)专业,有百度实习经历 02 面试情况 ...

  7. 如何准备阿里的社招技术面试

    如何准备阿里的社招技术面试 一般只有三面轮技术&非技术面试,不排除有四轮.每一轮间隔时间为10个工作日以内. 一面:技术面 一面一般是电话面试,不排除有远程笔试的可能性.面试官考察的点因人而异 ...

  8. 清华天才王垠受邀面试阿里P9,被阿里P10赵海平面跪,整个事件回顾...

    点击上方"视学算法",选择"星标" 来源 :开发者技术前线 知乎上有一个话题:如何评价阿里 P10 赵海平对王垠的面试?最近成了热帖,这下赵海平跟王垠这次是真的 ...

  9. 阿里、拼多多P8面试分享!

    本文来自:石杉的架构笔记 本文是 quiet 同学投稿的面试经历,恭喜 quiet 同学,拿下技术专家的职位! 自我介绍 先做个自我介绍,本人坐标魔都,13年毕业,工作6年,之前一直在互联网公司工作, ...

最新文章

  1. Java 泛型 T,E,K,V,?,傻傻分不清?
  2. CIKM 2020 | 如何更为合适地评测推荐算法? Top-N物品推荐算法评测设置回顾
  3. 如何用纯 CSS 创作一个精彩的彩虹 loading 特效
  4. 亚马逊AWS EC2云实例AMI安装LNMP环境(1)——Nginx安装
  5. codeforces 872 D. Something with XOR Queries(思维)
  6. python调用Linux下so文件
  7. WIN7系统中连接点(Junction Points)
  8. 【问链财经-区块链基础知识系列】 第三十三课 区块链溯源方案设计-中检集团区块链溯源平台
  9. 中文版GPT-2,可用于写小说、诗歌、新闻等
  10. sqlMapConfig.xml配置文件详解
  11. [转] 值得推荐的C/C++框架和库
  12. 乱码 问号 java_java 中文 乱码 问号
  13. html5效果案例,10个优秀HTML5网站案例赏析
  14. 一起来看流星雨在线观看/在线播放/全集下载/在线直播全集
  15. Learning Deep Structured Semantic Models for Web Search using Clickthrough Data
  16. 华为 QOS服务质量基础知识总结
  17. Stacked Hourglass学习笔记
  18. VR游戏开发干货教程:如何创建一个VR项目
  19. Python程序不使用函数将字符大写
  20. 实际开发中常用的SQL

热门文章

  1. python读docx文件_Python读写docx文件的方法
  2. Joplin利用TeraCLOUD进行WebDAV同步完美替代坚果云同步
  3. 只有华强北才能拯救诺基亚?
  4. 里程碑式突破!你好,元境的2022
  5. 基于电压型磁链观测器的异步电机矢量控制学习
  6. animation 只触发一次的解决办法
  7. 22届电工类应届毕业生想找工作?赶快点进来看吧!
  8. 使用yanderify搞个图片转视频(让大头照动起来)
  9. 怎样使用ping(转载请注明出处,谢谢!!!)
  10. putty远程登录不上,并行配置不正确,两招搞定