阿里、网易、拼多多公共技术Java研发工程师面经(offer)

图片说明

饿了么

一面:40分钟

  • 自我介绍
  • 无序列表内容
  • 简单介绍下项目
  • 无序列表内容
  • 项目中用到了Redis,Redis与MySQL的区别,Redis适用场景
  • 无序列表内容
  • 接口与抽象类的区别
  • 无序列表内容
  • Java异常体系画一下
  • 无序列表内容
  • HashMap的结构是什么样的
  • 无序列表内容
  • JVM垃圾回收算法有哪些
  • 无序列表内容
  • 设计模式了解吗,介绍几种
  • 无序列表内容
  • Http的报文格式是什么样的
  • 无序列表内容
  • Http的响应码有哪些
  • 无序列表内容
  • Http底层是什么协议,TCP/IP的四层模型画一下
  • 无序列表内容
  • TCP四次挥手画一下,TIME_WAIT出现在什么时候
  • 无序列表内容
  • Linux你常用到哪些命令,讲一下netstat
  • 无序列表内容
  • 堆排序讲一下思路,不用写
  • 无序列表内容
  • 有什么要问我的

一面的面试官一直笑嘻嘻的,问的问题也都非常基础,没什么难度。

二面:40分钟

  • 自我介绍
  • 无序列表内容
  • 介绍一下项目
  • 无序列表内容
  • 项目中有什么亮点或者难点
  • 无序列表内容
  • 项目中为什么用RPC而不是用HTTP,这两者有什么区别
  • 无序列表内容
  • Spring项目中如果注解和xml混用,是先加载使用注解的bean还是先加载xml中配置的bean
  • 无序列表内容
  • 不使用auto_increment,如何在java代码中实现对主键自增,需要考虑多线程以及分布式
  • 无序列表内容
  • HashMap的结构是什么样的,如何扩容的?
  • 无序列表内容
  • 对象锁知道吗?说说wait,notify那几个方法
  • 无序列表内容
  • 有什么要问我的?

HR面:30分钟

  • 家住哪里,有无女友,工作地点有要求吗,能否提前过来实习
  • 无序列表内容
  • 你的职业规划是什么样的
  • 无序列表内容
  • 现在在哪里实习,会考虑留在那里工作吗,为什么
  • 无序列表内容
  • 做过什么有挑战性的事情,详细描述一下,为什么要做,没有考虑过风险吗
  • 无序列表内容
  • 说一个你说服别人的经历,详细描述一下,怎么说服的
  • 无序列表内容
  • 有什么要问我的
  • 无序列表内容

HR很厉害,反应很迅速,面试节奏控制得很好,说话咄咄逼人,气氛比较紧张,并不是像别人说的聊天那样的轻松。

算是运气好呢还是不好呢,我被问到的问题都比较简单,感觉自己都白复习了。而且在基本没有问题被难到的情况下,并没有加面,可见面试评级并不高。HR很厉害,我都以为自己要挂在HR面上了。后来拿到offer之后也和自己想象的那样是个白菜offer。

阿里菜鸟

一面

  • 自我介绍(处女面,跑上楼时候已经气喘吁吁,甚至都不知道如何自我介绍,介绍了一分钟我尬场了)
  • 无序列表内容
  • RxJava、EventBus底层原理(一定程度是自己挖坑用过这些,然后让我跳的)
  • 无序列表内容
  • 如何自我实现一个网络请求框架
  • 无序列表内容
  • 用过React Native没。(自己用过Ionic,但是面试官没听过,Ionic在2015年相对较火)
  • 无序列表内容
  • 平时如何自我学习,2017 Google I/O大会讨论内容有哪些
  • 无序列表内容
  • MVP框架,如何用,怎么用。怎么解耦。跟MVC的差别

二面(莫名其妙的交叉面):

直接省略了自我介绍,问专业方向(GIS),问如何处理地理围栏

如何省电又能实时跟服务器端交互(我说的是AlarmManager+Service),一直传输位置信息给服务器。用了什么协议

由上面的扯到OkHttp底层原理

