Android研发从小厂跳到大厂,我是如何拿到腾讯、头条

小厂跳大厂,技术基础可以准备得很充分,但是项目绝对是一个弱项。大厂一个App可能就有几十上百人在做,小厂很多所谓的优化在大厂的面试官眼中可能都是他们很早就做过了,这时候项目本身做了哪些东西并不是太重要,需要着重体现你解决问题的思路以及你是一个有追求的程序员,至少你要能做到业界的平均水平,这样才能有机会通过面试。

对于不知道如何准备项目的同学可以自行百度参考一下。

开放式设计思路


开放式的设计问题需要融会贯通数据结构、设计模式和架构设计等方面的知识,这部分没有固定的答案,笔者总结了一下这些问题可以套用的几个解决问题的思路:

分治法

分治法是现代程序设计中非常重要的一个原则,主要是把大问题化解成小问题,再在小问题中去解决各自的问题。

分层法

把一个大的系统进行分层,比如View层-Controller层-Model层。把一个大的问题,划分成几个层次,每个层次的职责和层次之间之间数据流定义清楚,然后再在各个层次中去实现。

套用常见的模型

比如生产者消费者模型,“池”的模型(例如线程池、对象池)、缓存模型(LRU)等。

比较常见的开放式设计思路问题有如何设计一个网络图片加载框架、如何设计一个文件下载系统、如何设计一个IM组件等等。

这些问题都是非常大的问题,比如图片加载框架就可以套用分层法去化解,参考fresco的设计,划分成View-Controler-DataSource这样的层次。大量文件的下载系统可以套用线程池的模型去设计,这里就不再展开讲了。

技术以外的东西


大厂面试中技术以外的部分也是非常重要的一部分,这部分大多是一些软技能:

自我驱动和追求

这部分主要是在平时工作中的一些自我驱动学习和自主追求一些技术能力,而不仅仅是完成需求就可以了,这样才能体现出你个人的成长性和潜力。

沟通和协作

这部分会评估你未来在团队的融入程度以及跟团队跨团队协作和沟通的能力。比如你在工作中是否能正确看待和解决一些跨部门沟通的问题。

下面是我个人整理的整个面试的一些知识图谱,这上面的知识点基本上都是面试过程中问到的,属于必知必会的知识点。

Android学习PDF+架构视频+面试文档+源码笔记

与面试官聊天的收获

=====================================================================

虽然很多面试都是在问问题和答问题中度过的,但是还是有一些面试官在面试完成后会对我的面试结果做一些总结和评价,这里面也收获颇多,跟大家分享一下。

1、大厂和小厂的选择


很多刚进入职场以及学生会有这方面的困惑,不过我还是简单粗暴地回答一下这个问题吧,建议去大厂。因为这几个方面的原因:

  1. 大厂周围的小伙伴大概率更优秀。

  2. 几年后小厂和大厂的程序员市场溢价不同。同样工作年限的程序员,大厂天然要比小厂的溢价高很多。

  3. 小厂更强调业务的快跑,忽视人的成长。很多小厂会在不同的业务方向上投几个人做出一个App出来试试市场反应,很多人就不得不重复做之前已经会的一些功能,而且很多小厂用户量很小,并不关心所谓的性能架构,因为优化了一个性能,能受益的用户也非常少,还要占用开发业务的时间,你的老板和业务部门也是非常不乐意的,这对于一个程序员的成长是非常不利的。如果一个小厂宣称自己的团队主要成员主要来自百度、新浪、网易等大厂的时候,你需要格外注意一下,这并不代表你进入这个团队后能成长成百度的标准。

2、5年左右的开发的标准


这里说一个标准,5年左右开发经验的工程师,应该在某个或者某几个方向上是整个公司的专家和标杆。

比如设计能力、网络优化、性能优化、音视频等等,5年左右的开发不应该仅仅满足于实现一些业务需求,应该更深入了解底层的原理和技术,这样在未来的跳槽中才能有更高的溢价,比如从抖音出来的音视频工程师就能在市场上享受非常高的溢价。

3、关于成长和职级


主动去承担高一个职级的事情,自然而然你的职级也会跟着提升。

很多同学包括我之前也是认为把我自己的事情做好了,找一些项目的亮点再去PK晋升职级。

然而阿里的面试官跟我聊这个问题的时候给了一个新的思路:很多P6的同学升级到P7是因为他们已经在做并且能做好P7的事情了,所以他们升了P7大家都觉得顺理成章。从这个角度看职级和晋升,是不是角度不一样了呢?

写在最后

================================================================

在不断的纠结比较后,笔者最终选择字节跳动的某书团队作为职业生涯的下一站。

最后,在这里我还分享一份由几位大佬一起收录整理的Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料

这些都是我闲暇还会反复翻阅的精品资料。可以有效的帮助大家掌握知识、理解原理。当然你也可以拿去查漏补缺,提升自身的竞争力。

如果你有需要的话,可以 点这领取

喜欢本文的话,不妨顺手给我点个小赞、评论区留言或者转发支持一下呗~


自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

这里我就分享一份资料,希望可以帮助到大家提升进阶。

内容包含:Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。

如果你有需要的话,可以点击Android学习PDF+架构视频+面试文档+源码笔记获取免费领取方式

喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~

阶脑图、Android开发面试专题资料,高级进阶架构资料** 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。

如果你有需要的话,可以点击Android学习PDF+架构视频+面试文档+源码笔记获取免费领取方式

喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~

img

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值