2020年非科班生的跳槽之路(快手,拼多多等12家大厂Android岗)

2020年非科班生的跳槽之路(快手,拼多多等12家大厂Android岗),第1张

概述前言:最近了解到朋友因为学习起来感觉有些乱,没方向感,他特意挑了难一点的大厂找找找虐,他说这样才有意义嘛!还跟我说什么怀着进大厂的梦想,先去试试水。结果嘛就被虐得体无完肤,于是我就问他都有些什么内容,然后做了以下的总结。(下列都以第一人称叙述)涉及的企业有:阿里、快手、转转、 前言:

最近了解到朋友因为学习起来感觉有些乱,没方向感,他特意
挑了难一点的大厂找找找虐,他说这样才有意义嘛!

还跟我说什么怀着进大厂的梦想,先去试试水。

结果嘛
就被虐得体无完肤,于是我就问他都有些什么内容,然后做了以下的总结。(下列都以第一人称叙述)

涉及的企业有:阿里、快手、转转、用友(较简单,不做展示)。还有一个企业不记得名称了(纯业务的面试,没印象)


快手

面试的话是 下午2点到4点面试连着两面,然后hr最后说结果会在几天之内反馈。

这个面经不全,因为现在有的问题已经想不起来了,尤其是没答好的问题可能更记不住了hhhhh

4.11面试,4.13拿offer

一面(一小时)

AndroID问题:

1.详细的讲下VIEw的绘制过程

2.使用过哪些动画,属性动画和VIEw动画的区别在哪里,VIEw动画的原理(ValueAnimator和ObjectAnimator的区别)

3.Activity的生命周期,启动模式,区别在哪,讲下各自的应用场景。

4.Fragment的生命周期

5.Service的生命周期

6.进程与线程的区别

7.在项目中使用过多线程么

Java问题:

1.HashMap(因为我写过相关文章,这个问题答了蛮长的一段时间)

2.java gc算法

3.常用的线程池,以及线程池的各个属性的含义

4.四种引用类型的区别(可以结合内存泄漏去聊)

代码题

1.手写二分查找

二面(一小时)

AndroID问题:

1.事件分发详细的讲(三个核心函数以及整体过程),详细的讲下dispatchtouchEvent,子VIEw如何阻止父VIEw拦截事件,Action_Cancel什么时候会发生,一个应用场景:两个并排button,点击button之后,又移动到另一个button,但不点击滑动到外面会经过发生哪些事件。

2.Okhttp

Message.obtain()有什么好处,为什么不使用new Message(防止多次Gc)

4.linearLayout和relativeLayout的区别,优缺点,层级嵌套等等等

5.ConstrantLayout讲讲特点

6.性能优化在项目中做过哪些

7.读过哪些AndroID的源码

8.broadCastReceiver的源码看过么?

9.FrameLayout了解么?

代码题:

1.场景题,实现一个ActionMangager,其中包括 registeraction(String action, IActionCallback callback), unregisteraction(IActionCallback callback); notifyChange(string action)三个方法。类似于broadCastReceiver,一个action可能对应多个Callback,notifyChange中要回调action对应的所有Callback对象的方法。同时还问了怎么满足线程安全的问题等等,会根据代码继续问问题。

2.之字形遍历二叉树

拼多多

笔试

基于给定接口实现ImageLoader框架

一面

自我介绍静态变量和实例变量的区别重写equals()方法的注意事项;两个List是怎么判断是否相等的?Hashtable和HashMap的区别;是否允许键为null数据同步的方法;synchronized可以在对象上加锁吗?在方法上加锁是加在哪个对象上?进程间读写文件的同步方式了解哪些加密算法;AES和RSA的区别http响应码进程优先级;AndroID进程优先级如何使一个Service处于另一个进程中;进程的服务保活touch事件分发机制如何实现客户端长连接的?重试策略是怎样的?如何监控http请求的?提问问题

二面

三道题选两道大顶堆和栈的概念最短路径算法概念如何缓存http

HR面

也不能算是HR面吧,简单聊了聊。

项目介绍;担任的角色家庭情况;期望薪资在哪里实习?实习的时候拿到过哪些offer介绍了拼多多的待遇以及工作制度三面自我介绍;项目问了些如果安卓是单线程的,那么如何处理界面刷新和网络 *** 作两个模块算法题新美大

一面