Http2.0与1.1有啥区别(由这里开始就炸了,完全没复习计算机网络,尤其还是偏背诵的知识的) 5. 有哪些二进制传输协议

那时候刚开始找工作,完全不知道复习知识点,好多都是迷迷糊糊知道,说就说不出来了。

拼多多(现场面。笔试4过3 )

一面(面试官都不太了解JAVA,我没看懂拼多多套路):

把笔试的题拿出来,问代码思路逻辑,比如为什么用TreeMap不用HashMap

如何对APP进行内存优化

项目的并发度多大,如何处理crash后的信息回传

计算机网络相关

二面

聊了下涉及到OpenGL的项目。以及OpenGL3.0与2.0的差别。

手撕代码:多叉树的后续遍历

其实感觉越是像拼多多这种有点无厘头的面试,虽然面试过程轻松,但是结果往往也都别在意。不是学霸批,HR说现在说最早校招时候出结果,估计就是没结果.

网易

刚回家5天,一条短信就从西安飞了回来,关键单程路费还不能报销,8.21号面试的,然后后面还有7天假期就瘫痪在了寝室,暑假算毁了还好有个offer安慰下一面(明显大佬级别):

你搞android应该也很了解Java的多线程吧,讲讲通过Handler为什么能够更新UI。(一开始我以为是谈谈Handler的原理,讲了一通,面试官对我说你讲的我都知道,然后一步步诱导,终于我说到了ThreadLocal,然后他说对。之后就稍微扯了下ThreadLocal)

根据简历,问自己要实现一个地图容器的话怎么实现。然后一步一步延伸下去聊到了View与SurfaceView

JNI/NDK开发如何使用,如何定义java文件与cpp文件中的方法(主要看是不是真的用过吧)

四种启动模式,用过哪些,出过什么问题。(包括聊到了onSaveInstanceState跟onRestoreInstanceState的场景与时机,然后在一个点跟面试官看法不同,我说我调试时候遇到过相关问题,面试官让我回去再确认下)

如何处理内存泄漏。也提到了简历中20000*20000大小的图片如何加载的

socket与Http区别,socket长连接断开了怎么办

在socket传输文件中链接断开了,怎么继续传输文件。引申到了如何断点续传

涉及到自己项目中用到的优化方案与策略,尤其针对图片的

看到用过GreenDao,问有没有在一个事务中提交两种不同的操作。(觉得应该是说一个事务中,比如更新一张表中的一个Person记录,新增一条Dog记录)

MVP框架,混合开发相关面试官对我的总体评价:用过的开源库不少,为什么不自己写呢(哎,尴尬)。问了能不能实习,然后留了简历做了个记录就下面一轮面试了

二面(是个帅小伙,我当时以为自己一面跟二面顺序反了):

自我介绍

Handler机制

如何自己实现线程池。线程池内的队列如何管理。线程池大小N的话,连续push进来M个的任务(M>>N),如何处理,比如20大小的线程池扔进来10000个任务

个人方向偏移动GIS,跟地图打交道比较多,谈到了遥感影像(也就是稍微大点的图片啦)缓存置换、回收策略。面试官让详细讲了一遍,涉及到 的点是LRU跟Java的几种引用,一些数据结构。问内存缓存怎么做的,K-V对设定,提到了类似Picasso中,需要本地处理旋转,但是URL一样的 时候,K值的设定方式

OkHttp底层原理,TCP的三次握手四次挥手全流程(画了每次握手挥手时候的报文内容与控制位设定)

还看过哪些源码(我说看过EventBus,貌似面试官也不想问了,笑眯眯的说你去等HR面吧)

全部评论
大佬拼多多算法4过3求学习方法
点赞 回复 分享
发布于 2020-10-18 11:59
拼多多发offer了吗
点赞 回复 分享
发布于 2020-08-25 19:32

相关推荐

03-29 18:59
运城学院 Java
程序员小白条:咱们要对自己的简历和学历有清晰的认知,不要动不动就大厂了....都26届了,没实习还想着大厂,唉
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务