Android开发---hr或是部门主管软问题的回答总结
Posted 潇潇凤儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发---hr或是部门主管软问题的回答总结相关的知识,希望对你有一定的参考价值。
1、为什么选择进小厂,而不选择大厂?
当时也拿到一些大厂的offer,但XX给的薪水和title最高,也有其他公司给股票的,我个人觉得更高的薪水,自己能负责的事就会越重要,越被公司重视,所以基于这个原因,我当时选择了XX。
2、你觉得你在XX得到了哪些成长?
这个其实有很多
1)首先:个人的精力得到了挑战,以前公司下班时间到了,大家都撤了,现在公司晚上9、10点大家才撤,适应了互联网快生活的节奏。
2)其次:自己的技术栈更深更广了,以前公司用户体积不大,应用发版时间长,对性能要求也不高,现在的公司差不多每周都有新版本,对性能要求高,响应速度要求快,我为了应对公司需求,对应用的性能研究的很多,尤其是启动速度,包大小。为研究性能自学了很多技术,比如插桩,asm,自定义gradle插件,单元测试等。
3)再次:自己的管理能力也得但很大提升,比如,我会任务分配上人适其职,树立小组成员的owner意识,提高沟通效率,工作上任务分轻重缓急,不必事事躬亲,抓住大局,出现问题优先解决问题,等上线后再召开case study对出现的问题复盘的。
4)最后:团队技术浓厚,每周有技术分享,自己学到很多新技术点。
3、你希望在新公司有什么样的发展?
一般程序员的终极路线,成为某一领域专家,或者资深开发工程师,团队负责人,cto
4、你认为你最擅长的技术点是什么?
可能和工作有关系吧,不是基础架构组的,还没达到某一领域的专家,但我能保证分配的任务按时保质保量的完成甚至提前完成,对技术的热情很高。出的新技术,新工具,新组件,都会去学习尝试。不满足现状。
5、工作中有遇到什么棘手问题么?
比如项目不能按排期走,发版delay,上线前被一些棘手bug难住等
基于这个问题,我从管理上做了一些改善。
1)首先树立成员owner意识,对自己的工作负责,要积极主动
2)其次项目流程化管理,项目排期精细化,技术框架提前敲定,确定项目的风险点,难点。每天早上开站会确认今天要完成的工作,晚上确认工作进度是否有delay,出现问题重点跟进,自己推动不了的及时跟老大反应。到测试阶段,随时关注bug情况。
3)出现问题,优先解决问题,上线后对项目及时总结复盘,做的不好的应该怎么改进
6、你为什么想换工作?
想寻求更好的职业发展,更好的机会
7、多久能到岗?
如果收到offer了,我会尽快向公司提出离职申请,交接好工作,同时提前了解咱们公司需要的技术点,按我现在公司往期离职员工进度,大概收到offer两周左右可以到岗
面到什么时候你会停止面试 拿到满意的offer就不会再面了,毕竟最终只能选择一家公司,一直面试既浪费自己时间,也浪费其他公司面试官的时间,选择有时也不是越多就做好
8、最能体现你技术实力的功能是什么?
我做的IM这块,包括私信、群聊、音视频通话等,打造一个跟微信功能一样的聊天系统,需要解决以下问题:
如何保证消息及时、有序、高效、无丢失
1)保证消息实时性:我们使用了Websocket推送+厂商推送,这样不管用户是否在线,都能实时收到别人发送的消息;
这期间我们遇到的问题有,用户在线websocket却被断开情况,我们设置了很多重连策略,如连接失败、连接被关闭、网络状态变化、用户进入消息页面或是聊天界面判断websocket是否断开等;
2)保证消息无丢失:我们的推送,只会推送简单的信息,告知哪个用户或是哪个群有新消息到达,客户端再拿本地数据库保存的最后一条消息的msgId去服务器请求,服务器会把在这个msgId的消息分批次返回,返回记录如果带着拉完的标识,代表所有新消息都拉完了。如果拉消息失败,客户端会有重拉机制,同时服务器会做标识,客户端哪些消息拉过来,拉过的消息就不会再被拉到。
3)保证消息有序性:我们会根据消息的创建时间、本地的clientId和服务器返回的remoteId来作为消息的排序,像群聊高并发这种,由于拉取时间、入库时间等差异,我们会根据前面三个条件来排序消息,尽量保证群内各个用户信息顺序是一致的;
4)保证消息高效性:我们采用了多进程、多线程方式,IM通信采用了独立进程、IM消息采用了独立数据库,推送也是在子进程中。尽量保证主进程死的时候也能走websocket推送。这里遇到了一些线程同步、线程等待问题。
5)性能问题:随着用户消息量的增加,我们统计过应用中大概有5%的群有超过百万条数据,在一些低端机上进入群聊天页面变卡问题,聊天列表页加载慢问题,针对这些问题,我们对数据库查询操作进行了一些优化,聊天列表页的recyclerView也做了很多优化。
当然开发当中还遇到很多其他问题,比如小图查看大图从点击处放大、加载大长图(巨大图)、音视频聊天来电方如何实现在没有悬浮窗权限情况下在应用所有页面都弹出来电弹窗、通话过程中来电话的处理、来电时和应用其他音视频界面的交互、视频切音频、视频大小窗口变化等问题。
通过IM系统开发下来,自己对于高并发、跨进程通信、系统交互、数据库等都加深了研究和了解。
总结:
在面试前你需要提前准备一下,避免回答问题的时候没有条理,导致面试官对你的逻辑思维能力和语言表达能力产生不好的判断。
有时可能不知道面试官可能会问什么样的问题,但至少做到多反思,一旦这次觉得这个问题回答得不好,面试后,最好自己想想,应该怎么去回答,会比较有条理,能抓住重点回答,而不是说了一通,没说到重点,或是面试官觉得你在忽悠。
以上是关于Android开发---hr或是部门主管软问题的回答总结的主要内容,如果未能解决你的问题,请参考以下文章