自我介绍为什么选用Okhttp?为什么用MVP模式?ImageLoader的三级缓存怎么做的;Okhttp的磁盘缓存怎么做的?如何删除文章的广告之类的?有遇到不符合的情况吗?HashMap是线程安全的吗?HashMap线程不安全会造成什么现象?如何使HashMap变为线程安全的?Java的内存模型;GC;遇到过OOM情况吗?有什么可以检测内存泄露的工具文章列表用的什么什么控件?ListVIEw如何优化?RecyclerVIEw用过吗?和ListVIEw的区别应用中有几个Activity;VIEwPager嵌套Fragment怎么用,遇到过什么坑没?自定义view时自定义属性该怎么做?印象最深刻的项目,或难点

二面

自我介绍界面展示用的ListVIEw还是RecyclerVIEw?如何做文章的过滤的?如果改成别的网站需要怎么做?ImageLoader怎么实现的?内存缓存使用的是什么策略?项目中TCP+http+JsON是怎么回事?androID ui自动化测试实习的项目对Kotlin的了解;准备让用Kotlin写一个界面的给了一个布局,让说说看怎么编写了解啥新技术问问题

三面

自我介绍为什么选用AES加密?全程没聊技术,介绍他所在部门做的事情,问我感不感兴趣,我也提问了一些问题,聊得比较投机手上的offer

HR面

问了一些基本信息,手上offer情况,对薪资的要求。由于三面全程没问技术,心里比较虚。


附上简历中配置的个人技能熟悉常用设计模式:策略、责任链、单例、装饰者、代理、观察者、适配器、外观/门面研究过Mybatis3源码,熟悉sqlsession执行流程、熟悉一级缓存、二级缓存原理研究过Spring5注解方式启动Spring的源码,熟悉Springbean生命周期、SpringAOP底层原理、Spring事务底层原理、Spring循环依赖解决的原理研究过SpringMVC5的源码,可手动仿真SpringMVC框架研究过Springboot2的启动源码,熟悉Springboot核心设计理念,可自定义starter组件,熟悉@SpringBootApplication底层原理熟悉Java8新特性熟悉常用集合(ArrayList、linkedList、HashMap1.7、HashMap1.8、ConcurrentHashMap1.7、ConcurrentHashMap1.8)原理,并研究过源码可手写二叉树、了解红黑树旋转变色规则熟悉Nginx负载均衡、动静分离、反向代理、静态文件压缩原理了解网站跨域问题及其相应解决方案了解Nginx+Lvs+Keep-alive实现高可用的原理熟悉多线程(通讯、锁,CAS机制)、Java内存模型,可手写Java线程池熟悉Java内存结构,了解常用垃圾回收算法、垃圾回收器以及内存溢出和内存泄漏等问题熟悉Zookeeper使用,了解Zookeeper工作原理,分布式锁原理、分布式集群原理、选举策略、数据最终一致性原理。了解MysqL中的事务隔离级别和常见的锁(共享、排它、意向、记录、间隙、临键、行锁、表锁等)研究过Tomcat8底层源码,可在微服务架构下优化Tomcat8熟悉Netty框架,了解BIO、NIO、TCP/UDP原理,了解OSI七层网络模型,了解请求粘包、拆包原因和解决方案,了解序列化机制。熟悉SpringCloud框架,了解服务治理、服务注册发现、服务降级、熔断、隔离等Hystrix服务保护机制的原理,熟悉Ribbon负载均衡、Config配置中心、Zuul网关、Swagger接口调试熟悉Redis淘汰策略、事务、持久化机制、分布式锁、单线程高效、自动过期、与MysqL保持一致性等原理熟悉Redis穿透、击穿、雪崩、集群、主从复制、哨兵选举、cluster分片、动态扩容、缩容、布隆过滤器等原理熟悉常用消息队列RabbitMQ/Kafka/RocketMQ,了解其解决分布式事务,消息幂等,顺序消费,事务消息以及常用工作方式等原理
最后

如果说成功有捷径,那么一定是不断的积累与坚持,二本市场营销毕业,一点基础没有的情况下选择了自己喜欢的事情,前期遭遇了多少困难只有自己知道!还好结局没有那么不堪,努力是不会被辜负的,加油!

附上:我们之前因为秋招收集的二十套一二线互联网公司AndroID面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理AndroID复习笔记(包含AndroID基础知识点、AndroID扩展知识点、AndroID源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)


本文在开源项目:【GitHub】中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

如果需要pdf版本可以自行领取!

总结

以上是内存溢出为你收集整理的2020年非科班生的跳槽之路(快手,拼多多等12家大厂Android岗)全部内容,希望文章能够帮你解决2020年非科班生的跳槽之路(快手,拼多多等12家大厂Android岗)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1058019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存