一个3年Android的找工作记录

作者:Petterp

这是我最近 1个月 的找工作记录,希望这些经历对你会有所帮助。

有时机会就像一阵风,如果没有握住,那下一阵风什么时候吹来,往往是个运气问题。

写在开始

先说背景: 自考本,3年经验,非大厂背景

在现如今行情并不是很好的情况下,这些case更像是叠 Buff 一样,充满着各种限制。

个人背景比较差的情况下,那靠什么才能拿到一个 面试机会 呢?或者说,抛开目前的背景而言,还有什么可以 辅助证明 [小伙子应该值得一面] :

  • 年龄 24 (能卷 / 瞎说);
  • Github 1k Star,多个开源库的维护者;
  • 清晰的职业规划与个人目标(比较虚的东西,但每个人都应该具备);

职业规划

对于技术同学而言,3年5年 这些都是至关重要的时间节点,于我而言,刚好处于 3 年的位置。

在之前的经历中,因为团队比较自由,涉及的范围相对比较广,从业务到性能优化,再从基础设施到CI/CD。

故按照原本的职业规划,本次理想目标是:小厂,性能优化||基础架构 方向

面试经历

这部分总结了一张表,感兴趣的大家可以看看:

最开始先找了一些外包进行尝试(因为很久没有面试过了,看看市场),但尝试发现,外包本身难度比较低,故不太适合。然后尝试内推了各种小厂,但几乎都在HR关被筛掉了,所以真正能有机会面试的并不多。所以于我而言,最难的不是面试本身,而是如何通过第一道简历筛选😟

从这个月总的面试感受来看,有准备的情况下,面试难度基本都比较适中 ,比如陌陌其实比较简单,相对困难一点的是: 汽车之家(基础架构)、融云(sdk)。当然这并不代表所有业务线,总体还是要根据个人简历与知识深度以及运气而定

问什么?

当聊面试的相关问题或者方向时,直接说面试题,总不是特别好的方式,故结合自身而写了下面几个维度:

  • 架构方面 (MVx系列、组件化)
  • 基础技能 (KotlinASMAPT)
  • 数据结构 (链表、哈希表,力扣热题100)
  • 性能优化 (秒开、包体积、ANRCrash ...)
  • 基础概念 (HandlerView 绘制、线程池 ...)
  • 三方组件 (ARouterJetPack 系列、Epoxy ...)
  • 项目相关 (个人角色数据 真实性、方案 可行性 ...)
  • 软技能与情商 (OKR制定、个人 定位 、职业规划 ...)

回到面试本身,个人本次的体验中,少有去问八股的,可能因为项目本身就有足够问的,当然这个就要根据简历以及面试官而定

常见流程

聊到具体的面试流程,通常如下所示(根据个人经历)

  • 一面(技术)
    自我介绍,然后问项目中的问题(时间较长),接着会问一些常见的八股或者三方组件问题,最后算法题收尾,最后你还有什么想问的;
  • 二面(leader)
    自我介绍,开始问项目,如果某个问题或者某些通用型问题频繁回答失败(分数下降),降级回到八股去问,最后你还有什么想问的;
  • 三面(总监||CTO)
    有时会省略自我介绍,说说你之前做了什么,问一些 OKR 以及 职业规划 上的问题,你对我们公司怎么看,你在原公司的角色等;
  • HRBP
    聊聊个人情况,预期的薪资,我们这边的情况,你对我们公司怎么看,面试的感觉如何等等;
  • 加面(CEO)
    开门见山,先说公司的背景与核心业务,再说现状,比如今年的目标等;再问你之前负责的事,你的职业规划等等;
  • HR(聊薪)
    会再问你预期的薪资,上家的总包情况等,然后再说公司这边的福利等等,最后会给你一个大概多久反馈结果(可能需要你问)。

不过一般不会有这么多轮,往往都是:2(技术)+1(HR) ,或者 3(技术)+1(HR) ,如果遇到 加面 ,往往都是都是对于小公司或者岗位比较重要。

一些技巧

1.简历投递

如果背景不太好,记得编辑一下打招呼消息(突出你的 技术亮点社区贡献 等),优先找Boss是 技术同学 的去投递;

2.面试准备

当拿到面试邀约后,记得去体验一下所在业务线的产品,技术氛围,网上有没有相关面试资料等等,对简历中的重要部分进行整理;

3.自我介绍

不要像背诵一样,通常除了说项目本身,更重要的是需要阐述你做了什么?得到了什么关键数据?你的职业规划等;

4.面试过程

* 记得 开摄像头 ,这是基本礼节,这样也能更好的Get面试官状态变化;

* 对于没听清或者没get到的问题,不要猜,大胆再问一遍

* 对于一些八股或者无法解释的问题,可以 换角度解答 。比如:这块我以前整理过,但是目前记得不是特别清,不过我可以根据我个人的理解来进行解释,不确定是否一定正确。ps: 重要的是你 如何思考 ,而非答案100%正确,善意的面试官通常也会引导你进行解答 😃

