码迷,mamicode.com
首页 > 移动开发 > 详细

知乎(高逼格)android开发offer——get

时间:2015-08-27 15:18:14      阅读:327      评论:0      收藏:0      [点我收藏+]

标签:android   知乎offer   面试   

首先介绍一下自己

  • 楼主马上大四,计算机水本,考研与我无缘
  • 现在在帝都某公司算法部实习,公司算大公司吧,然而个人爱好偏开发
  • 大二的时候写个一个app,主要是用各种框架

上干货

  • session1:偶然看到知乎的内推帖,投了个简历,下午hr姐姐call我,安排面试选在3天后,然而又要笔试阿里,所以没怎么复习
  • session2:8点起床,9点过比较紧张的去了创业园,感觉知乎氛围很好,在那等了一小会,有前台大叔给你倒水

一面开始

  • session3:应该是个参加工作不久的研究僧师兄,出了一道算法题,主要考字符转int,然后分析了时间复杂度和空间复杂度,之后聊了android listView的性能优化,还问我recycalView的特点,进程通信的方式,我主要说了aidl和共享文件,广播,本来还想用java装B,还在精通java,然而师兄并没有问,说叫等一下

二面:

  • 二面明显难度提升,而且面试管应该是组长吧,比较喜欢听吹架构,正好之前自己从web后台,客户端,硬件等方面做了一个智能家居项目,就吹了下硬件那边的逻辑,包括蓝牙,wifi的HTTP/IP协议,透传等,红外等传感器,然后web后台我说我用sevlet,因为本身客户端主要需要接口,数据库用mysql,也没问rollback(嘿嘿),然后把客户端展示给他看看,实在太丑没有美工(这不是重点),由于我的项目中有一个很重要的point就是在硬件触发时唤醒服务器后台推送,首先硬件识别后,串口读写数据到单片机,单片机写入wifi缓冲区,wifi通过HTTP透传数据到我服务器(可以用TCP和IP),服务器获取mac标识,推送至TAG(家庭ID)或者用户(Alias)
  • 说到推送,好好吹吹实现原理。
    • 1:pull方式,http长连接或是socket,轮询间隔设好即可,缺点及时性差
    • 2:push方式,实时性好,方法1,google自带推送平台(网太差),方法二,xmpp协议(基于XML)。其实封装的比较好了,有个开源包叫asmark,其中有XmppConnection这个推送库,话说好多公司都是用它自己封装库,不过开源的demo只管推,没有延时推送,消息暂存功能,方式3,用三方的
  • 算法:是2个有序数组合并问题,用2个指针每次比较能够O(n)解决问题,算法pass
  • LruCache:先装装B,说一下我写的和google V4包有什么不同,主要是没有trimToSize方法,没有sizeof()计算内存耗费大小,我主要是重写LinkedHashMap,讲了下LinkHashMap源码,其实我也是看别人写的源码解析,(嘿嘿,毕竟年轻,多像别人学)

总结:

  • 公司重视基础,每次面试都有算法,虽说不难,估计就是看看写代码的规范
  • 安卓岗位多问安卓问题,而且偏向于性能调优,并没有像社招那样要求各种框架的熟悉度,而是看你用过的框架的源码解析度
  • 吐槽环节,就好好吐槽吧,嘿嘿
  • 祝大家都能收获offer。

版权声明:本文为博主原创文章,未经博主允许不得转载。

知乎(高逼格)android开发offer——get

标签:android   知乎offer   面试   

原文地址:http://blog.csdn.net/u012235132/article/details/48026985

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!