移动客户端实习

提前批

3月中旬,一面已挂,刚投,没复习,然后虽然感觉都看过,第一反应仍然要想一会,所以凉凉
此时让我说自我介绍也异常简单,没准备,估计也扣分。
HashMap如何实现、HashMap和HashTable区别、ConcurrentHashMap实现原理。感觉挺简单的,当时墨迹了半天哈哈
Android方面有点忘了问什么,失忆了。然后考了道算法题,求1-1000有多少个1。我实现很low,面试官后面人很好,给了指点。

3月20日,简历被捞,稍微复习点,第一面感觉有点像个HR面,全程我在说项目,没问什么特别多技术上的东西。
3月22日,第二面,明显技术牛,问了我项目,我其中一个项目逆向过豌豆荚获取应用用户评论信息,问我具体如何逆向,我说了下,还问了我加固有没研究,说实话这块PC研究的比较深,移动以前做一些比赛题目比较多,没有遇到壳,不过也了解过,说了下第五代加固技术。不知哪里看的,大概就是类似vmp壳。还有其它的有点忘记。这面凉了。

正式批

4月15,视频面试,两道算法题,一道是一个数分解成两个质数和,问有多少对,比如10,分解成(5,5),(3,7),分解成两对。
另外一个忘了。
让我说一个常见框架原理,我说了OKHttp实现原理,我只说了具体是如何实现同步和异步发送,线程池相关的设计,又问我底层如何发包的,这个没看哈哈。当时应该跟他说AsynTask实现原理才对。
TCP和UDP区别,好像回答了不完整,他说还有。挠了挠头。然后又问了TCP滑动窗口作用,问了用UDP如何实现TCP
数据库索引的作用,为什么加快索引,这个还真没复习,挠头。
凉了

4月20日,电话面试,问了很多java的知识,印象深刻的就java重载能不能重载返回值不同的函数,这块没回答出,然后java重载能不能重载相同的类,但是模板不同的参数。这块我回答出来的,毕竟看过smali如何实现,类型擦除,不能。其它的问了个Intent.putString(Object) 行不行,就是不进行序列化,然后直接传递对象,嗯,就进程内可以,内存空间相同,跨进程不行。还有就是Handler实现,这个比较简单,但是问了个MessageQueue的具体实现,有点忘了,以前看过源码,不过后面温习了下,还包括postDelay实现。算法就问了求链表交点问题。面了一个小时,面试官好像挺满意的。
4月22日,电话面试,二面,问了下我的研究,自动化程序修复,跟我探讨了下,给我提出了一些意见。除此之外,问了一些逆向的东西,还有问了如何选择开源框架,我说了两个性能和可扩展性,面试官帮我补充了个安全性,嘿嘿,搞安全的我忘了安全性,扎心。
4月26日,电话面试,总监面,问了下我逆向的东西,说看我简历熟悉Linux,问了下我android开发下用到的linux,这里我给他举例了崩溃优化,主要从native崩溃优化进行处理,在native上设置信号处理函数,具体实现牛友自己查,我举例了段地址错误出现的崩溃,设置SIGSEG信号,然后保存堆栈信息。实际上,当时有点紧张,还能更具体点,少说了比如栈溢出导致的崩溃,此时需要新建一个新的栈进行处理,除此之外可以实现符号和程序分离,保存的数据通过本地保存符号信息进一步分析。
5月5日,hr面,目前已完成面试。
等开奖,大概我的苦逼面试经历了

#腾讯##安卓工程师##实习##面经#
全部评论
哪个bg啊
点赞 回复
分享
发布于 2019-05-06 11:48
老哥是实习吗?哪个地区。。浙江省还在投简历啊。。。
点赞 回复
分享
发布于 2019-05-06 19:06
联易融
校招火热招聘中
官网直投

相关推荐

1、拷打项目。具体介绍一下无障碍权限。项目中gemini是干什么的?如何实现版本更新提醒的?如果提示更新时发生异常,比如网络状况不好,怎么处理?网络请求怎么实现的,用了第三方库吗?(OKHTTP3)了解过这个库的原理吗?(没有)那你具体用了库中的哪些方法?2、安卓中view绘制的过程经历了哪些阶段、哪些函数?3、了解过安卓中UI控件分发的机制吗?在relative layout中有一个button,点击button,事件是怎么转发的?4、从点击安装apk,到icon出现在桌面上,这个过程中系统发生了哪些事?从icon出现在桌面上,到应用的界面出现,又经历了什么过程呢?activity调用onCreate之前发生了什么?5、知道AFS(Andrew File System)和PFS(没听清,也查不到)吗?6、介绍一下Java中的反射机制。(拿了一个题,写Java反射的示例)。反射最主要的特点是什么?7、了解Java中的String类是怎么实现的吗?8、在你的安卓项目中遇到过内存泄漏吗?有哪些技术,如果使用不好可能会引起内存泄漏?9、了解过安卓里的handler吗?handler会引起内存泄漏吗?如果handler不指认线程,那它会在哪个线程上?10、介绍一下面向对象的特点。你了解哪些面向对象的设计原则?了解过单一职责原则、迪米特法则、依赖倒置吗?11、设计模式从哪学的?写一下你写过的最全面的单例模式。12、了解过HashMap的底层原理吗?是单一地用红黑树吗?什么时候会转化成红黑树呢?(链表长度大于8)为什么是8个?13、了解过HTTPS吗?加密用的什么机制?14、进程和进程的区别是什么?协程和进程的区别是什么?了解进程间通讯吗?15、算法 毒蘑菇、找出string B中的所有字母是否在string A中很注重知识的全面性,经常追问“还有吗”反问:技术栈是什么?(Java+Swift)如何提升算法能力?(其实不太重要,针对面试就是贪心、DP)
点赞 评论 收藏
转发
😇消愁bg:南京某双非大四**。要实习没实习要项目没项目要绩点没绩点,还是cpp选手。😇消愁前置:前段时间投了米,他居然给了我笔试。笔试抽到了简单题全a了?(嗯,也许我a了样题?进行了一场声势浩大的虚空笔试。)他居然给了我面试。😇消愁面:今天面试,没用过牛客面,前20分钟找不到摄像头我以为面试官没开,反正开摆就开摆。上来问我安卓客户端相关,好嘛,一点没学过。(😢对不起是我没学安卓开发投了这个,我还以为不要经验的。我的问题抱歉)接着面试官看尬住了啊,好像搜了几个超级简单cpp八股,都能答上来一些。答了一会儿没意思,上题。😇一道求平方根的,二分做了。问我有没有更快的。我猜到了牛顿迭代,又忘了这是个什么写法。面试官耐心引导了一下,我愚钝还是没想到怎么写,当时实在是压力大,脑子里都是懵的。我看尬住了,我问时间复杂度是多少。面试官又也尬住了,说你可以算算。又尬了几分钟结束了,反问了是不是需要学这方面的知识先。日常干些什么。😇从面试一开始我就知道寄了,如果需要对口知识,还是别让我过简历了,简历里啥也没,实在不行笔试挂也行。😇面试官人还是很礼貌的。只是我们根本不在一个频道,折磨了我也折磨了他。😇仅以此纪念一个消愁面米。
点赞 评论 收藏
转发
2 18 评论
分享
牛客网
牛客企业服务