夸克Android一面凉经(2024)

夸克Android一面凉经(2024)

quark.jpg

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

面试职位: 智能信息-客户端开发工程师-夸克小说

技术一面

  • 面试形式:视频面试
  • 面试时长: 60min(提问55min + 反问5min)
  • 代码考核: 无
  • 岗位地点: 广州

面试问题(55min)

  • 自我介绍
  • RN页面打开速度优化
    • 为什么工程中使用ReactNative, 而不是选择其他跨端的方案?
    • 看中了跨端的能力还是只是为了免发版
    • 优化方案是否同步到iOS端?
    • RN的缺点?
    • RN底层还是用原生UI控件,那它慢是慢在哪里?
    • 怎么优化?
    • 所有的优化效果最有效果是什么措施?
    • 内置Bundle包对包体积的影响?
    • 除了Bundle体积, RN本身的体积是多大?
    • 你在用RN过程中有没有踩过什么坑?
    • RN本身是用原生的View去渲染的, 跨端一致性会不会有什么问题?比如在Android调好了, 在iOS上看上去样子不太对。
    • 有一些东西改完是两端都要测, 还是只测一端?
    • 这个是怎么接入到工程中使用?单独RN仓库打包进apk, 还是源码依赖到Android和iOS的主工程中?
    • 在真正上线后动态话能力用得多不多?
    • 动态能力的跨版本兼容性如何?之前发的一些App的旧版本, 后面升级了很多版本。会不会有一些重新打包出来的产物, 下发下去不兼容, 导致页面渲染会出问题?
    • 会升级RN的版本吗?
    • 切引擎是会有兼容的问题对吧? 不切引擎之前是不是也有兼容问题?
    • 下发的时候, 是针对不同的版本下发, 还是针对所有的版本下发?
    • 是否可以针对不用app版本下发不同的RNBundle版本?
    • 你们App的版本覆盖速度有多快?
    • 为什么选择针对所有App版本下发相同的RNBundle的方案?
  • 播放优化
    • 跟播放性能相关的?
    • 那你主要在里面做的是什么事情?
    • 为什么进程通信数据这么大, 超过了Binder通信上限,我理解应该是一个非常精简的数据集合?
    • 所以说是有一些极端情况。刚说到的共享内存, 共享fd, 这个大概是怎么样做到的?
    • 先把这些内存写到文件里面传过去, 还是写到什么地方传过去?
    • 存在内存的数据怎么让它可以生成一个fd?我们new了一个对象, 我们怎么用它变成一个fd可以引用它的东西, 然后传给另外一个进程?
    • 待传输的数据据是存在DVM的虚拟机里面, heap的内存嘛, 那它怎么又能调用到另外一个进程呢?它内存之间本来就是内存隔绝的。
  • Android基础
    • HandlerThread
      • HandlerThread用过吗?
      • 它和普通的new Thread()有什么区别?什么时候用HandlerThread, 什么时候用new Thread就可以了?
    • 线程池
      • 平常写异步操作的话, 是用new Thread()还是线程池去做?
      • 创建线程池的参数作用?
      • 线程池的参数是怎么配合起来使用的?他的流程是怎么样?
      • 我们要设计一个IO的线程池, 它的参数可以怎么设计?多个线程并发扫描文件。扫描文件, 统计行号。开一个线程池, 并发去读, 把数据加起来。
      • 参数设置上怎么考虑?最好给出个数值。比如设备CPU是8核。
      • 队列的容量大小怎么设计?有界or无界?
      • 文件的数量级非常大, 上层的业务可以控制它同时的并发量。
      • 如果是一个有界队列会怎么样?它一定会进拒绝策略吗?还是会怎么样?
      • 最大线程数的作用是什么?跟workqueue是什么关系?
    • equals和hashcode
      • 写JavaBean的时候, 什么时候需要重写equals和hashcode方法
      • 只是作为hMap中的value而不是key, 也需要复写吗?
      • hashCode默认是用什么生成的?
    • 多线程方面
      • 多线程并发, 数据安全要加锁, 常见的加锁方式有哪些?
      • synchronized修饰同步块和修饰普通方法有什么区别?
    • 网络
      • HTTP实现一个文件的分片下载, 客户端怎么跟服务端交互?大文件分成多段去下载, 客户端和服务端要发一些什么协议?

反问问题(5min)

夸克小说可以展开介绍一下吗?

夸克小说目前是在夸克app里面比较重要的业务。目前它在夸克里面是底部工具栏里有一个Tab, 第二个Tab就是小说。 小说里面有两种版权来源。一种是正版的, 自己购买的版权, 这种是跟书旗共用同一套版权。整个阿里里面有一个叫书旗小说。 另外一些没有版权的。就是普通网页,我们正常搜书会搜出来一些盗版网站, 我们会对这些盗版网站的页面做了一些去广告, 转码, 提升一些用户的阅读体验。

我了解到夸克是一个浏览器, 对吧。你说的小说的功能相当于是这个浏览器功能的一部分?它也是native实现的?

是浏览器。是一部分。是native实现的。

我应聘的这个岗位, 你们对候选有什么要求吗?需要加强哪方面的技能?比方在用什么新的技术, 或者跨端方案等等?

小说业务还是用Native原生开发比较多。有一些书架页面是用flutter写的。flutter页面后续会有其他同学去做, 不一定由这个岗位的候选人来做。 但native一定要会。我们还有一个加载本地小说的渲染引擎, 我们平常丢进去的一些epub,mobi,txt文件, 这些是要一个小说的阅读器的, 这个小说的阅读器使我们自研的。这一方面是用c++写的。所以对这块还是有一定的要求。主要还是Android原生的比较多。

除了技术技能这方面, 你们对候选人有软性素质上的要求?比如说资深程度, 职级?

目前职级不太限制。我们只是找到有热情的人, 然后加进来一起做事情。如果是P6进来我们会有P6适合的承担的责任, 他能胜任的任务分派给他。 P7的话也会招, 但是要求的话会更高, 他进来以后要承担的任务就会更P6的同学要求更高。不同层级的都会招, 只是进来以后我们对他的要求会不太一样。

P7是属于一个主力开发, 还不是带人的小组长这样的是吗?

P7是主力开发为多。

面试流程几轮?

共4轮。3轮技术+1轮HR。

总结

  • 这个岗位主要负责的是夸克小说的开发, 技术栈主要是Native, 有一部分flutter, 还有一个自研小说的阅读器(渲染引擎), 阅读器涉及C/C++开发。
  • p6p7都要, 但是p7也是大头兵, 只是要求更高。这也符合预期, 目前各家公司现状皆是如此, 对标p7职级的岗位也都是大头兵, 甚至还有不带人的P8。
  • 从面试问题来看, 项目经历和八股文各占一半。八股文以多线程、线程池、锁相关为主。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,319评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,801评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,567评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,156评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,019评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,090评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,500评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,192评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,474评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,566评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,338评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,212评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,572评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,890评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,169评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,478评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,661评论 2 335

推荐阅读更多精彩内容