* 手写算法时,如果发现自己5分钟之内无法写出,可以告诉面试官 大概思路 即可。ps:大家时间都很宝贵,通常思路正确也可以;

5.面试复盘

对于每次面试,及时做好 复盘 ,特别是对于简历上写,如果面试中被问住,则更需要回来反复思考整理;

比如会有同学建议尝试录音,这也是一种很好的方式。不过我更多的是通过文字记录,特别的,对于一些比较重要的部分,及时做好分段分章节记录。对于一些关键业务数据,一定要确保真实可信,可论证;

6.面试结果

常常会经历等结果的过程,通常行业中默认第二天不联系,就等同于没通过。但如果比较在意这家公司,面试中还不错(75分即可),那么可以大胆在面试完隔1天后去问结果如何。ps: HR 不会因为你问他/她结果而如何,结果是业务部门定;

7.聊薪阶段

关于社保公积金的比例、公司的福利、每年调薪机会等等其他情况都可以进行提问,到了这个阶段,也就不要再藏着掖着。需要注意的是,需要自己了解现在的市场行情,当然更多的是根据上一份base而定,幅度 15-20% 左右(根据自身情况,有没有其他offer等等调整),也不要太离谱。

最终去处

最终在 融云(IM SDK)回响科技(Flutter) 中间选了后者;

最终下决定的原因来源于:

我是一个比较感性的人,在这两家纠结了挺久。最后突然在小宇宙刷到了后者创始人(沈振宇)的一些fm,听了一些产品侧以及对市场的看法,冷不丁的感觉,这里也许更适合我,可能下决定时有点冲动,但站在现在的角度,这个决定是符合我的状态。引用比较喜欢的一句话:

社区不止是内容的承载,更是这部分人群的呼应与共鸣。(有修改)

虽然很 向往 高复杂场景的设计与基础设施的构建,但也喜欢 产品设计与技术本身 所带来的呼应,就像去买 pixel,不仅仅是为了原生系统,更重要的是满足 最初的梦想 以及 探索电子产品 所带来的感受。

站在理性的角度,对于我个人的职业规划而言,显然未来更很想成为一个独立开发者(具备产品思维),前者做sdk,虽然深度提高,但也限制了其他场景,故后者更符合我自身不过事在人为,无论是在哪里,于我而言,都会朝着这个方向前进

当然也要特别感谢我 女朋友 和在北京的同学们,也是他们一直在鼓励我别灰心 😃

Next(新篇章)

即将迎来新的 3-5年 ,除技术本身之外,也有下面几个新节点:

  • 单词 & 英语口语练习;
  • Android GDE
  • 在职研究生考试;

其中 第一项 是目前最重要需要解决的,也是后两项的基础,可能会花一年时间去准备。同时在中间节点,也会去参加几场技术分享,为 GDE 铺路。

依然记得当年毕业面试时,别人问我的那个问题:你为什么选择Android?

因为热爱

写在最后

这就是最近一个月的面试记录,唠唠叨叨也写了不少,虽然结果并不像我原本所期望的那样:找个中小厂,去为履历增添几笔。

但往往并不会事事顺心,很多时候反而是 运气成分 较大。 不可否认,好的背景能加分不少,但如果能有更多的自由空间,去做比较有意思的事情,也是非常酷。

常言道:英雄不问出处,这句话某种程度上听着还是会比较遗憾。不过,生活也远不止一种方式,未来具体能走到哪里、遇到怎样的人、站到怎么样的高度,还是在于自身。

最后,希望我的经历,会对你有所帮助,愿大家都能 无限前进:)

下面推荐一些复习文档:《Android 八大知识体系》:https://qr18.cn/CyxarU+《2023版Android 最新面试题(含Java基础、Android基础、性能优化、Framework......)》:https://qr18.cn/CgxrRy

相关推荐
诸神黄昏EX2 分钟前
Android 分区相关介绍
android
大白要努力!1 小时前
android 使用SQLiteOpenHelper 如何优化数据库的性能
android·数据库·oracle
Estar.Lee1 小时前
时间操作[取当前北京时间]免费API接口教程
android·网络·后端·网络协议·tcp/ip
Winston Wood1 小时前
Perfetto学习大全
android·性能优化·perfetto
ifanatic2 小时前
[面试]-golang基础面试题总结
面试·职场和发展·golang
天天扭码3 小时前
五天SpringCloud计划——DAY2之单体架构和微服务架构的选择和转换原则
java·spring cloud·微服务·架构
程序猿进阶3 小时前
堆外内存泄露排查经历
java·jvm·后端·面试·性能优化·oom·内存泄露
余生H3 小时前
transformer.js(三):底层架构及性能优化指南
javascript·深度学习·架构·transformer