让我们一起来看看,字节跳动的第三面,面试官都问了什么?(第一二面的题目及答案已整理,需要的可以在文末领取)
从七月中旬开始,我前前后后差不多一共投递了八十份简历,到目前为止,我参加面试的面试有十二家(收到的面试通知)
字节跳动的面试我准备了一个多星期吧,因为比较重视。
从字节跳动面试官这些问题,可以看出,第三面他们考察的一个很重要的方向就是项目架构和性能优化。
“懒洋洋”甚至跟我吐槽:“我靠,现在大厂面试java后端都这么难的吗?”
大厂面试就是难,但是大厂的待遇是真的香!最近不是都在讨论华为的工资到底有多高么?应届生毕业6年,年薪百万不是梦。
30岁被迫转型这个事并不是每个程序员都必须这样去做的,只有一部分对编程不感兴趣,自己编程能力不强的人会被迫做出改变。而那些真正的技术大咖,对编程很感兴趣的人来说,年龄永远都不是问题。
那么,这些在30岁被迫做出改变的程序员,是因为什么呢?
互联网行业的特点就是迭代速度非常快,技术发展非常快,所以行内企业想要获得稳定良性的发展,就必须要有自己的特色,不断地保持创新,跟紧时代的发展趋势,不然就会被社会淘汰,比如前段时间,中国“鞋王”富贵鸟的陨落。
科技时代,传统行业如果不结合互联网的发展而做出改变,那么是很容易被其他同类产品所替代的,而企业的发展策略,大多决定了部分程序员的发展状况。
一个项目从需求调研和分析、到产品设计和开发、再到产品实现,顺利上线的过程当中对程序员的要求非常高。同时,IT从业者之间的竞争是非常激烈的,这种竞争就要求程序员要有更扎实的基本功、要有更好的业务理解能力、要有很强的随机应变能力。
公司项目随行业发展而不断变化,前一个项目还在用这种技术,下一个项目就可能就要用到新技术去解决问题,所以这也会逼迫着很多的程序员要不断的去学习,不断去更新自己的知识体系。而对程序员来说,由于他们所在的行业比较特殊,他们工作的内容也极具有创造性,所以这也要求他们必须时刻做好改变的准备。
新技术的诞生意味着某些语言和技术的淘汰,如果你固执的只想守着自己的一亩三分地而不愿做出改变,不去主动适应新项目的需求,那么被淘汰的就只能是你。
经验丰富的程序员和一些年轻程序员相比,确实有自己的优势。但年轻也意味着你更有活力,思维更敏捷,有更多的可塑性。很多公司更愿意招聘年轻人的主要原因就在于他们能够更快的理解一些东西,同时薪资要求还更低。而年纪大的程序在经过几年的工作以后,虽然他们工作能力更强了,但他们也会存在一定的思维惯性和惰性,工作中当遇到一些工程量比较大或是偏难的编程问题以后,很多大龄程序员不会去做相关的尝试,而是选择直接丢一边,不解决。
不论是做程序员还是做其他行业,很多人都会有一种明显的感觉,在刚进入职场参加工作的时候,是我们最积极主动去学习、去解决问题的时候。当我们在职场上工作几年以后,我们的工作热情逐渐被消磨殆尽,虽然已经解决了很多问题,获得了一定经验,但在遇到新问题时就会形成一种惰性,不愿意跳出舒适区。
这些年随着行业的发展,很多人转行IT,程序员的群体也越来越庞大,他们当中,有人非常喜欢程序,所以他们就会花更多的时间自发的去研究程序,去学习一些新技术;而对有的人来说,他们当初进入这个行业只是为了高薪,所以在这个行业工作几年等年纪大了以后,他们自然会对这个行业里所做的事情感到越来越反感,自己也想早点离开这个行业。
不论是做编程还是做其他工作,很多道理都是相通的,如果你对当前所做的这件事情非常感兴趣,那不论你年纪多大,你都会自发的去学习很多东西,你总能拼命的爬到行业的金字塔顶端;反之你会更容易会感到迷茫,最终在迷茫和压力之下被迫淘汰。
最后小编想说:不论以后选择什么方向发展,目前重要的是把Android方面的技术学好,毕竟其实对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!
这里附上我整理的几十套腾讯、字节跳动,京东,小米,头条、阿里、美团等公司19年的Android面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
详细整理在GitHub可以见;
Android架构视频+BAT面试专题PDF+学习笔记
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
技术进阶之路很漫长,一起共勉吧~