个人简介
首先自我介绍一下,我就是好久好久之前发过一次帖子的肥小胖,工作两年了,19年计入字节跳动,到现在两年了,
我也经历了好多了感觉,在这里记录一下自己两年的社招之路。不过首先,跳槽的原因很多,如果有机会,啥都OK,
我想大家估计都不会走这条路吧,既然走了就不要后悔。
学习历程
提一句话,大家还是要多学习的,这两年说真的,真的挺感谢这两年的,我成长了好多,从害怕不会到独当一面,其实真的成长挺多的。我有时候也喜欢学习一些东西,比如自定义View以及事件分发的源代码怎么操作的?Window到底是什么,怎么创建的,原理是啥?协程是啥?插件化热修复呢?但是工作了之后,更加偏向于遇到问题解决问题,学习的东西还是会下降,所以,我还是建议大家都学习,真的很有用的。以及项目的设计,架构能力,你也要有一个宏观的认识,挺好的。我也要好好学习。
上历程
我尽可能回忆哈,有的真的记不住了,不要怪我。面试管都挺好,我说不会,直接过了,也都会问你为什么换工作之类的。
- 知乎
一面 1.事件分发的原理+自定义View,东西就比较多了。 2.动画的原理,动画类型,有什么区别,如果动画过程中,可以响应点击吗?他是怎么实现的?原理 3.Handler原理,延迟消息怎么实现的?Handler怎么实现线程切换的,和谁绑定的? 4.ARouter怎么实现的? 5.MVVM,MVP,MVC用过吗?MVVM你用的遇到什么问题吗?怎么绑定的?LiveData?ViewModel?这个框架? 6.RecyclerView原理,哪里好?怎么好?出来一个场景题,我到面试结束也没有听懂,尴尬,直接过了。 7.IdleHandler听过吗,用过吗,原理? 8.讲解项目,你用的flavor怎么说实现的,为什么用这个?你们的项目架构什么样的,怎么设计的? 你怎么和宿主通行的,动态代理,为什么用这个,好处是什么? 9.你涉及的类似淘宝的SKU(白色-xl-男装),这个自定义组件你怎么实现的? 10.你涉及的订单售后模块,怎么设计的,为什么这么设计? 11.你们用的热修和插件化方案是啥?你们自己定制的吗? 12.遇到过OOM吗,内存泄露,我说一堆,我还说我怎么处理过一起的OOM治理。 13.过度绘制知道么?怎么整? 14.算法:找出100以内的质数。 二面: 鸽了我40分钟有了,说不够资深,想要更加资深的,换部门重新面试,我放弃了,不面了,有点小脾气。
- 伴鱼
一面 1.你用的设计模式,讲解一下场景以及好处。 2. https是如何实现加密传输的? 3. SparseArray与HashMap的区别 4. view的绘制流程 5.算法:层级打印二叉树 感觉问题,我很快回答完了,之后再聊天,有点懵逼 二面:就是项目,问的不多 1. activity启动模式,应用场景,区别 2.View的绘制流程,Window创建流程。 3.IPC,你知道的,好处等。 4.和PM,QA,同事沟通问题,怎么处理? 5.挖掘我的项目,设计之类的,讨论好多flavor设计,动态代理,后面谁也没有说服谁,挺有意思的。 最后没有消息,一脸懵逼,不知道和之前圈子的教育有没有关系。
- 猿辅导(通过)
虽然我是男的,但是三个面试官挺帅的,有一说一。 一面: 1.事件分发,问道activity--window--view关系,我说了一下,如果子View都不消费,那么事件谁来消费?叼专, 为啥。三个事件分发的调用关系,你有考虑为什么这么设计吗? 2.自定义View,AT_MOST,EXACTLY,match_parent,wrap_content,如果父View是这,子View是那,测量模式 是啥,难不住我,这一块的源码看烂了,嘻嘻嘻。 3.Handler你能知道的说一下?IdleHandler? 4.syn关键字的原理,可重入吗? 5.如果让你设计一个自定View,你需要考虑什么,怎么设计,依据是什么? 6.知道ANR吗?怎么发生的?如果发生了ANR,弹窗的弹窗你知道怎么出现的吗? 7.你说过你做过冷启动,怎么实现的?如何保证必须优先前置的初始化任务的一定初始化完成?如果发生了ANR咋办? WatchDog?怎么实现的?遇到问题,包已经发出去了怎么办?你们怎么AB的?怎么处理出问题的用户? 8.Binder的原理知道吗,说一下?activity的启动流程? 10.View的绘制流程?你说到屏障消息,为啥呢? 9.问项目,你说说你负责的订单售后怎么设计的,为什么这么设计。flavor考虑是啥?PTRFrameLayout下拉刷新库, 你接入的,看过吗?指定看过呀,一顿讲解,还说为甚这么设计,ZB到位。SKU,知道这个商品有a,b,c规格,服务端告 诉你a1b1c1价格库存,a3b2c3价格库存,你说你实现了高效算法,怎么实现的?位运算,到位了。 10.用过什么安全的集合类,CopyOnWrite,Concurrent系列?展示一下?? 11.算法,旋转排序好的数字,找出最小值。(你是不是做过,我当然装傻呀) 二面 1.View的绘制流程?我发现他们喜欢问这个。 2.你说你参与了冷启动,讲讲?说啦一下缺点啥的,我讲解方案。最后问,如果让你设计一款冷启动框架,你怎么设计? 开放问题,我最喜欢了,我说注解怎么处理?跨module,依赖关系建立啥的。用到ASM?说说? 3.自定义View+事件分发,PTRFrameLayout??讲讲?? 4.进程通信,说一下?你说你尝试解决宿主和小程序通信,怎么做的?我说用了一个透明的activity,在 onActivityResult接受回调,说你不感觉很重吗,为什么不用service? 5.内存泄露?场景?怎么处理?LifeCycle?弱引用?用过LeakC吗,原理是啥?你遇到的泄露,能监测出来吗? 6.你设计了一个CacheContainer,用了缓存为什么不用RecyclerView?让我现场实现了我的伪代码。 7.算法,把一个链表,大于一个指定num和小于num的数,拆分成两个链表,大的在前,小的在后。 三面 1.为啥换工作啊?你遇到问题怎么处理,怎么处理和同事的关系,PM,QA? 2.你们用了小程序,你担任了重要角色,报警怎么处理的?你怎么监控的?如果艾特对应的人,人员你怎么分派的? 3.如果你写一个网络请求发生了什么?我从网络五层结构发送方从上到下,接受放从下到上,交换机啥的都给安排上了? 你说的是底层,你怎么写请求,我问,socket?不好意思,这个不是很了解,简单说了一下。 4.知道登录吧,手机扫描电脑二维码,怎么实现的?我说了登录态,用户id啥的,扯吧。 5.讲解项目,我说我们项目用到了flutter,lynx,miniApp,web,问我为什么?区别好处是啥?我反问你们的动态 化规划。他们怎么探索的,有什么规划。 6.算法题,有一个数组,1,2,2,1,3,4,4,5,请你返回3,5,就是相同的抵消。
- 快手(通过)
一面(是一个姐姐,人挺好的) 1.DCL单例,为我每一个判断是为什么,加锁是为什么,VL关键字什么意思,有什么作用?Atomic了解吗,怎么用的, 有什么好粗,怎么实现的?CAS?讲解一下?又问,这个多线程怎么有怎么样? 2.事件分发流程,调用关系?你遇到什么滑动冲突吗?我说左右和上下的冲突很简单,我接入了PTRFrameLayout,讲解 了原理?说,你都是在dispatchTouchEvent,那么onItercept+onTouchEvent可以吗?我说不好,遇到什么问题, 可能子View接受了Down时间不愿意放开,等原因,我遇到的坑。 3.NestScrollView原理?讲一下? 4.安全集合,Concurrent??等,讲解一下?多线程访问ArrayList?我说fast-fail之类的。 5.用过ConstrainLayout吗?怎么一个View相对两位一个View居中,如果其中一个View设置Gone了呢? 6.项目实际,你自定义了一个CacheContainer,怎么实现的?好处是啥?我一顿讲,业务,技术,用途怎么样? 7.View绘制流程?你说屏障消息?Handler原理? 8.最后算法题,说运行不出来没事,考察你的编程功底,好感动。翻转链表。 二面 1.进程通信?也是为甚不用service用透明的activity? 2.性能优化,内存优化,电量优化,启动优化???? 3.让你自定义一个弹幕,怎么做?会不会有性能问题,我说不会,我会缓存。响应点击,属性动画? 4.订单售后你怎么设计的,怎么和服务端约定通信的。 5.View的绘制流程,事件分发?? 6.如果让你设计一个评论区,你怎么实现?如果要回复一个人,上报你的策略是什么?一条信息,有什么关键信息,服务 端怎么约定好? 7.Binder???讲讲 8.算法题:大数相加。 三面(技术问题不难,记不住了,相对还简单些) 1.你怎么处理问题,遇到问题怎么处理,和同事,PM,QA,怎么处理? 2.你的订单售后怎么设计的,状态怎么同步的?ios呢?我说采用了一样的方案。你这么灵活,后期业务怎么理解呢?我 巴拉巴拉一大堆。 3.前两面技术都问了,表现挺好的。内推你的人,就在我收下,你怎么认识的?难道这个就是爱情??唠嗑。 4.讲我们的技术栈,动态化规划,我反问他们的规划,问我对他们的技术有神了解的吗?我说前两面技术,不知道,然 后,你来了我告诉你,接下来你和HR谈谈。
后面的面试我拒绝了,就没有面试了,总结就是,一定要是你做过的,不然你真的说不上来,一些原理还是要看的,不然真的不会。别人问你屏障消息,问你怎么遇到的,如果你没有看到View的绘制,直接背,指定不行。原理要多看,东西要多学,项目设计要有理解,其他方面的知识,可以不会,但是要了解。大家要努力哦,好好学习,好好工作,提高自己的竞争力。
保佑一个没有谈过对象的我,变的很瘦,讨一个老婆,嘻嘻嘻
全部评论
(6) 回帖