金三银四进大厂咯!抓紧跳,赶紧跳,跳完升职加薪,迎娶白富美,走上人生巅峰咯!

以非腾讯在职人的身份,来聊腾讯面试的流程、攻略和建议,但愿能助有缘人。

标题涉及的范围很广,对多数面试腾讯的人而言,都有参考价值,看完本文之后,必有所得。

退一步来讲,即便是准备面试其他公司,也有很多问题是相通的,亦可借鉴,有所广益。

从毕业到现在,被别人面试过,也面试过别人,大大小小的面试,一两百次,也算久经沙场。

本文分为三个部分,如下:

Part1:面试流程

Part2:面试攻略

Part3:实用建议

话不多说,我们一起来感受吧!

一. 整体流程

腾讯的部门很多,岗位类型有别,职级差异较大,因此,每个面试者的面试流程肯定不尽相同,然而,很多流程基本通用,故值得一看。

郭靖(化名)是社招入职腾讯的,面试岗位是后台开发,最近跟郭靖吃了顿饭,聊了两个小时,获得许可后,便以郭靖的面试为例进行介绍。面试流程如下:

万字攻略,详解腾讯面试(一)

一图胜千言,要进腾讯并不那么容易。跟游戏升级一样,只有通过前一关,才有机会进入下一关。

微信部门的面试,要求更高,基本是2轮面委面,还有可能是3轮。当然,微信部门的钱也更多。

有的朋友问:组长是啥岗位?总监和总经理又是啥岗位?我们来简单介绍一下公开信息中的腾讯管理层级(副级别不单独列出):

万字攻略,详解腾讯面试(一)

看似层级不多,但要从下一层跨越到上一层,通常是五年十年之功,并不容易。可以算算,接近小马哥要多少年?

有的朋友还会问:面委是什么?面委就是面试委员会,会对面试者的能力进行再次考核,以便进行定岗定级。

通常来说,面试9级或9级以上的岗位,才需要面委。这里的9级是什么意思呢?且看公开信息中的腾讯技术通道职级体系(左旧右新):

万字攻略,详解腾讯面试(一)

一般来说,应届毕业生级别最低,组内骨干至少是9级工程师,组长至少是10、11级工程师,总监至少是12、13级工程师,依此类推。

关于怎样面试

就快要到“金三银四”面试季了,给大家分享一份《Android开发面试真题合集》

该面试宝典不仅收录了本人亲身面试遇到的问题,还收录了从一些朋友那里收集过来的问题。在以后的工作中本 人也会不断地更新和充实面试宝典,当然也希望大家能够多多奉献比较优质的面试题。

不仅展示了常见的面试问题以及回答技巧,还详细讲解了每一道题所包含的知识点,让每个程序员不仅知其然,更知其所以然。

大家可以通过我记录下的这些面试实战记录略微感知一下真实面试的情况,从中学习一些面试技巧以便让自己在未来的面试中能够得心应手,顺利拿到自己喜欢的 offer。

由于篇幅原因,下面以截图展示部分内容。如有需要以下完整学习笔记,可以前往 GitHub自行查阅。

正文总共分为4个部分:

Java 基础+进阶

Android 基础+进阶

项目面试常见问题

简历+社招解答+经典HR面试解析

第一次看我文章的小伙伴可以点赞关注支持一下小老弟哦~~~

一、Java 基础+进阶

  • JVMJVM 工作流程运行时数据区(Runtime Data Area)程序计数器Java 虚拟机栈本地方法栈Java 堆方法区方法指令类加载器垃圾回收 gc对象存活判断垃圾收集算法垃圾收集器内存模型与回收策略

  • Objectequals 方法hashCode 方法

  • static

  • final

  • String、StringBuffer、StringBuilder

  • 异常处理

  • 内部类匿名内部类

  • 多态

  • 抽象和接口

  • 集合框架HashMap结构图HashMap 的工作原理HashMap 与 HashTable 对比ConcurrentHashMapBase 1.7Base 1.8ArrayListLinkedListCopyOnWriteArrayList

  • 反射

  • 单例饿汉式双重检查模式静态内部类模式

  • 线程状态状态控制

  • volatile

  • synchronized根据获取的锁分类原理

  • Lock锁的分类悲观锁、乐观锁自旋锁、适应性自旋锁死锁

  • 引用类型

  • 动态代理

  • 元注解

