太卷了!程序员面试前刷面经“神似”科举考前背题:这是八股文么?真的有用么

因为Android这个岗位涉及到的知识点还是比较多的,除了Android系统内部的四大组件,View、各种第三方库之外,还要求有Java基础,算法数据结构、设计模式,计算机网络的一系列相关知识。整个体系比较庞大,知识点也非常密集,你很难保证面试官擅长以及提问的领域刚好是你最熟悉的。所以为了保证面试的质量,面试之前的详细准备就是必须的。

其实正常面试之前好好准备,复习或者是学习一下自己薄弱、不太擅长的部分也无可厚非。但是随着互联网声势越来越浩大,吸引力的提升。越来越多的人想往里面挤,导致很多人开始把考场上用到的一套全拿来用了,不再是复习和学习了,而是单纯的死记硬背。甚至很多培训班教学生虚构简历,然后通过狂背面经的方式来通过面试。

背面经有用吗?


如果你背面经只是为了应付面试当中一些刁钻的问题,或者是记住一些容易遗忘的知识点,那我觉得还是有用的。如果是指望通过背面经来弥补自身能力的不足,我感觉很难有效果,越大的厂,越专业的面试官,越没有效果

现在的一个面试趋势是越来越看重动手实践的能力,很多大厂会上来就让求职者做两道题,或者是写一段代码。你嘴上说得再好听,天花乱坠,但写出来的代码骗不了人。有经验的面试官看看你的代码规范,看看你的编码速度,以及思考的过程,基本上就知道你水平如何。当然这样做也有缺点,因为不是每个人都擅长算法、数据结构,能不能做出题受发挥的影响也不小。但至少能够通过这一环节的,大部分都是货真价实的。

另外一个是对于一些知识点,面试的时候往往不会浅尝辄止,而是会不断发问,看看你的理解究竟如何。比如我之前面试的时候,让候选人聊聊他熟悉的第三方库,他自己选了Glide,可能是觉得Glide比较简单,哐哐哐把原理一通说。但是当我问他Glide有哪些缺点,你有没有办法可以对它进行优化的时候,对面就张口结舌说不上来了。连这么简单的Glide优化都想不出来,那想必其他的一些更复杂的场景,只会更加困难。最后我没有给他通过,虽然我问他的其他基础问题都勉强答上来了,但是就这一个问题,就暴露了他的实力。毕竟用人单位招聘的是有能力能解决问题的人,而不是一个只会死记硬背的人。

面试的知识真的会用到吗?


最后,和大家聊聊大家比较感兴趣的问题,面试的时候考察的知识在实际当中真的会用到吗?

根据我目前的经验,基本上不会用到。想想看也知道,无论是让我们写的算法、数据结构题,还是问我们的各种设计模式,框架细节,显然都非常脱离实际。所以很多人诟病,面试造航母,进去拧螺丝。

但是如果你仔细分析,你会发现现在的模式已经是最优解了。面试当中有很多潜在的条件,比如有区分度,能够把优秀的人筛选出来,淘汰掉看起来不太行的人。再比如能考察一个人的潜力,能看出来谁是潜力股,谁未来前途无量,谁以后可能最多就是一个普通员工。再比如应对变化,每个人的岗位和职责都不是一成不变的,招进来的人必须基本面出色,能够应对岗位和工作内容的变化。这几个条件一叠加,你就会发现来源于工作但高于工作的问题是唯一解。

其次,有些技能虽然不直接用到,但并非没有价值。举个最简单的例子,就是英语。我想绝大多数人工作场景当中用不到英文吧,别说你们了,我80%的场景下也是用中文交流。但你能说英语没有用吗?显然不行,因为做我们这行需要读论文,论文全是英文的,英语不好就读不了。对于算法工程师而言,不会读paper,不会了解最新的前沿技术,用不了3、5年就落伍了。

还有很多时候,不会造航母连螺丝都拧不好。拿大公司里的算法工程师举个例子,大家都知道很多算法说是算法,其实每天做的都是数据的活。但即使如此,也一样能看得出差距。有些人能够结合下游业务方使用的模型以及场景深度思考,做出来的特征效果很好,用上之后,立刻提升了模型好几个点。有些人不管不顾,只会想当然地做一些特征。表面上看起来大家的工作内容和产出好像差不多,但是到了年底晋升评绩效的时候,你们说老板会更喜欢哪一种呢?

最后最后,知识和技能并不是用到了才有价值,有的能力是其他更深层次能力的基础,有些技能提升了你的专业素养,有的知识则是重要的储备。因为在职场上,永远是书到用时方恨少,谁也不知道机会什么时候回来。当机会来临,才去学习显然是来不及的。所以千万不能抱着这种有用才学,没用就不了解的想法。所谓技多不压身,多了解一些多学一点总不是坏事。

还是那句老话,想躺平的废柴有的是说服自己的借口,而赶路的行人们却早已出发。

面试复习笔记:


文末分享一份Android中高级面试复习笔记

这份资料我从2020年春招开始,就会将各博客、论坛。网站上等优质的Android开发中高级面试题收集起来,然后全网寻找最优的解答方案。每一道面试题都是百分百的大厂面经真题+最优解答。包知识脉络 + 诸多细节。节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

由于篇幅原因,下面以截图展示部分内容。如有需要以下完整学习笔记PDF,可以点赞+评论支持下,点击这里即可免费自取

正文总共分为6个部分:

Java 基础(★★)

Java 高级(★★)

Android 基础(★★★)

Android 高级(★★★)

Android 项目(★★★)

项目面试常见问题(★★★)

一、Java 基础(★★)

面向对象思想

多态

异常处理

数据类型

Java 的 IO

集合

Java 多线程

Java 高级(★★)

Java 中的反射

Java 中的动态代理

Java 中的设计模式&回收机制

Java 的类加载器

Android 基础(★★★)

Android 基本常识

Activity

Service

BroadCastReceiver

ContentProvider&数据库

Android 中的布局

ListView

JNI & NDK

Android 中的网络访问

Intent

Fragment

Android 高级(★★★)

Android 性能优化

结语

  • 现在随着短视频,抖音,快手的流行NDK模块开发也显得越发重要,需要这块人才的企业也越来越多,随之学习这块的人也变多了,音视频的开发,往往是比较难的,而这个比较难的技术就是NDK里面的技术。
  • 音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台,以前是windows系统,而现在则是移动系统了,移动系统中又是以Android占比绝大部分为前提,所以AndroidNDK技术已经是我们必备技能了。
  • 要学习好NDK,其中的关于C/C++,jni,Linux基础都是需要学习的,除此之外,音视频的编解码技术,流媒体协议,ffmpeg这些都是音视频开发必备技能,而且
  • OpenCV/OpenGl/这些又是图像处理必备知识,下面这些我都是当年自己搜集的资料和做的一些图,因为当年我就感觉视频这块会是一个大的趋势。所以提前做了一些准备。现在拿出来分享给大家。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 25
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值