一个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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/75943.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

掌握 JVM 的参数及配置

点击下方关注我,然后右上角点击...“设为星标”,就能第一时间收到更新推送啦~~~ JVM(Java虚拟机)是Java编程语言的核心组件之一,它负责执行Java程序,并提供一系列参数和配置选项,可以调整Java程…

JVM | 从类加载到JVM内存结构

引言 我在上篇文章:JVM | 基于类加载的一次完全实践 中为你讲解如何请“建筑工人”来做一些定制化的工作。但是,大型的Java应用程序时,材料(类)何止数万,我们直接堆放在工地上(JVM)…

AI Chat 设计模式:12. 享元模式

本文是该系列的第十二篇,采用问答式的方式展开,问题由我提出,答案由 Chat AI 作出,灰色背景的文字则主要是我的一些思考和补充。 问题列表 Q.1 给我介绍一下享元模式A.1Q.2 也就是说,其实共享的是对象的内部状态&…

TCP的三次握手四次挥手

TCP的三次握手和四次挥手实质就是TCP通信的连接和断开。 三次握手:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。 四次挥手&a…

【数据结构】快速排序

快速排序是一种高效的排序算法,其基本思想是分治法。它将一个大问题分解成若干个小问题进行解决,最后将这些解合并得到最终结果。 快速排序的主要思路如下: 选择一个基准元素:从待排序的数组中选择一个元素作为基准(…

gitlab CI/CD 安装 gitlab runner

一、为什么需要安装gitlab runner ? 极狐GitLab Runner 极狐GitLab Runner 是在流水线中运行作业的应用,与极狐GitLab CI/CD 配合运作。 说白了就是你部署的一个agent。 二、如何安装? 1.介绍通过helm部署github runner 2.helm添加仓库 h…

openCV图像读取和显示

文章目录 一、imread二、namedWindow三、imshow #include <opencv2/opencv.hpp> #include <iostream>using namespace std; using namespace cv;int main(int argc,char** argv) {cv::Mat img imread("./sun.png"); //3通道 24位if (img.empty()) {std:…

多语言gRPC开发入门与避坑指南

目录 gRPC相关介绍 什么是gPRC gPRC的优点 gPRC的缺点 gPRC定位 协议缓冲区&#xff08;Protocol Buffers&#xff09; 四种调用方式 gRPC开发三大步骤 第一步&#xff1a;定义和编写proto服务文件 第二步&#xff1a;proto文件转化为gRPC代码 第三步&#xff1a;调…

致远A8+数据库账密信息泄露

声明 本文仅用于技术交流&#xff0c;请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;文章作者不为此承担任何责任。 文章作者拥有对此文章的修改和解释权。如欲转载或传播此文章&#xff0c…

【论文阅读24】Better Few-Shot Text Classification with Pre-trained Language Model

论文相关 论文标题&#xff1a;Label prompt for multi-label text classification&#xff08;基于预训练模型对少样本进行文本分类&#xff09; 发表时间&#xff1a;2021 领域&#xff1a;多标签文本分类 发表期刊&#xff1a;ICANN&#xff08;顶级会议&#xff09; 相关代…

Windows环境下VSCode安装PlatformIO Cero报错ERROR: HTTP error 403 while getting

安装PlatformIO插件成功&#xff0c;初始化失败 错误信息判断问题尝试访问https://pypi.tuna.tsinghua.edu.cn/simple/platformio/成功点击文件后报错如下&#xff1a; 解决问题- 换源 &#xff08; Windows下有两个地方需要更改&#xff09;cmd命令行Pip文件 总结&#xff1a;…

Android如何用系统签名打包应用

前言 应用使用系统签名可以在用户不需要手动授权的情况下自动获取权限。适合一些定制系统中集成apk的方案商。 步骤 需要在AndroidManifest.xml中添加共享系统进程属性&#xff1a; android:sharedUserId"android.uid.system"如下图所示&#xff1a; 找到系统定制…

opencv基础40-礼帽运算(原始图像减去其开运算)cv2.MORPH_TOPHAT

礼帽运算是用原始图像减去其开运算图像的操作。礼帽运算能够获取图像的噪声信息&#xff0c;或者得到比原始图像的边缘更亮的边缘信息。 例如&#xff0c;图 8-22 是一个礼帽运算示例&#xff0c;其中&#xff1a; 左图是原始图像。中间的图是开运算图像。右图是原始图像减开运…

车载开发核心技术——SystemUI控制技术

SystemUI是指车载开发中的一个重要组件&#xff0c;它负责管理和控制车机的用户界面和交互功能。本文将详细介绍SystemUI的各项控制技术&#xff0c;包括音量控制、RingtonePlayer、电源管理、任务管理、通知栏和服务定制&#xff0c;并提供相关代码示例和解析。 一、音量控制…

百度Apollo规划算法——OBB障碍物检测代码解析

百度Apollo规划算法——Box障碍物检测代码解析 前言代码代码分析f1f2f3f4f5f6 参考 前言 本文主要分析Apollo代码中函数bool Box::HasOverlap(const Box2d &box) const {}的数学原理。 在阅读此部分代码时&#xff0c;第一遍没看懂return的一堆什么意思&#xff0c;百度之后…

iOS——Block签名

首先来看block结构体对象Block_layout&#xff08;等同于clang编译出来的__Block_byref_a_0&#xff09; #define BLOCK_DESCRIPTOR_1 1 struct Block_descriptor_1 {uintptr_t reserved;uintptr_t size; };#define BLOCK_DESCRIPTOR_2 1 struct Block_descriptor_2 {// requi…

谈谈关于新能源汽车的话题

新能源汽车是指使用新型能源替代传统燃油的汽车&#xff0c;主要包括纯电动汽车、插电式混合动力汽车和燃料电池汽车等。随着环境污染和能源安全问题的日益突出&#xff0c;新能源汽车已经成为全球汽车行业的发展趋势。下面我们来谈谈关于新能源汽车的话题。 首先&#xff0c;新…

uC-OS2 V2.93 STM32L476 移植:环境搭建篇

前言 uC-OS2 是比较经典的 RTOS&#xff0c;如今软件授权已经改为 Apache License Version 2.0&#xff0c;意味着可以免费商用了 当前 uC-OS2 的最新版本是&#xff1a; V2.93&#xff0c;打算研究一下 RTOS 的设计思想&#xff0c;所以想在已有的开发板&#xff1a;NUCLEO-L…

C语言阶段性测试题

【前言】&#xff1a;本部分是C语言初阶学完阶段性测试题&#xff0c;最后一道编程题有一定的难度&#xff0c;需要多去揣摩&#xff0c;代码敲多了&#xff0c;自然就感觉不难了&#xff0c;加油&#xff0c;铁汁们&#xff01;&#xff01;&#xff01; 一、选择题 1.下面程…

【雕爷学编程】Arduino动手做(181)---Maixduino AI开发板12

37款传感器与执行器的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&am…