Android 知识点汇总

  • Activity生命周期启动模式启动过程

  • Fragment特点生命周期与Activity通信

  • Service启动过程绑定过程生命周期启用前台服务

  • BroadcastReceiver注册过程

  • ContentProvider基本使用

  • 数据存储

  • ViewMeasureSpecMotionEventVelocityTrackerGestureDetectorScrollerView 的滑动View 的事件分发在 Activity 中获取某个 View 的宽高Draw 的基本流程自定义 View

  • 进程进程生命周期多进程进程存活OOM_ADJ进程被杀情况进程保活方案

  • Parcelable 接口使用示例方法说明Parcelable 与 Serializable 对比

  • IPCIPC方式Binder流程AIDL 通信Messenger

  • Window / WindowManagerWindow 概念与分类Window 的内部机制Window 的创建过程

  • Activity 的 Window 创建过程Dialog 的 Window 创建过程Toast 的 Window 创建过程

  • Bitmap配置信息与压缩方式常用操作裁剪、缩放、旋转、移动保存与释放图片压缩BitmapFactoryBitmap创建流程Option类基本使用内存回收

  • 屏幕适配单位头条适配方案刘海屏适配

  • Context

  • SharedPreferences获取方式

  • getPreferencesgetDefaultSharedPreferencesgetSharedPreferences架构apply / commit注意

  • 消息机制Handler 机制工作原理ThreadLocalMessageQueueLooperHandler

  • 线程异步AsyncTask基本使用工作原理HandlerThreadIntentService线程池

  • RecyclerView 优化

  • Webview基本使用WebViewWebSettingsWebViewClientWebChromeClientWebview 加载优化内存泄漏

Android 扩展知识点汇总

  • ARTART 功能预先 (AOT) 编译垃圾回收优化开发和调试方面的优化ART GC

  • Hook基本流程使用示例

  • Proguard规则公共模板常用的自定义混淆规则aar中增加独立的混淆配置检查混淆和追踪异常架构MVCMVPMVVM

  • Jetpack架构使用示例

  • NDK 开发JNI 基础数据类型String 字符串函数操作常用 JNI 访问 Java 对象方法NDK 开发基础开发流程System.loadLibrary()CMake 构建 NDK 项目常用的 Android NDK 原生 API

  • 类加载器双亲委托模式DexPathList

常见面试算法题汇总

  • 排序比较排序冒泡排序归并排序快速排序线性排序计数排序桶排序

  • 二叉树顺序遍历层次遍历左右翻转最大值最大深度最小深度平衡二叉树

  • 链表删除节点翻转链表中间元素判断是否为循环链表合并两个已排序链表链表排序删除倒数第N个节点两个链表是否相交

  • 栈 / 队列带最小值操作的栈有效括号用栈实现队列逆波兰表达式求值

  • 二分二分搜索X的平方根

  • 哈希表两数之和连续数组最长无重复字符的子串最多点在一条直线上

  • 堆 / 优先队列前K大的数前K大的数II第K大的数

  • 二叉搜索树验证二叉搜索树第K小的元素

  • 数组 / 双指针加一删除元素删除排序数组中的重复数字我的日程安排表 I合并排序数组

  • 贪心买卖股票的最佳时机买卖股票的最佳时机 II最大子数组主元素

  • 字符串处理生成括号Excel表列标题翻转游戏翻转字符串中的单词转换字符串到整数最长公共前缀回文数

  • 动态规划单词拆分爬楼梯打劫房屋编辑距离乘积最大子序列

  • 矩阵螺旋矩阵判断数独是否合法旋转图像

  • 二进制 / 位运算落单的数格雷编码

  • 其他反转整数LRU缓存策略

其他资料

有学习大纲,Kotlin知识点汇总 ,计算机网络基础,C++知识点汇总,Gradle知识点汇总,设计模式汇总,Android 开源库源码分析,NDK,跨平台...........等一系列资料汇总,由于篇幅原因我就不一一例举了,需要资料的朋友可以前往 GitHub 自行查阅。


同时我也给大家分享一下我的QQ群,欢迎大家前来交流技术点击直达

猜你喜欢

转载自blog.csdn.net/Androidbye/article/details/114399700