“我,程序员,32岁,距离退休,只剩3年了!”
这句话用来形容2020年互联网行业最适合不过了。从18年开始,大大小小的互联网公司开始了不止一轮的裁员,19年网上开始充斥一类文章,专门写互联网公司超过35岁的人,如果到这个年龄,还不是leader,业务又不核心,那么请焦虑吧。
转过头,看手中的资源,基于基本盘看清自己的努力方向,非常感慨和受启发。中国互联网经过过去十多年野蛮式的发展似乎这2年开始慢下来了,程序员35岁的退休年龄虽然只是贩卖焦虑的一种说法,但是整个行业对人的要求越来越高是不争的事实,要求我们的成长速度必须跟上。2021年开始,希望自己在技术、管理、业务3个维度再做更深层次的学习,体系化个人的认知,做一个有特点的IT人。
第一面面试官看起来很年轻,感觉是一个刚毕业不久的小伙汁,声音很青涩哈哈哈哈
开始面试的时候把我给问懵了,当时刚午觉睡醒,还没缓过神
计算机网络部分:
1.http的一套流程是什么?
2.https发起连接的流程是什么?
3.http请求的请求头中包含哪些字段?(这里忘了不少字段,只说了三四个,呜呜呜)
4.一次http请求的结构是什么样的?(这里因为网络的问题,听了三遍,终于弄懂了面试官的意思,呜呜呜)
*** 作系统:
1.能简单说说线程和进程间的区别吗?
2.进程间通讯的方式你知道有哪些吗?
3.听说过Messenger吗?(知道,但是底层还是使用的AIDL+Handler的形式,AIDL底层还是使用的Binder驱动)
数据库:
1.能简单说一下数据库如何修改一张表中的数据吗?
2.给一张表增加一个字段该用什么关键字?
Java:
1.能简单说说Lock,synchronize,CAS之间的关系,以及具体实用的场景吗?
2.能详细说一下CAS是什么吗?AtomicInteger是怎么实现线程安全的?
3.具体的锁升级机制能简单讲讲吗?
4.能简单说说代理模式吗?动态代理和静态代理有什么区别?
AndroID:
1.能简单说一下事件分发机制吗?
2.MeasureSpec.UnspecIFIED是什么意思?如果外层的VIEwGroup的模式是AT_MOST,内层是match_parent,那么最终传递到内层的模式是什么?(AT_MOST)? ? ps:这个问题没啥意义
(听你说了VIEw中有scrollTo,scrollBy,那么我们分析一个场景题)
3.场景题:首先有一个FrameLayout,其中嵌套着两层VIEw,我们在进行重写ontouchEvent的时候,如何让上层VIEw滑动并且暴露出下层的VIEw?(这里有一个坑,面试官说的scrollTo、scrollBy,我就在这俩上面思考怎么暴露出下层的VIEw,最后突然想到可以通过事件来调整整个VIEw的布局位置)
源码:
1.看过那些优秀的开源框架源码吗?
2.知道那些源码相关的设计模式呢?
3.HashMap简单说一下原理吧
二面:二面是一个女面试官,年龄可能在40岁左右
设计模式:
1.熟悉那些设计模式呢?
2.动态代理底层是如何实现的?
3.讲讲Retrofit的动态代理吧
Java:
1.能简单说说JVM内存模型的目的以及在内存中区分为哪些区域吗?
2.内存回收机制大致讲讲呗?
3.类加载机制完整细致的描述一下把
4.类加载器的双亲委派原则说一下吧?(这里有一个疑问,我说父子类加载器不是继承关系,然后面试官说不太对,这里我有一点点疑问,还请大家告知一下)
5.能说一下Java .class文件的结构吗?
6.线程池的基本机制有了解吗?非核心线程如何保证延迟结束?
7.为什么内部类会默认持有外部类的引用?
AndroID:
1.Handler消息机制简单说一下吧(延时的消息是如何发送的?以及通过Looper.loop()是如何处理延时消息的?)
2.为什么Handler会出现内存泄漏?
3.VIEw中的post和handler的post有什么区别?(我说vIEw中的handler是经过重写的,会处理关于VIEw的相关绘制事件,然后面试官说只回答对了一部分,我有些疑问,还有其他的区别吗?)
4.有用到什么内存泄漏检测的框架吗?知道原理吗?(就是上面所说的JVM内存回收机制)
5.知道关于性能优化相关的吗?能简单讲一下吗?(布局,异步,过渡绘制)
6.能讲一下Activity的启动流程吗?
7.听你讲到了进程间通讯,PackageManagerService和ActivityManagerService进行通信的方式是什么?
8.Binder驱动底层原理了解吗?(mmap的内存地址映射)
9.Serializable和Parcable有什么区别?如何使用?
10.听你说到了sp(SharedPreference),你知道sp能跨进程通讯吗?
建议当我们出去找工作,或者准备找工作的时候,我们一定要想,我面试的目标是什么,我自己的技术栈有哪些,近期能掌握的有哪些,我的哪些短板 ,列出来,有计划的去完成,别看前两天掘金一些大佬在驳来驳去 ,他们的观点是他们的,不要因为他们的观点,膨胀了自己,影响自己的学习节奏。基础很大程度决定你自己技术层次的厚度,你再熟练框架也好,也会比你便宜的,性价比高的替代,很现实的问题但也要有危机意识,当我们年级大了,有哪些亮点,与比我们经历更旺盛的年轻小工程师,竞争。
无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,这四个字就是我的建议!!!!!!!!!
准备想说怎么样写简历,想象算了,我觉得,技术就是你最好的简历
我希望每一个努力生活的it工程师,都会得到自己想要的,因为我们很辛苦,我们应得的。
有什么问题想交流,欢迎给我私信,欢迎评论
【附】相关架构及资料资料领取点击这里免费获取@H_404_190@总结内含往期AndroID高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的AndroID进阶实践技术
以上是内存溢出为你收集整理的安卓交流软件!Android开发究竟该如何学习,社招面试心得全部内容,希望文章能够帮你解决安卓交流软件!Android开发究竟该如何学习,社招面试心得所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)