开头

最近发现一些读者,留言提到跳槽面试的事情。当中,有几个编程老兵,说他们从事Android 开发多年,薪资却还在原地打转,跳槽升职不是很顺利,十分困惑。这显然是遇到瓶颈期。

就目前大环境来看,今年跳槽成功的难度的确比往年要高。一个明显的感受:今年的面试,无论一面还是二面,都很考验Android程序员的技术沉淀。

近期这里搜集了近 100 套阿里、腾讯、美团、网易等公司2019 年的面试题,把技术点梳理成一份大而全的“Android 架构师”面试题(实际上比预期多花了不少精力),包含知识脉络 + 分支细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

面试经历

网易游戏实习生招聘很神奇的是整个就一轮面试,HR面是不存在的。面试是视频面试,用的牛客网平台,大概面了一个小时多一点。面试主要就是把计算机四大专业课轮番问了一遍,问了Java语言基础,最后还问了一个算法题。四大专业课问的也就是那些基础问题,不过有些地方问的很深,基础的像问到了各种排序算法的最好、平均、最坏时间复杂度、线程和进程的区别、cache工作原理、计算机网络七层模型;问的深的像问到了进程中有多少个栈、线程中有多少个栈、阻塞是指进程阻塞还是线程阻塞、一台服务器上TCP和UDP监听端口号能不能相同、服务器80端口和客户端建立连接后会不会切换端口等。

Java语言基础这里有个小插曲,面试官没想到我不会C/C++(因为岗位介绍里面有写要会C/C++,但五个要求里只要求满足任意两个就可以投递)只会Java和Python,于是他就只好问了一些Java语言基础的问题,比如Integer和int的区别、GC的工作过程等;还问了Python的装饰器的原理,我就说了说面向切面编程相关的;最后面试官觉得不问C/C++不行,然后问我知不知道C/C++里的虚函数,被我一口回绝了。

最后问了一个字符串循环移动的算法题,算是一个经典题目了,直接口头说三次翻转就好了。最后问了面试官说岗位介绍里要求会C/C++,但我看招聘网站介绍里有提到Python,实际中是用哪些语言呢?面试官说C/C++主要用在游戏引擎那块,开发主要还是会用Python。虽然整个下来有些题没有答上来或者答错了,但整体来看还是答的很好的,反正对我来说已经发挥到极限了。面试完就感觉这个offer基本要到手了。

等了两周多才收到了网易游戏的offer, 但也算是我实习生招聘收到的第一个offer,也是很有分量的一个了,自此我的实习生招聘就有底气了。

腾讯

腾讯正式批次有统一的笔试,笔试用的北森的系统,奇烂无比,编程题测试用例要自己写,考试的时候线上编译器竟然还坏了。另外腾讯的题目也很奇葩,我一个Android开发选择题里十题就有九题是C/C++和Obj-C,简直是蒙着眼睛在选。不过幸运的是腾讯向来以笔试不刷人著称(我周围的几乎全都过了腾讯的笔试,但根据我之后在腾讯的leader说,其实还是有分数线的),笔试过了一两周就收到了南京现场面试的通知,在南京水游城假日酒店,部门是深圳SNG的增值产品部。

面试经历

正式一面大概40分钟,主要就是照着我的简历里的项目问,时不时拓展到计算机基础。和Android相关的似乎并没有问,拓展到的计算机基础知识比如就有HTTP是基于TCP还是UDP的、虚拟内存的意义和工作过程、死锁产生的条件等,问的很多,但都很基础。最后还问到了我简历上写的Android相机开发系列博客文章,问我怎么想到写文章分享的,我说因为自己就是这么踩坑一步一步走过来的,希望能帮到新手能少踩点坑,他表示赞同。最后他问了我一个算法题,就是链表转置,正好我前一天晚上刚看了的,就一口气写了出来。最后我问了面试官他是哪个部门的(因为我正式批还是投的上海IEG),面试官回答说是SNG的增值产品部。因为回答的很好,跟面试官全程有说有笑,所以感觉一面十拿九稳了。后来实习的时候,这个面试官就是我的leader了,也就是带领大约10个人的Android开发组组长。

一面当天晚上就收到了二面的通知。正式二面大概40分钟,主要让我介绍了我的项目,又出了几个题让我做。项目就是让我介绍我科研做的那个流式二维码数据传输系统,我介绍的时候面试官听的很仔细,让我详细介绍了拍到的二维码是如何定位、采样和识别转换成二进制流的。然后问我传输速率是多少,我大概说了个数结果面试官拿笔在算怎么得到的,然后出了点岔子,传输速率就算是理论值都达不到我说的数,场面一度十分尴尬,不过还好我说后来我们用了彩色二维码,传输速率成倍提高了,他也就没有继续追究。然后面试官问了我内网设备访问外网服务器的访问过程,我就仔细解释了NAT的工作原理。

