Soul App Android一二三面凉经(2024)

Soul App Android一二三面凉经(2024)

笔者作为一名双非二本毕业7年老Android, 最近面试了不少公司, 目前已告一段落, 整理一下各家的面试问题, 打算陆续发布出来, 供有缘人参考。今天给大家带来的是SoulApp Android一二三面凉经。

面试职位: Android开发

技术一面

  • 面试时长: 60min(提问30min + 代码考核20min + 反问10min)
  • 代码考核: 基于单链表实现LRUCache

面试问题(30min)

  • 是否在职?所在城市?
  • 自我介绍
  • 介绍了项目A(RN页面打开速度优化)
    • RN做了多久
    • 技术负责人带人吗
    • 作为技术PM, 对你有什么成长?有什么好处?什么坏处?
    • 过程中遇到问题、挑战?
  • 任职过程中, 最有成就感的项目?
  • 平时加班多不多
  • 面点Java/Android基础
    • 虚拟机三个部分?类加载、数据区(堆、栈)。
    • 网络库retrofit有什么做得好的地方。缓存机制。glide(缓存)。
  • 方法粒度的router框架
    • 注解处理用的是什么?
    • 注解处理器基本原理
  • 是否使用过AIGC的工具
  • 如果你来我们这边, 有什么想做的事情吗

代码考核(20min)

基于单链表实现LRUCache

class LRU(maxCap: Int) {fun get(key: Int): Int? {}fun put(key: Int, value: Int) {}
}
class ListNode {var `val`: Int = 0var next: ListNode? = null
}

leetcode原题: 146. LRU 缓存
当时我的解法, 已发布在leetcode的题解

面试反问(10min)

Android、iOS各20+人

社交、内容、增长、新的app、架构(基建)。每个组2、3、4个人。

按技术分, Android、iOS、前端。各自有业务线。比如社交Android组。

招聘岗位归属哪条业务线?

没明确。可以看自己兴趣爱好。每个业务线都说缺人, 但看HC。

面试官自己在团队中的定位

业务线的技术负责人

SoulApp的Android基建团队的规模

3个人。

做了哪些基建。监控、优化专项。

crash、启动、内存、电量、打包/发布流程、监控、日志slog。

技术二面

  • 面试时长: 45min(提问40min + 反问5min)
  • 代码考核: 无

面试问题(30min)

  • 自我介绍
  • 聊项目A(RN页面打开速度优化)
    • 造成RN性能低于Native的本质原因是什么?
    • 为什么这些原因会影响启动速度?
    • 这些事情可以提前做吗?
    • 可以不加载页面的View吗?可以只执行引擎初始化吗?
    • 怎么做到?可以分开?
    • 主要负责Native吗?对Bridge和引擎的开发有吗?
    • RN业务开发过多久?RN和Native开发比例?
  • 自己owner的项目有吗?
    • 作为技术onwer, 你认为最重要的是什么?
    • 项目风险如何把控?
    • 技术上做的最深的是什么?
  • 当前工作地点在哪?为什么看上海?安家了吗?
  • 当前工作节奏。工作节奏期望?
  • 过去面临最大压力的case
  • 有需求delay吗?
  • 平时如何充电?
  • 最近学习的一门新技术
  • 鸿蒙接触过吗?了解过鸿蒙的技术栈吗?做鸿蒙的同学有接触?
  • 代码质量, 处于团队的什么水位?
  • 对自身而言提升代码质量有什么抓手或行动?
  • 对于功能中存在的bug, 怎么提前发现、解决, 提升自己代码提测质量?
  • 在沟通合作这一块有遇到什么问题吗?
  • 再过去有自己提出的某个想法和项目推动落地的吗?
  • 聊点基础
    • Activity和Context的区别
    • Application或Service的子类可以启动Activity吗?
    • Android为什么要做这个限制?
    • 使用Context有什么注意的地方
    • 怎么避免Context内存泄漏
    • 多进程做过吗? 怎么创建多进程?
  • 聊点infra
    • Crash治理?
    • 性能优化, 启动优化?
    • ANR治理?
    • Jetpack MVVM or MVP?
  • Kotlin用的多。主Java or Kotlin?
  • Flutter用吗?
  • 自身有什么优势?
  • 参加过晋升吗?
  • 了解过Soul App吗?
  • 当前所在城市买房了?周围的岗位都在看吗?
  • 有其他offer吗?
  • 流程顺利的话, 什么时候能入职?

面试反问(5min)

又cue了一下面试流程

后面可能会有技术交叉面。没有的话, 就进入hr面了。

