腾讯(3轮)面试分享,已拿offer

前言

时间过得飞快,一代又一代就这么成长了起来,曾经的95后备受争议,如今的95后进入社会,扮演者各行角色,成为了行业顶梁柱,今天,要分享的是自己的成长经历。今年24岁,毕业之后进入一家小型的互联网公司工作,名字就不说了,算是熟知的,在这家公司呆了两年,直至今年才有了跳槽的想法。每个人都拥有大厂梦,我也不例外,在小公司待久了,感觉人会荒废掉,太轻松,没有压迫感。在众多大厂中,最终选择了字节跳动。“年轻、活力、富有激情”是我听到得最多对它的形容词,所以毅然决然,希望自己能够在这个舞台上展示出自己。以下分享这次面试腾讯的面试题,另外还对自己的面试做了一些总结,总结里含有一些学习方法和资料,需要的朋友可以直接点击我即可免费领取哦!

一面:

一面是一个电话面试,下午6点左右特地找了一个地方电话面试,6点准时电话就过来了,不得不说,这方面还是专业的,时间有点远了,依稀记得一些题目。。。
1.mvp mvvm区别 mvvm中的databinding如何刷新view的
2.跨进程通信方式,binder机制
3.leakcanary原理
4.内存优化和工具,APK瘦身
5.get和post的区别,浏览器中输入一个地址然后展示出页面这个过程中做了哪些操作
6.断点续传和下载的原理
7.glide缓存原理,lru算法
8.动态代理原理

二面:

二面是视频面试,还是个周六下午。。。
1.java虚拟机
2.内存优化
3.arraylist hashmap linkedhashmap
4.binder
5.surfaceView和view
6.AMS WMS
7.APK瘦身
8.锁(死锁的场景和解决方案)
9.算法 两个字符串 比较最大的公共字符串 ,主要是思路 (面对问题,以大化小)

三面:

过了整整一周到了隔周五上午,接到了第三面的面试通知,约的是隔周三上午 10:30 。第三面面试官时不时的面带笑容,给人很轻松的感觉。
1.http优化 okhttp多路复用
2.硬币兑换问题 [算法]
3.车的通过问题,一条路上,30分钟内看到有车通过的概率是90%,那么5分钟之内概率是多少
4.图的展现形式
5.全球货币转换功能的代码
6.给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度
腾讯面试真题解析:点击答案 即可领取!

img

学习经验总结

(一)调整好心态
心态是一个人能否成功的关键,如果不调整好自己的心态,是很难静下心来学习的,尤其是现在这么浮躁的社会,大部分的程序员的现状就是三点一线,感觉很累,一些大龄的程序员更多的会感到焦虑,而且随着年龄的增长,这种焦虑感会越来越强烈,那么唯一的解决办法就是调整好自己的心态,要做到自信、年轻、勤奋。这样的调整,一方面对自己学习有帮助,另一方面让自己应对面试更从容,更顺利。

(二)时间挤一挤,制定好计划
一旦下定决心要提升自己,那么再忙的情况下也要每天挤一挤时间,切记不可“两天打渔三天晒网”。另外,制定好学习计划也是很有必要的,有逻辑有条理的复习,先查漏补缺,然后再系统复习,这样才能够做到事半功倍,效果才会立竿见影。

(三)不断学习技术知识,更新自己的知识储备
对于一名程序员来说,技术知识方面是非常重要的,可以说是重中之重。**要面试大厂,自己的知识储备一定要非常丰富,若缺胳膊少腿,别说在实际工作当中,光是面试这一关就过不了。**对于技术方面,首先基础知识一定要扎实,包括自己方向的语言基础、计算机基础、算法以及编程等等。

结合自身的一个学习经历,总结了一套非常系统的复习包,包括思维脑图、Android基础知识、JAVA知识点汇总、Android扩展知识点、Android开源库源码分析、设计模式汇总、Gradle知识点汇总、常见面试算法题汇总等等。

01Android基础知识:

笔记里的知识点非常齐全,囊括了Activity、数据储存、屏幕适配、消息机制、线程异步、webview、进程、ipc、数据储存等大量知识点,每一个知识点都有非常详细的解析,这本万能宝典在手,不信还有搞不懂的面试题!

img

01JAVA知识点汇总:

笔记里的知识点非常齐全,囊括了JVM、static、并发、Java反射、Spring原理、微服务、异常处理、数据库、数据结构等大量知识点,每一个知识点都有非常详细的解析,这本万能宝典在手,不信还有搞不懂的面试题!

img

02 手撕架构技术篇

该篇内容囊括了以下专题的高频面试题、实战文档以及使用总结。

img

03 最新大厂面试专题

这个题库内容是比较多的,除了一些流行的热门技术面试题,如Kotlin,数据库,Java虚拟机面试题,数组,Framework ,混合跨平台开发,等

img

04 实战电子书

关于实战,我想每一个做开发的都有话要说,对于小白而言,缺乏实战经验是通病,那么除了在实际工作过程当中,我们如何去更了解实战方面的内容呢?实际上,我们很有必要去看一些实战相关的电子书。目前,我手头上整理到的电子书还算比较全面,HTTP、自定义view、c++、MVP、Android源码设计模式、Android开发艺术探索、Java并发编程的艺术、Android基于Glide的二次封装、Android内存优化——常见内存泄露及优化方案、.Java编程思想 (第4版)等高级技术都囊括其中。

img

05Android小白到Android工程师的系统学习视频

关于视频这块,我也是自己搜集了一些,都按照Android学习路线做了一个分类。按照Android学习路线一共有八个模块,其中视频都有对应,就是为了帮助大家系统的学习。接下来看一下导图和对应系统视频吧!!!

  • Android高级工程师进阶思维导图

    img

  • 对应导图的Android高级工程师进阶系统学习视频

    img

写在最后

我已经顺利拿到了offer,大家也要加油,希望都能找到自己想要的工作!

img

给大家一些建议

1.遇到问题,不要没有进行仔细分析,就直接百度和谷歌
2.学习知识的时候,不要没有自己的思考和理解,死记硬背
3.要记得深入追究一个问题的本质原因
4.一定要有自己知识点总结和梳理
5.学到知识点,没有很好的实践,动手能力不够
6.要自己的学习的方法
7.确定目标和找到有效的学习方法

最后提醒:以上整理的所有PDF,均可以免费分享,有需要的朋友,

直接点击【 我要成为Android高级工程师 】加入我们的圈子领取资料,和我们一起学习交流吧!~

原文地址:https://www.cnblogs.com/Android-Alvin/p/14098481.html