然后问我假如现在有很多手机号,给出一个手机号如何能快速查找到这个手机号是否已经存在,我就用笔和纸仔细解释了Trie树;然后他问我为什么不直接用Hash,我又用笔和纸跟他详细说了Trie树相比Hash是如何节约空间的。最后他问了我一个概率题,大概就是三个蓝球一个红球求任意拿两个球只有一个红球的概率,初中的古典概型题;然而我当时脑袋抽风了竟然想不出来,就跟面试官说我穷举可不可以,他说能做出来就好,于是我就真开始穷举了,然后面试官就看不下去了,说你这么做要做到什么时候;不过在脑袋空白了几分钟后还是慢慢做出来了,有惊无险。

最后他就问到了我拿到了哪些offer、女朋友在哪、想在哪里工作、介不介意去深圳的问题,我说我更想去上海(因为腾讯在上海有分公司),实在不行也能去深圳。然后面试官就打电话给HR问后面的面试流程,听电话里大概意思是还有HR面,但HR明天才到南京。这时候我感觉二面也十拿九稳了,于是趁最后的机会直接问面试官说“不能今天就直接HR面吗”,面试官也老实回答说HR明天才到,安排你明天HR面。后来实习的时候,这个面试官就是我们的部门总监了,就是我leader的直接上级。

风平浪静中等到了第二天的HR面,让我见识到了套路可以玩的有多深。HR开始就跟我说,面试过程中可能她会看电脑敲键盘,但这并不代表她没听我说话,只是她在做面试记录而已。然后HR面开始,先自我介绍,然就就是问一些常规性的问题,比如生活中遇到的困难之类的。然后问我知道腾讯的哪些产品,让我说出十几个,最后简直都要说的山穷水尽了。然后问我最近在看哪些书,我说在看设计模式,然后简单介绍了下说有十几种设计模式,对我写代码能力有很大帮助;然后她问我具体有多少种,我说12种吧,然后她就让我说出这12种!于是她步步紧逼,我绞尽脑汁想,也只说出了8种,最后她妥协了,说“那就认为你是真的看了的吧”。

然后问我有哪些offer,我说有网易游戏offer在路上了,她就问我怎么看待网易游戏的offer、杭州和深圳怎么考虑,我当然是夸奖了腾讯一番。然后她问我可不可以看看我的手机上有哪些APP,然后我把手机给她,她仔细滑仔细看,最后也没说啥(当时我手机上腾讯的APP似乎只有QQ和微信,网易家的倒挺多,但是没有游戏)。总之呢,当时的气氛真是难以形容,就像一眼就被HR看穿了,根本躲不了。最后问了HR说最早啥时候有结果,HR说要等大概两周,等全国的线路面试结束回深圳了才会作出决定。

后来就是等了不到两周就收到了腾讯的实习offer,不过当时也已经收到了网易游戏的offer,然后纠结的觉都睡不好,这个后面再说。

最后

答应大伙的备战金三银四,大厂面试真题来啦!

这份资料我从春招开始,就会将各博客、论坛。网站上等优质的Android开发中高级面试题收集起来,然后全网寻找最优的解答方案。每一道面试题都是百分百的大厂面经真题+最优解答。包知识脉络 + 诸多细节。
节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
给文章留个小赞,就可以免费领取啦~

戳我领取:3000页Android开发者架构师核心知识笔记

《960全网最全Android开发笔记》

《379页Android开发面试宝典》

包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

如何使用它?
1.可以通过目录索引直接翻看需要的知识点,查漏补缺。
2.五角星数表示面试问到的频率,代表重要推荐指数

《507页Android开发相关源码解析》

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

腾讯、字节跳动、阿里、百度等BAT大厂 2020-2021面试真题解析

资料收集不易,如果大家喜欢这篇文章,或者对你有帮助不妨多多点赞转发关注哦。文章会持续更新的。绝对干货!!!

k7wL1fJ2-1620610365848)]

资料收集不易,如果大家喜欢这篇文章,或者对你有帮助不妨多多点赞转发关注哦。文章会持续更新的。绝对干货!!!