目前招聘的岗位, 期望掌握什么样的技能。专精在哪一块, 未来要负责的工作等?

对业务的理解。负责业务线开发, 业务还原度, 业务研发质量等。多个业务线都有可能, 看你整体情况。

这一面会有算法题吗?

没有。面试官反问是不是准备了算法题但没用上。笑~

HR面(三面)

  • 面试时长: 30min(提问30min)

面试问题(30min)

  • 前面技术面试, 聊完的整体感受如何?
  • 目前在职吗?这次出来看机会, 主要有哪些方面的考虑?
  • 到目前的时间节点为止, 拿到其他offer了吗?
  • 现在上海和杭州的机会都在看吗?
  • 未来5年职业规划
  • 你在现在的公司相当于是什么职级, 对标阿里?
  • 在现在的公司里有晋升吗?晋升几次?分别是什么时间?
  • 你目前承担的角色是单一的业务线, 去owner一些角色吗, 还是以执行, 开发的角色为主?
  • 最近聊了哪些机会, 感觉市场怎么样?
  • 上海对你来说是异地, 家里人可以接受吗?
  • 询问当前薪资/总包, 期望薪资或涨幅

反问问题(0min)

这一面个人表现不佳, 没有抓住机会反问一些soul这边薪资组成、福利相关的信息。HR应该是认为我的期望薪资过高, 因此再也没有联系我。

HR透露的一些信息:

  • 1 Soul这边想做infra没有坑位, 可以先做业务, 后期再转到infra。(这也可能是因为我二面表现不佳的说辞)
  • 2 当前市场杭州的头部企业机会少, 上海会多一些, 比如得物、小红书等
  • 3 HR认为30%不算一个正常涨幅。当前soul对算法岗位比较舍得砸钱, 其他岗位一般。

最后小结

  • SoulApp的Android面试一共3轮。2轮技术面+一轮HR面。如果一二面有争议会加面一轮技术面。技术面的面试时长在30~45min, 如果有代码考核会适当延长15~20min。
  • SoulApp的Android技术面以聊项目为主, 会穿插问一些基础知识, 以及一些性能优化的经验。

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

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

相关文章

CDGA|数据治理:突破“采集难、应用难”的困境

随着数字化时代的来临,数据已成为企业最宝贵的资产之一。然而,如何有效地采集和应用这些数据,却成为众多企业面临的一大挑战。数据治理作为一种全面的数据管理框架,为解决数据采集难、应用难等问题提供了有效途径。 数据采集难的挑…

FuTalk设计周刊-Vol.064

#AI漫谈 热点捕手 1.可灵视频模型Web 端功能上线 文生视频:画质升级、单次10s视频生成;图生视频:画质提升、支持自定义首尾帧;运镜控制:提供丰富的镜头控制选项,预设多种大师级镜头模式。在限免期间&…

在复杂的服务器环境中,如何优化 Shell 脚本的性能,以减少系统资源消耗并提高执行效率?

以下是一些优化 Shell 脚本性能的建议: 减少系统调用:尽量减少脚本中的系统调用次数,因为系统调用是比较耗时的操作。可以通过将多个命令放在一个子 shell 中或使用管道来减少系统调用次数。 避免过多的 IO 操作:尽量减少文件读写…

CUTS 多粒度分割 + 局部图像块对比学习: 无需大量标注数据 + 多尺度病变识别 + 解决医学图像不同仪器成像差异

CUTS 多粒度分割 局部图像块对比学习: 无需大量标注数据 多尺度病变识别 解决医学图像不同仪器成像差异 提出背景CUTS 框架(A) 总览(B) 像素中心的图像块嵌入(C) 图像内对比图像块选择(D) 扩散凝结粗粒化(E) 多粒度分割 解法拆解子解法1:多粒度分割子…

应用层协议原理——因特网提供的运输服务

我们已经考虑了计算机网络能够一般性地提供的运输服务。现在我们要更为具体地考察由因特网提供的运输服务类型。因特网(更一般的是TCP/IP网络)为应用程序提供两个运输层协议,即UDP和TCP。当软件开发者为因特网创建一个新的应用时,首先要做出的决定是&…

我是售前工程师转大模型了,不装了我摊牌了

有无售前工程师的朋友,心里的苦谁懂呀,售前工程师是项目开发人员与业务销售人员的桥梁,在业务销售人员眼中,他们是技术人员,在项目实施中的开发人员眼中,他们是专注技术的销售人员,在用户眼中&a…

本人瞎说--分形与混沌--中医为什么是准的

