美文网首页Android架构师Android开发经验谈
2019寒冬之下,作为一个android码农,是如何进入腾讯的?

2019寒冬之下,作为一个android码农,是如何进入腾讯的?

作者: 西柚9102 | 来源:发表于2019-09-27 21:02 被阅读0次

    作者:koller
    链接:https://juejin.im/post/5d67e134e51d4562043f5746

    When the snows fall and the white winds blow, the lone wolf dies but the pack survives ----- Ned Stark

    由于众所周知的原因,原生android开发如今已经日渐凋敝,作为一个Android程序员,不仅要会Java,Kotlin,JavaScript,Css,Html,还要会Flutter,C++,FFmpeg,Linux等相关知识。

    笔者从7月份开始面试,到8月中旬截止(因为腾讯已经面试通过,自己面试面的也累了,就决定去腾讯了) 接下来就说说各家的面试题,一共面试了快二十家公司,既有外包,也有中小型企业,也有准备D轮甚至上市的C轮企业,更有BAT等知名企业。接下来就一一说一下各家公司的面试题。 也建议各位面试的时候不要上来就直奔BAT等,大厂面试官的技术广度与深度也不是刚出来面试的你,能搞定的。最好先去一些小公司看看他们问的哪些东西,自己回去在查漏补缺一下,最后去大厂。 最后祝各位能进入自己心仪的公司。

    按照面试的时间顺序来一一罗列各家公司的面试题。(记忆可能出现纰漏,哈哈,各位看看就好,有些公司的面试可能比较常规,就没有什么特别的印象)

    武汉佰钧成(外包OPPO,自家面试官)

    因为是周六的专场面试,也不用请假,所以马上就参加了这家公司的面试。 两轮面试

    • Activity的启动流程
    • Activity的启动模式,应用场景
    • 如何减少对第三方框架的耦合
    • hashmap的基本原理

    博彦科技(外包OPPO,OPPO面试官)

    两轮面试

    • Handler机制
    • Binder机制
    • 写一个单例模式,DCL为什么要加V关键字
    • 直接在Activity Sleep 5000ms,再post一个runable会不会ANR。
    • 如何监听ANR
    • View的绘制流程,每个都是干什么的
    • 事件传递机制

    Insta360 (C轮公司)

    三轮面试

    • 组件化如何实现组件通信
    • HashMap基本原理 如何减少hash冲突 如何增大hash冲突
    • 安装包怎么优化的
    • 如果有A,B,C,D,E五个步骤,每个步骤都需要操作对应请求,用哪种设计模式。

    华为外包

    两轮技术面试

    • 安装包优化做了哪些工作
    • 对加班怎么看的

    本来一面完了就让我等着二面的,等了十分钟后跟我说二面面试官暂时不在,等下次再约时间,出门等了10分钟的公交,离家还有20分钟的时候,又给我打电话让我回去参加第二面,然后就没去了,太折腾人。

    绿网科技

    三轮技术面

    • hashmap原理

    • MVP,MVVM,MVC的区别是什么

    • Java Memory Model的内存模型

    • 如果让你设计一个app,打算怎么设计

    • JVM垃圾回收有哪几种算法,有哪几种垃圾回收处理器

    • Serial使用的哪一种回收算法

    • JVM的内存模型

    • Android主线程是怎么启动的

    • dex是如何转为机器码的

    • llvm编译是如何优化代码的

    • 说一个你自己的缺点。

    最终结果是这样的 哈哈,还是不能要太高

    [图片上传失败...(image-1845f3-1569589285005)]

    <figcaption></figcaption>

    同洲电子

    四轮技术面

    • Activity的启动流程
    • 静态类的静态方法能不能被子类重写(不能,走的invoke-static指令,只有走invoke-virtual指令的才可能实现多态)
    • Linux的启动流程
    • 对Native层有没有兴趣
    • 对做智能家居有没有兴趣
    • 招一个应届生进来做app也是做,招你也是做,为什么要招你

    顺丰科技

    一轮技术面 总共三轮面试

    • handler机制
    • looper的唤醒是在Java还是Native层,怎么做到的
    • HashMap,ConcurrentHashMap,HashTable有什么异同
    • Binder通信机制
    • 跨平台开发熟不熟悉
    • 如何提高海外用户的访问速度,假设服务器在深圳。
    • 如何学习一个新东西,有哪些执行步骤

    百度

    • 红包随机算法 是怎么做到的
    • 写一个二叉树的深度度优先遍历,递归 非递归
    • Android中LocalServerSocket是干什么用的
    • binder的Native层代码看过吗
    • Linux有哪些RPC机制
    • 为什么android使用了Binder机制没采用共享内存
    • 如果让你设计一套进程间通信的机制,你会怎么设计
    • Linux的模块动态加载机制是怎么实现的
    • 一个物理屏划分为三个逻辑屏,是靠谁来分发事件的。
    • ConcurrentHashMap是不是绝对的线程安全。(final,绝对线程安全,相对线程安全,线程不安全)
    • 线程池是如何管理线程状态的

    大宇无限(C轮公司 前身是豌豆荚)

    是我第二心仪的一家公司,办公环境,氛围,福利都好的一逼,可惜了 总共七轮面试 五轮技术面

    • Kotlin的访问权限
    • Koltin为什么比Java更安全
    • Koltin比Java好在哪
    • JVM的内存模型
    • JMM的内存模型
    • 为什么操作数栈是Thread-Private
    • 计算二叉树的深度
    • ArrayList跟LinkeList区别
    • ArrayList如何扩容的,如何提高ArrayList的效率
    • 动态代理静态代理区别
    • 启动优化怎么做的。
    • 如果给你个IOS APP,你打算怎么优化。
    • http有哪几种版本,版本间有什么区别。https跟http有什么区别。
    • apk为什么要签名,v1跟v2签名的区别
    • apk从编译打包都安装的流程
    • dex到odex为什么不能在编译期优化
    • 热修复原理
    • 你的优势是什么

    平安

    三轮面试

    • http2.0 1.1 1.0的区别
    • http如何保证安全性
    • 安装包优化有哪几种方式
    • 启动优化有哪几种方式
    • View的绘制流程,每个方法干什么的,如果要获取View的宽高,在哪个方法里获取
    • 如何应对弱网环境
    • android数据存储方式
    • 如果一个app无法访问网络,你怎么做数据存储。
    • DVM跟JVM的区别
    • React Native跟原生开发的优劣

    腾讯

    三轮面试 一面

    • 算法题 通电小球
    • Android 沉浸式状态栏 怎么实现的
    • 事件处理函数有哪几个,父View 子View 监听同一个事件,重写哪些方法。在哪个View重写?
    • ViewRootImpl接受事件吗?
    • apk编译打包流程 V1,V2 签名区别
    • 利用logging监听方法耗时,会不会让app增大延迟。
    • eventbus为什么要用CopyOnWriteList?
    • 插件化怎么加载资源的?
    • JVM怎么保证gc效率跟线程运行效率的 ?
    • 如果android没用对应的view,flutter能运行吗? 手写单例模式,volatile 跟 synchronized区别?
    • 接口暴露,但是不让别人调用,有哪些办法?

    二面

    • 为什么采用flatbuffer? 比Json好在哪里?
    • 如何处理Crash,NativeCrash呢?Google是怎么做到的?如果上报过程中再次产生Crash能不能捕捉到?
    • uncaughtException是被谁调用的,如果再次崩溃能不能捕获到?
    • Linux是怎么知道app崩溃的,如果想要在被kill前 做一些耗时操作,该怎么做?
    • 考虑设计一个crash捕捉模块。
    • 100万个数字求100个最大值。
    • 手写快速排序算法。

    三面 (GM面)

    • kotlin比Java好在哪里,是函数式编程吗?
    • 如何防止DNS劫持?
    • 如果让你实现一个调试器,你会怎么设计?静态调试?动态调试呢?

    总结:

    大厂基本上不太看重具体的技术,无论你是Java还是C++,比较看重思路与抽象的解决方案
    这些是我整理的面试解析专题文档。需要的小伙伴可以关注我,我的个人介绍栏有免费领取方式。

    bat面试专题集合.png
    Android高级视频教程.png

    相关文章

      网友评论

        本文标题:2019寒冬之下,作为一个android码农,是如何进入腾讯的?

        本文链接:https://www.haomeiwen.com/subject/obwauctx.html