关于android:一本毕业的打工人大厂安卓开发2年被裁重新出发终于拿下腾讯offer

28次阅读

共计 2445 个字符,预计需要花费 7 分钟才能阅读完成。

前言

自我介绍下,自己就是个屌丝程序猿,大学很一般名字就不说了,软件工程业余。大学毕业后去了一家大公司面试,胜利的拿到了 Offer。说实话,拿到 Offer 的那一刻,我的心田是十分开心冲动的,入职后也十分顺利,就是因为太顺利,导致我始终很劳碌,也对将来没有什么思考。

起初的起初,因为我始终以来的劳碌,本身的技术也始终是那样,公司的倒退须要更高技术的人才。很显然,我曾经适应不了公司的倒退,最终,我被解雇了。

被解雇后,我心田深受打击,对这座城市也心灰意冷。一番考虑过后我决定买高铁票回老家。回到老家后,我看着这座相熟的城市,情绪舒缓了许多。在老家待了几天,我感觉不能再这么颓丧上来了。然而近年来的劳碌工作状态,让我的技术没有一点出息,我自知这个状态上来想要进到互联网头部公司定是不事实的,毕竟学历不能代表全副,技术才是最重要的。我决定从新登程,晋升本人的技术。

自己目前曾经在腾讯入职了,过程十分艰苦,我深知这来之不易的胜利是我始终以来致力付出失去的。

上面是我面试中的一些流程和面试的问题,给小伙伴们一些教训,心愿能帮忙到你们。

面试流程

腾讯一面(全程大概 1h 左右)

  • 自我介绍
  • TCP 与 UDP 的区别
  • TCP 三次握手说一下(把流程说一遍,这里认为会持续问为什么不是两次或者四次,后果没有)
  • 看你我的项目用到线程池,说一下线程池工作原理,工作拒接策略有哪几种
  • 过程和线程的区别
  • ArrayList 与 LinkedList 的区别
  • 线程平安与非线程平安汇合说一下,底层怎么实现的(hashmap,concurrenthashmap)
  • 数据库事务隔离级别说一下
  • synchronized 和 lock 区别,可重入锁与非可重入锁的区别
  • 说说乐观锁和乐观锁的区别
  • 手写进制转换算法,求出一个数的二进制数 1 的个数
  • JAVA 根底 equals
  • 多线程形式、threadlocal,各种锁,synchronized 和 lock
  • 设计模式、spring 类加载形式、实例保留在哪、aop ioc、反射机制
  • 类加载器,双亲委派模型,热部署
  • jvm 内存模型,内存构造、堆的分代算法、堆的分区、gc 算法、gc 过程
  • tcp ip 七层模型 rest 接口标准 get 和 post 区别,长度,平安
  • tcp ip 的 arp 协定,两个同一网络的主机如何取得对方的 mac 地址
  • 负载平衡、高并发、高可用的架构
  • mysql 的引擎区别
  • redis 缓存,redis 的集群部署,热备份,主从备份,主从数据库,hash 映射找到晓得指定节点
  • 理解云计算么,理解云容器 docker 么,容器和虚拟机的区别

(面试官问了很多根底的问题,有些答复的并不是很流畅,不晓得还有没有心愿。)

二面是在星期四的一个下午,间隔一面过来大概有一个星期了吧。工夫都有那么久了,我认为一面可能凉了,后果就收到了面试的邀约。

腾讯二面 (大概 45min)

  • 说一下你对哪个我的项目比拟相熟、为什么做这个我的项目
  • 我的项目采纳了什么架构,数据库如何设计的
  • 数据库由哪些表,为什么有这些表
  • 次要有哪些外围模块,模块之间如何通信的
  • 如何保留会话状态,有哪些形式、区别如何
  • 分布式 session 如何治理,你有哪些计划
  • 学过数据结构和算法吗(当然),你说说二分搜寻的过程
  • 说一下快排的过程,写一下伪代码
  • 理解哪设计模式,举例说说在 jdk 源码哪些用到了你说的设计模式

(二面大部分问的都是我的项目技术上的。感觉我答复的并不是特地好,所以感觉没什么心愿了。)

就在我筹备从新投简历的时候,他们给我打电话了,让我约个工夫视频面试,而后就开始了第三轮面试。

腾讯三面(视频面, 全程大略 1h 左右)

  • 说下你平时看的一些技术博客,书籍
  • linux 下的一些指令
  • 工作中你感觉最不爽的事件是什么
  • 说下你的优缺点
  • 有没有想过来守业公司
  • 写个 strcpy 函数
  • 说说你本人的性情
  • 给你一个零碎,后盾的逻辑曾经实现了,然而前端加载很慢,怎么检测
  • 当前可能要学习很多新技术,你怎么看
  • 我的项目中遇到的艰难(提前想好,并且把实现或者优化办法说分明)
  • 零碎的量级、pv、uv 等
  • 应答高并发的解决办法(分布式)
  • 在我的项目中次要负责了哪些工作
  • nginx 的负载平衡
  • 分布式缓存的一致性,服务器如何扩容(哈希环)

(第三轮面试整体感觉还行,没有什么特地大的压力)

HR 面(大概 30min)

  • 平时怎么学习的
  • 兴趣爱好
  • 感觉本人后面几轮面试怎么样
  • 除了 Java 还钻研过其它什么技术(我说 AI,区块链)
  • 跟我介绍一下区块链~
  • 怎么对待国内区块链的倒退
  • 跟我说一下你认为最具备挑战性的我的项目

我做了哪些?最终顺利拿到 offer 的?

1. 跟着视频学,从新开始

2. 坚固常识,增强本人的专业技能

3. 刷面试题,相熟面试流程

面试倡议

1. 有急躁且被动

面试不要焦急着去问后果,个别在 hr 面的时候,她的态度多少可能猜个七七八八的,如果等上一周还没有告诉,那就能够被动去问了。

2. 刷题是为了晋升本人的运气

运气在面试过程中是十分重要的,刷题的目标很简略,除了坚固咱们所把握的,另一个就是为了能进步在面试中咱们的运气,如果可能问到一样的题是再好不过了,当然这个方法是实用于职级中低岗位。

3. 把握根底,留神深度

腾讯面试最喜爱问两类问题,一类是根底,另一类就是深度。根底局部,无非就是咱们所把握的技术根底内容,基本上只有是有筹备的都没有太大的问题。另一部分就是深度问题,大多波及到本人之前的工作、我的项目,面试官所问的问题不仅仅是停留在外表那么简略,背地的原理是什么才是面试官想要问的。

想要视频和大厂面试题的敌人能够点这里支付哦

最初

其实 Android 开发的知识点就那么多,面试问来问去还是那么点货色。所以面试没有其余的窍门,只看你对这些知识点筹备的充沛水平。so,进来面试时先看看本人温习到了哪个阶段就好。

对于程序员来说,要学习的常识内容、技术有太多太多,要想不被环境淘汰就只有一直晋升本人, 素来都是咱们去适应环境,而不是环境来适应咱们!

认真温习,认真对待面试,准备充分,一直总结。切实不会你就背,虽说有些特地根底的知识点在理论开发中用不到,但面试就是面试,面试就是问这些,连根底的问题都答复不好,切实很难让你通过。

正文完
 0