文章目录 序分形与混沌中医的来源我为什么更爱中医现代医学仍然落后与无知,很多病根本就治不好病由心生 序 本人不是中医专业,也不是医生,也不会看病,我的观点都是来自于网上学习及思考。不喜欢的随便,但是还请您多想…

【运算放大器学习】

运算放大器学习 运放的选型一般主要需要观察以下几个参数,下面一起来理解一下几个核心参数的意义;今天说 输入失调电压 、失调电压温漂 、 偏置电流 、 失调电流几个参数; 放大器的几个主要参数 输入失调电压失调电压温漂偏置电流失调电流…

GPU 张量核心(Tensor Core)技术解读

一文理解 GPU 张量核心(Tensor Core) 引言 最新一代Nvidia GPU搭载Tensor Core技术,本指南深度解读其卓越性能,为您带来极致体验。 Nvidia最新GPU微架构中的核心技术——Tensor Core,自Volta起每代均获突破&#xf…

C语言求10进制转2进制(除2取余法)

1.思路:除2取余法,也就是说用除以2取余来将10进制数转换为二进制 2.两种代码实现,这里用了两,一个递归一个非递归。 递归是一种编程技术,其中一个函数直接或间接地调用自己。递归通常用于解决那些可以被分解为更小的、…

理解李彦宏的“不要卷模型,要卷应用”

引言 在2024年世界人工智能大会上,百度创始人李彦宏的发言引发了广泛讨论。他呼吁业内人士“不要卷模型,要卷应用”,强调AI技术的价值在于实际应用,而非单纯的技术竞赛。李彦宏的观点引导我们反思当前AI发展的方向,探…

python(64) 主动释放内存

​主动释放内存的方式 在 Python 中使用 gc.collect() 方法清除内存 使用 del 语句清除 Python 中的​​​​​​ ​内存 gc.collect(generation2) 方法用于清除或释放 Python 中未引用的内存。未引用的内存是无法访问且无法使用的内存。可选参数 generation 是一个整数&am…

Check if a fine-tuned OpenAI model was successfully deleted

题意:检查微调后的OpenAI模型是否已成功删除 问题背景: I am doing some work with the OpenAI API with Python. Im working with fine-tuning and I am working on deleting an existing model and starting over again. I want to be able to check …

常用的工具

Java 1.IDEA介绍 IDEA官网:https://www.jetbrains.com.cn/idea/ IDEA 2023.2.2下载地址:https://download.jetbrains.com/idea/ideaIU-2023.2.2.exe 对第三方软件的支持:https://www.jetbrains.com/legal/third-party-software/?product=iiu&version=2023.2.2 IDEA插件…

Redis进阶教程

Redis进阶教程 目录 Redis内存管理 内存分配内存回收策略 Redis集群 集群架构数据分片故障检测与恢复 Redis持久化策略 RDB与AOF对比混合持久化 Redis事务 事务的基本概念乐观锁机制 Redis脚本 Lua脚本简介常用Lua脚本示例 Redis安全配置 身份认证防火墙设置客户端安全 Redis…

在Spring Boot中实现多租户架构的数据隔离

在Spring Boot中实现多租户架构的数据隔离 大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 1. 引言 随着云计算和SaaS(软件即服务)模式的普及,多租户架构在企业应…

“四大水刊”水出新境界!仅一本剔除,飞升1区,IF3.8,1个月录用依然吊打!

本周投稿推荐 SCI • 能源科学类,1.5-2.0(来稿即录25天) • 计算机类,2.0-3.0(纯正刊29天录用) EI • 各领域沾边均可(2天录用) 知网 • 7天录用-检索(急录友好&a…

我可能要和低价官网建设说拜拜了。

最近和团队商议,要不要放弃低价官网建设业务,大部分人要求放弃,我有点不舍,毕竟从公司开始就是靠网站建设业务存活和起价的。 对于设计师来说,对于美与体验的追求是无止境的,你让他搞个高大上网站&#xf…

ActiViz实战:鼠标交互和vtkCommand的问题

文章目录 前言一、消失的vtkCallbackCommand二、自定义命令vtkCommand1、自定义一个左键双击事件的命令2、使用观察者/命令模式3、结果三、vtkObject类中的事件1、vtkCommand中所有的事件2、鼠标事件测试3、如何添加左键的双击事件四、总结前言 在C++的VTK中,我们常用vtkCall…

《C++20设计模式》命令模式思考

文章目录 一、前言二、分析 拆解1、经典命令模式2、撤销操作3、关于Invoker类 三、实现 一、前言 哎!只要是书上写的和经典设计模式不同,我就会很伤脑筋。😩 命令模式到底是干什么的? 答:命令的发送者和接收者完全解…