2021年是做安卓开发人员的绝佳时机,知乎上已获万赞相关推荐

  1. 2021年是做安卓开发人员的绝佳时机,经典好文

    面试如作战,我们看战争影视剧的时候,经常看到这些剧作往往主要聚焦于作战过程.战场战略,对战前准备给的篇幅往往很少.实际上,战前准备也是关键的一环,没有充足的粮草.车马.兵器的准备.别说赢得战争,投入战 ...

  2. 2021年是做安卓开发人员的绝佳时机,成功入职阿里

    本篇将由 环境搭建.实现原理.编程开发.插件开发.编译运行.性能稳定.发展未来 等七个方面,对当前的 React Native 和 Flutter 进行全面的分析对比,希望能给你更有价值的参考. 前言 ...

  3. 2020年是做安卓开发人员的绝佳时机,android开发面试自我介绍

    你这样做仅仅是准备好一个开发环境去构建安卓App,但是你还得去准备好基础和基本知识来理解安卓开发和大多数教程使用的通用术语 你现在也可以在安卓系统上构建基本的App,并且可以开发一些功能.随意使用空白 ...

  4. 2020年是做安卓开发人员的绝佳时机,android游戏开发入门题大学题

    学习REST和HTTP - 大多数专业开发都非常擅长理解REST和HTTP的所有特点 学习如何利用多线程 1.学习如何将耗时操作移出主线程 2.线程的重要性 3.学习提供的帮助你在最短时间内最大限度地 ...

  5. Http详解,2021年是做Android开发人员的绝佳时机

    浏览器发送的请求消息中,就会包含Host请求报头域,如下: Host:www.guet.edu.cn 此处使用缺省端口号80,若指定了端口号,则变成:Host:www.guet.edu.cn:指定端口 ...

  6. 美团Android开发工程师岗位职能要求,知乎上已获万赞

    前言 说起程序员人们的第一印象就是工资高.加班凶.话少钱多头发少.再加上现在科技互联网公司太吃香,bat.华为小米等公司程序员加班情况被广泛传播,程序员用生命在敲代码的印象刻在了很多人的心里. 与其它 ...

  7. app安卓开发教程!Kotlin可能带来的一个深坑,知乎上已获万赞

    前言 从2010年开始Android市场开始需要大量的Android开发人员,招聘市场上也开始大量招Android开发人员,大量java开发者开始学习Android开发,招聘市场面试要求上只要有一定j ...

  8. web页面开发,一个前端妹子的面试笔记,知乎上已获万赞

    前言 年前准备换工作,总结了一波面试最频繁的面试问题跟大家交流.此文章是关于浏览器的常见问题,大概面试10家遇到6家提问类似问题(主要是大厂和中厂).目前入职滴滴出行成都团队. 面试前的准备 在这部分 ...

  9. android高级开发面试!一次哔哩哔哩面试经历,知乎上已获万赞

    Android面试相关整理 最近有一点找工作的打算,想补下面试题.但是发现网上面试相关的文章特别多,不知道从何看起,所以简单的总结了一下我有印象的一些,方便自己随时查看,本想带下个人评价,但有些没有仔 ...

最新文章

  1. [知识库分享系列] 三、Web(高性能Web站点建设)
  2. Android华容道之一步一步实现-2-图片分割
  3. 机器学习入门---------numpy
  4. HTML+CSS+JS实现 ❤️H5图片列表滑动特效❤️
  5. 4008-基于邻接矩阵的新边的增加(C++,附思路)
  6. 大数据学习笔记14:MR案例——招聘数据分析
  7. android 指定进程名称,android 根据进程名杀死指定、特定进程
  8. 利用workbench建立的响应面模型质量很差,该如何解决?求指点
  9. Proface触摸屏与三菱PLC软件仿真(或连接实体PLC)
  10. 2023 闲鱼扫码自动收货跳转支付宝HTML源码
  11. 经纬高坐标系转到东北天坐标系
  12. 链表(线性表的一种存储结构)
  13. phpnow mysql升级_【php】升级phpnow1.5.6的Mysql
  14. 他是对标芝麻信用和腾讯征信的“中外混血富二代”ZRobot CEO
  15. ES索引创建、新增与修改字段
  16. 微信小程序的左右布局
  17. python39使用pip安装easyocr实现文字识别
  18. 写代码必备Linux命令
  19. 构建智慧城市管理体系,京东方智慧物联平台赋能细分场景
  20. Linux运维的行业前景和职业发展

热门文章

  1. k8s中升级应用出现的问题
  2. ios swift截取数组(Arrays)
  3. YoloV8改进策略:将ConvNextV2与YoloV8激情碰撞,能迸发出什么样的火花呢?
  4. 计算机网络------------第四章网络层
  5. C语言中自定义函数返回数组类型
  6. ‘.sync‘ modifier on ‘v-bind‘ directive is deprecated. Use ‘v-modelpropName‘ instead.
  7. 微信小程序分享一个视频给好友
  8. 临时工兼职人员招聘管理小程序开发制作功能介绍
  9. Danvici Developer如何创建一个数组
  10. Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置