精华内容
下载资源
问答
  • 软件测试面试经验

    千次阅读 多人点赞 2019-06-11 21:37:50
    今天去参加第一家公司的面试,是做出行APP项目的,做的业务是出行、顺风车、家政服务、跨城叫车等。距离稍微有点远,大概花了一个多小时的路程,下了车 还要步行20分钟。到了公司之后 就开始填表。之后就等待初试 ...

    今天去参加第一家公司的面试,是做出行APP项目的,做的业务是出行、顺风车、家政服务、跨城叫车等。距离稍微有点远,大概花了一个多小时的路程,下了车 还要步行20分钟。到了公司之后 就开始填表。之后就等待初试
    以下是今天面试流程和内容:
    我面试的这家公司流程是三轮面试
    第一轮是HR
    第二轮是技术
    第三轮是大BOSS
    然而挂在了第二轮上,就让我回去等通知了!

    第一轮HR面试内容:
    1、自我介绍
    自己阐述
    2、离职原因
    因为我是从一线城市回到老家的,所以我说的是,离家乡太远,公司是创业公司,整体运营不太好,面临倒闭的状态,所以就回来了,其他的可以自己扩展
    3、发展方向
    未来发展方向只往测试岗位发展,暂时不考虑其他岗位
    4、为什么转软件测试
    一直都是做测试的, 而且身边做测试的朋友也比较多,不论是前景还是发展空间上升幅度都比较大。
    5、有没有去其他家面试,现在处于什么状态
    有去过,都是一些大公司,目前都处于复试的阶段,HR又会问,你会不会把多家面试的公司综合起来做个比较,(自己以实际情况扩展)
    6、什么时候可以到岗
    离职状态就说即使到岗,时间不要拖太久
    7、能不能接受加班
    可以接受加班,我上家公司是创业公司,也是经常加班,但是会提高自己的工作效率,减少一些不必要的加班。
    8、期望薪金,以往的薪资架构是什么样的
    期望薪资根据自己所在的城市去给,工资架构按照自己公司的架构去说
    9、HR介绍公司的业务
    10、你还有什么要问我的么
    hr一般不懂技术,所以就问了一些比较常规的问题,比如说:上班时间,休息,节假日会不会放假,公司加不加班什么的。

    第二轮是技术面试
    1、自我介绍
    太多了,自己阐述
    2、项目的业务逻辑流程
    根据自己公司的业务流程说
    3、测试流程
    我们在测试之前会参加一个需求分析的会议,相关的人员都会参与(产品、测试、开发),探讨需求主要的一些功能点,然后开发就排期进行研发,我们领导就开始编写测试计划,对我们进行任务分配
    我们拿到需求规格说明书之后,会编写测试用例,写完之后会有用例评审的阶段,有评审修改的就修改,没有就整理成最终的用例版本
    开发那边版本编译完之后,我们会先进行一个预测,对主要功能业务进行测试,如果主要业务流程不通过,直接返回给开发进行修改,预测通过之后,会执行测试用例进行系统测试
    在测试的过程中,有BUG就提交bug,关注BUG的状态,一直到不存在严重的bug的时候,或者满足用户的需求,测试完之后就写测试报告
    产品上线发布之后,关注web是否是正常运行,然后就是常规性的项目迭代和维护
    4、常用的linux命令说一些
    -f 强制删除
    -r 删除目录
    find . -name “*.log" 在当前目录查找以 .log 结尾的文件
    find / -name log 在根目录查找log命名的目录和文件
    cat 显示文本文件内容
    ps 查看进程(动态)
    netstat -apn 查看所有端号
    ping(进程)
    Ctrl+c:结束当前正在运行的程序
    查看日志 tail -f 文件名
    5、有没有用到什么工具
    有,用到的是jmeter和fiddler工具,接口用来做接口的,fiddler用来抓取数据进行错误分析,定位bug的。
    6、用的测试环境怎么搭建的
    把war包放到webapps然后配置文件–>conf,修改好配置文件后,启动tomcat
    检查环境的同时,查看日志文件,看是否部署会出错
    7、测试中做的是什么测试,扮演的什么角色,测试哪些内容
    测试的过程中负责的是功能测试,其次是接口测试,扮演的角色是测试工程师,
    主要测试投资理财两大模块,其包含:借款信息显示验证,剩余金额显示验证,项目数量显示验证、流标倒计时显示验证等
    8、接口是怎么测试的
    根据接口需求文档,编写测试用例,用例评审,执行用例等,跟功能测试流程差不多,就是测试的数据模块不一样。
    9、APP怎么做兼容性测试的,用到的什么工具
    根据功能测试、兼容性测试、安全性测试、性能测试去测试,并没有用到辅助工具,都是手动测试的。
    10、给你一个出行打车的软件,从打出到结束的流程,你怎么测试,测试的功能点
    我的测试思维,或者是测试点是这样的,根据功能测试、兼容性、安全性、性能等几大模块去测试,比如功能测试:需要验证 从打车有没有地图定位、附近显示的距离、有没有支付功能、有没有跟司机或者乘客沟通的功能等,根据主要的一些功能点测试。
    11、你的抗压能力能不能举个例子,证明你的抗压能力强
    自己扩展,根据自己的情况去说
    12、你们公司加班么
    加班,因为是创业公司,所以也是经常性的加班到22点以上
    11、逻辑思维题
    一个盲人有10张扑克牌,7张面朝上,3张面朝下,问:盲人用什么方式把3张面朝下的翻朝上,7张面朝上的怎么翻面朝下
    答:把10张牌,全都翻一遍
    以上就是今天的面试流程,欢迎大家留言说说自己的面试经验

    展开全文
  • 数据分析面试经验(给自己一个梳理的过程)

    千次阅读 多人点赞 2019-06-22 21:11:52
    数据分析与数据运营、数据挖掘是数据整个开发生命中的一小章节。 数据挖掘的门槛当然比数据分析高,涉及到较多的算法与调优以及如何将某个一个模型...将近一个月的数据分析面试经验,我感受到了不同公司的氛围。大厂...

    数据分析与数据运营、数据挖掘是数据整个开发生命中的一小章节。
    数据挖掘的门槛当然比数据分析高,涉及到较多的算法与调优以及如何将某个一个模型运用到实际当中。
    数据分析则是根据业务的需求,去挖掘数据中存在的有价值的信息,再使用合适的工具(比如excel、tableau、echarts等可视化工具,将数据中蕴含的价值变成表、图、文字等形式)。
    将近一个月的数据分析面试经验,我感受到了不同公司的氛围。大厂小厂都有自己的风格,小厂讲究效率至上,大厂则尽量完美,我自己数据梳理一下这一个月面试的过程。
    常规问题:
    1.做个自我介绍
    2.你的工作经验,你主要负责哪一部分的工作内容,取得什么结果,对你有什么帮助,遇到了哪些困难,如何解决。
    3.为什么从上家公司离职
    4.你的优点和缺点是什么?
    5.你对加班和出差有什么看法?
    6.你有什么职业规划吗?
    7.找工作最看重什么?为什么?
    8.对我们公司有了解吗?如果你成为公司的一员,在这个岗位上,你如何开展工作?
    9.你对薪资有什么要求吗?

    场景问题:
    1.面试官会根据公司的业务具体给出一个场景,需要你进行场景的分析,给出原因或者是建议(答不答对不要紧,重点是需要逻辑清晰,说话清楚,能够让面试官明白你的意思)
    2.对数据库要求较为严格的会当场让你写代码,sql多练练就好了,最基本的都要会,比如连接、子查询、触发器、存储过程,可以多写sql面试题。
    3.说话要不卑不亢,问到不会的也不要慌张,说出自己的想法就ok,最后再表明自己会在完成工作的情况下还会不断的学习,让自己的技术更加饱满完整,为公司创造价值。
    先写到这里吧,以后再补。

    展开全文
  • 面试经验

    千次阅读 2017-07-06 08:40:03
    看别人的面试经验,主要在网上,这里我列举两个比较好的。 Android客户端面试题集锦 Android阿里面试题锦集 投递简历 一份好的简历是非常有必要的,需要突出你的重点和闪光点,具体怎么写简历可以...

    转载请注明出处:http://blog.csdn.net/a296777513/article/details/73610719

    前言

    人生困难重重,在漫长而艰辛的前行路上,坚持不懈、脚踏实地的“低头拉车”固然重要。但认清形势、找准目标的“抬头看路”也很关键,甚至决定着你能否达到成功彼岸。只寻求远方的梦想,而不付出当下的努力,那是迷梦;只知道埋头苦干,而不认清方向,那是徒劳。

    先简单说说我最近的面试经历吧。面试的公司很多,大部分最后都能得到令人满意的结果,我将这些体会记录下来,面了这么多公司,如果不留下什么,那岂不是太浪费了。对于我来说,这也是一次自我检查,在这次面试中总结经验,认清自己,同时希望这些对即将换工作或者打算看看其他机会的你有一些帮助。

    以下的部分有具体的面试经历,也有自己的一些总结面试必备技能和自己的一些感想。

    为何离开华为

    来华为的主要原因是:增长自己的见识,很好的发展自己。很好的发展自己,就需要一个平台,通常这个平台是大公司才能提供,大公司会有一套完整的机制来培养你,让你有更多的选择,可以选择自己喜欢做的事情。所以我建议刚毕业的同学,最好还是选择大公司,哪怕以后要跳槽,大公司也是非常好的跳板。在华为的这一年,最大的收获并不是技术上的成长,而是自己的见识和思考问题的能力。虽然有很多人不满华为,公司大了,肯定不可避免会出现很多问题,但是总体来说华为还是一个非常了不起的企业。

    离开华为的主要原因是:我的职业规划与华为给我的规划不相符,还有就是流程化的东西太繁琐,自己有一些不适应,所以选择离开了华为。非常感谢我高总(直接领导)和邦邦(师傅),在华为的这一年中给予我非常多的帮助,在我跟领导沟通离开的想法时,领导开诚布公的跟我聊了很多,最终我还是下定决定要离开华为,领导建议我先去面试一些公司,等找到合适的再走,裸辞的话社保和心态上都会有一些问题,这样的领导真是没话说了,在华为很多领导都是不放人的,很多都把员工的下一家拖黄了才放人。在这一年获得的成绩:

    1. 北京研究所第一届Hackathon 二等奖
    2. 转正绩效是A
    3. 年终绩效 B+,获得明日之星
    

    准备

    其实我很早就开始准备了,准确来说也不算准备,只是一直在总结Android相关方面的知识,因为在华为虽然工作有时候比较多,但是还是有大把时间可以自己学习一些感兴趣的方向。从过完年回来,我就有计划的复习和总结了一些知识。

    • 看过的书籍,这里并不是泛泛的读一遍,而是详细理解了大多数内容,通俗一点就是可以用自己的话将相应的知识解读出来。《Android开发艺术探索》(这本书真心不错,我反复读了4、5遍)、《Android群英传》(比较接近开发使用,因为做过一些应用开发,读起来还是比较简单的,读了2遍)、《深入理解Java虚拟机》(也是一部神作,可以让你清晰的理解JVM,读了2遍,理解的不是很透彻)、《剑指offer》(感觉面试中碰到的算法,80%都能找到相应的题目,保证所有的题都可以手写出来就行)。4个月精读了以上书籍,还有其他的都是简单了解,这里就不列举了,读完这些书,应该可以让你上一个层次吧(妈妈再也不用担心我面试啦…)。
    • 刷题,主要是LeetCode(大概刷了300道题左右,每天3-6道,坚持下来,需要多复习,因为很多题过一段时间会忘记),还有看过一些牛课网。
    • 看别人的面试经验,主要在网上,这里我列举两个比较好的。

    投递简历

    一份好的简历是非常有必要的,需要突出你的重点和闪光点,具体怎么写简历可以参考

    CodeKK说简历

    有了一份好简历,接下来就是投递简历,一般是:拉钩+BOSS直聘+内推,从我这次面试机会来看,三者比例是2:2:1,也可能我工作经验还不到一年,内推滴滴、阿里和腾讯直接就把我的简历刷掉了,但是内推也是具体到某个部门,如果被刷掉也不要灰心,现在大公司基本上各个部门都有自己的hr,可以在拉头和BOSS上多投递一些,万一其他部门看中你呢?

    面试经过

    这里我仅仅记录一些问过的题目(能记住的),答案我就不写出来,基本上都可以在网上找到相应的答案。

    作业盒子

    时间有点久,很多问题记得不太清,大概有以下内容。

    一面

     1. Android一些优化方案
     2. 什么是过渡绘制,如何防止过渡绘制
     2. 事件分发机制
     3. ListView的优化
     4. Binder机制
     5. 在多进程中,Application会启动几次
     6. 单例模式,双锁原理,volatile原理,静态内部类实现单例的原理。
    

    二面

    二面面试官是leader?反正应该不是做android的,Android的相关知识问的也不多,大多是项目上的东西。

     1. Java多线程,synchronized
     2. 聊项目,都具体做了什么。
     3. Binder机制
    

    三面

    应该是leader吧,主要了解一些个人的情况,以及一些项目,最后问了期望的薪资,然后当场就给了offer。

    毕竟1年多没有面试了,第一场面试还是给我了很大的自信,也知道现在自己大概能要多少工资是合适的,所以同学们准备跳槽的时候,最好先面几家小公司,盒子还是一个很不错的公司,整体的办公环境挺好的,现在也处于盈利状态,在教育类的app中也排的上名次。

    快手

    快手就在五道口地铁站出口不远地方,能看到很显眼的LOGO,看上去很霸气的样子,但是当我进入到快手前台的时候,连一个标示符都没有, 一度以为自己走进了假快手,好吧,我是来面试,这些都不重要,接下来接待的人员把我领进了一个小屋里,等待面试的开始。

    一面

    面试官是一个很fashion的人,是从小米核心部门过来的,是Android小组的领导。

     1. 问了关于数据库的一些问题,SQLite的相关操作,没办法,我在华为唯一一个做的和java相关的项目,但是不太擅长数据库。
     2. 网络相关的问题,网络的五层模型,又问了TCP和UDP,还有Android相关的长连接,这里问的比较深。
     3. 开始Android先关的知识,Handler机制,Acticity的生命周期以及四种启动模式,各自特点,Service的两种启动模式生命周期,如果同时使用两种启动模式是否可以,顺势讲到Binder,什么时候可以得到控件的大小,最后写了一道链表反转的算法题
    

    第一面这就算过关了等待二面。

    二面

     1. 问了项目相关的问题,这部分根据自己的项目经验,由于大家的经验都不同,这里我就不详细说了。
     2. 设定一个场景,怎么去实现相应的功能,因为快手这个部门想做社交,因此这里是问我是如何实现微信的联系人页面(包括与服务端有什么样的交互)
     3. 最后也是一个算法,写出所有数组的子序列
    

    二面面试官是这个组的leader,跟我讲了现在这个组的发展情况和快手现在的情况,由于快手成长很快,所以不能仅仅依靠一个APP,还需要在其他方面进行一些尝试,而这个组的任务就是在一些方面做一些尝试,大概就是这个样子。
    二面也顺利通过,接下来就是HR面了,这时候正好是12点,他们要去吃饭,不过快手是提供午餐和晚餐的,第一个面试官带给我一份饭,还不错,后来HR跟我说,现在只是过渡时期,后面午餐和晚餐会改成自助餐的形式。

    三面

    HR上来很亲切,问了我一些面试的情况,难不难之类的,然后又聊了聊我大学和研究生情况,我只想说我“too simple , too naive “,大概了解我后,只跟我聊我的不足,以此来压低我期望的薪水。说了一下薪资期望,加了微信,让我回去等待,说发offer大概是2周时间,因为需要走各种审批流程,让我不要着急。

    快手是一个很年轻的公司,技术还是需要一定的积累,希望不要像小咖秀一样昙花一现。

    美团外卖

    一面

    简历上写的项目问了一遍,然后开始问知识点。

     1. volley的源代码,在图片缓存部分讨论了挺长时间,http中缓存机制,Last-Modify的作用等。
     2. fragment的生命周期
     3. service一些知识
     4. 事件分发机制
     5. Binder实现机制,Stub类中asInterface函数作用,BnBinder和BpBinder区别。
     6. gradle中buildToolsVersion和TargetSdkVersion的区别是什么
     7. 手机适配一些方案
     8. hashmap的实现原理
     9. 静态方法是否能被重写
    

    这些大概聊了1个半小时,开始的时候还有些紧张,慢慢聊开了,就好多了,面试官的语速有点快,老是需要面试官重复一遍,我也不经意间语速也变快了,不过能看出来面试官还是很厉害的。

    二面

     1. 3次握手和4次挥手的原因,以及为什么需要这样做。
     2. 数据结构,搜索二叉树的一些特性,平衡二叉树。
     3. hashmap是如何解决hash冲突的
     4. 进程与线程区别
     5. 写了一个二分查找和单例模式
     6. http中的同步和异步
     7. 聊了一些项目上做的东西,问了问职业规划
    

    由于二面面试官不是做Android,本来面试我的人临时开会去了,所以这一轮面试没怎么问android相关知识,不过二面面试官一直是微笑,所以这一轮很轻松,更像是一起讨论问题。
    面试完已经是下午4:30了,由于面试当天是星期五,而周五美团的会议比较多,所以等了会,二面面试官说三面面试官在开会,面试另约时间,我还是说这次一次面试完吧,这一等就等了2个半小时,期间hr跟我说三面面试官是个大牛。

    三面

     1. 我认为Android做的优秀的几个地方,然后又根据我说的问了问比较深入问题。
     2. Android是如何进行资源管理的。
     3. java比较重要的几个特性
     4. 网络五层结构,每一层协议,由于我网络不是很好,还问了一些其他的问题(例如MAC地址和ip地址的区别等)。
     5. 为什么离开原来公司,以及职业规划,然后因为面试完大概就晚上8点了,就先让我回去,下周让hr跟我联系,我想这是应该通过面试了吧。
    

    美团技术还是很厉害的,从面试官的水平就可以看出来,尤其是外卖核心部门,办公环境是不错,但是感觉就是有点乱,不知道是不是因为今天面试的人很多,基本上一直有很多人来回走动,有一些嘈杂。

    小米TV

    一面

    可能是因为一面是我的学长,所以没有问我很多技术的问题,聊了聊我做的向项目,然后聊了一会OpenGL、GLSurfaceView和Shader,主要聊了OpenGL绘制方法,还有一些Binder相关知识,感觉非常轻松,还想着如果面试都这么轻松就好了,然后就直接下一面了。

    二面

    二面面试官看上去很斯文,但是还是一个对技术精益求精的人,问的问题都很细,具体问题的顺序挤不太清楚了,大概问了下面几个问题。

     1. 单例,快排,回型打印二维数组
     2. 写一个死锁,死锁是怎样产生的,怎样防止死锁
     3. Acticity启动模式有几种,分别代表什么意思
     4. 聊项目都做了些什么
    

    三面

    leader是一个很有亲和力的人,上来就跟我说前面技术已经问的差不多了,这里就不询问我详细的技术了,就出了一道算法题,需要说出时间和空间复杂度,以及有没有更优解。

     1. 字符串反转,讨论复杂度。
     2. 聊经历和项目
    

    HR面

    HR面问问题都是一个模板刻出来,都是例行公事的询问,bulabula……然后就算完成面试。
    从整体来说,TV更需要一个测试开发,但是我还是想做开发,暂时不想做测试,所以我估计TV是不会给我offer了,虽然说了过几天会正式给我发offer,最后也没法。

    小米TV在一个独立的小院子里,环境还是不错的,整体的发展也可以,毕竟是小米生态中重要的一个部分。

    网易

    网易大楼是在百度大楼的旁边,感觉还是不错的,来的稍微有点早,在前台等了20分钟左右的样子,面试官就带我去面试了。

    笔试

    具体的内容记不太清楚了,大概有以下几个类型,都还是比较基本的。
    选择题、程序输出题、四道算法、简答

     1. 给定一个int型 n,输出1~n的字符串例如 n = 4 输出“1 2 3 4”
     2. 输出所有的笛卡尔积组合
     3. 单例模式
     4. 最长上升子序列
    

    都不是很难,基本上都能作出来。

    一面

    一面面试官是资深的Android开发工程师,的确水平很高。所有的问题问的都很详细,很多细节,面试官都能清晰的说出来,的确水平很高。
    属于循序渐进的问题方式,从简单的知识入手,逐渐深入,直到你回答不出来而且问的都是你自认为很擅长的知识点,可见面试官的功力有多深厚,深深的佩服。
    我下面大概说一些问题,但是到最后总能问到很深入的地方。

     1. 对刚才做的题,一些错的地方做了讨论,主要是类的加载和内部类方面的知识,尤其一些深入到JVM层的知识的确自己有一些不足,不过大部分都还是能答出来。
     2. 双亲委托机制,类的五个加载过程。
     3. java类加载器的加载流程。
     4. Binder机制,从java到framework再到kenral层,面试官问的都很详细,遇到不会的也都会跟我解释。
     5. Serializable和Parcelable的区别。
     6. View的绘制流程,详细到framework代码,讨论到不确定的地方,立马打开电脑和我一起看源码。
     7. 事件分发机制。
     8. 常用设计模式,使用静态内部类实现单例的原理是什么。
     9. 线程同步,CopyOnWriteArrayList怎样实现。
     10. Volley源码,EventBus源码。
    

    面试完后就到12点了,讨论了1个半小时,跟我说我这关过了基本上就没问题了,面试官还是一个很幽默的人,带我去网易食堂吃了顿饭,的确这里的饭特别好吃,回来后,休息了一会,就开始Leader面了

    二面

    Leader面,我还以为至少要3轮技术面呢,没想到直接就到leader面试了,后来才知道第一轮面试的结果还是很重要的,一面面试官是非常资深的工程师,只要通过一面了基本就没问题了。

     1. 项目介绍,聊一些项目上的问题
     2. 下拉listview的实现,需要注意的地方和优化的地方(不是lsitview的优化,是下拉的优化)。
     3. Android上一些优化方案
     4. 介绍了一下现在做的项目,大体说明了现在所用到的技术。
    

    总体感觉网易的氛围还是非常好的,技术实力非常雄厚,leader技术能力也很强,并且一面面试官告诉我,leader有时候还会自己写一些代码,一般到了leader很少有写代码的了。

    hr面

    一样的流程,各种谈,说面试官对我评价非常高,希望我能来之类的话,然后就算面试结束了。

    小米

    这是第二次面试消息,这次是小米的核心部门,MUI部门,主要做阅读类app,听说发展还是很不错的,为什么要面试两次小米呢,因为之前内推过小米,一周都没有消息,我就在网上投了简历,等面试了小米TV,这边又叫我去面试。到了小米前台,前台没人,我问保安,保安让我打HR电话,结果HR也不接电话,就这样等了半个多小时,HR终于回过来电话,打电话让面试官把我接上去了,一面面试官还以为我不来了。

    一面

     1. 聊项目,GLSufaceView,OpengGL,Shader相关一些知识,在项目中做的优化
     2. gc是根据什么来回收一个对象的,引用计数和gc root分别怎么实现。
     3. 怎样会产生内存泄露,举一个具体的例子,使用什么检查内存泄露
     4. 自定义View的绘制流程
     5. 给出二叉树和一个值,找出所有和为这个值的路径;{1,3}{3,6}{3,4}{6,8}区间去重,最少去掉几个集合,可以让这个集合没有交集。
    

    二面

     1. 什么是ANR,Activity、BroadcastReceiver、Service对ANR时间限制分别是多少,怎么处理ANR,除了系统生成trace.txt文件,怎么在程序中检测ANR。写出伪代码。
     2. 编解码一些知识,I帧,B帧,P帧区别。
     3. Android一些优化方案。
     4. 算法 n/m,怎么判断得数是无限循环小数。
    

    三面

    三面面试官看上去很年轻,人也特别幽默,不过技术还是没得说。
    1. 介绍项目。
    2. 事件分发机制。
    3. 算法,将一个字符串转换成int型数字,考虑 错误输入,溢出,正负值等一些条件,考细心。
    4. 给出一个搜索二叉树,输出一个排序好的双向链表。

    四面

    本来以为是HR面,结果不是,应该leader面,上来就说技术就不面了,介绍自己的项目中觉得做的最好的几个部分,大概说了下,接下来就是问了为什么离开原来公司,为什么选择小米 bulabula…..面完之后,说今天太晚了(晚上快8点了),hr已经走了,下周让hr跟你电话联系吧,把我送到楼下。

    第二周小米就发来了面试通过的消息,具体谈了一些薪资待遇问题。

    百度

    一面

    一面面试官的思维非常跳跃,经常我说到一半的问题,突然询问其他相关问题,然后回答完再继续之前的说下去,有些许不适应这个节奏。顺序可能不太对。

      1. 类的加载过程,Person person = new Person();为例进行说明。
      2. JVM相关知识,GC机制。
      3. 类的加载器,双亲机制,Android的类加载器。
      4. Android中进程的级别,以及各自的区别。
      5. 插件化原理。
      6. 集合框架,list,map,set都有哪些具体的实现类,区别都是什么。
      7. concurrentHashmap原理,原子类。
      8. volatile原理。
      9. Binder机制。
      10. View的绘制流程,事件传递机制,Handler异步消息机制。
      11. Interger中的128(-128~127),这里考的是常量池的概念,这个没回答上来。
      12. 线程池的相关知识。
      13. Handler机制,HandlerThread实现等等。
      14. LRUCache算法是怎样实现的。
    

    二面

    二面面试官看上去挺面善的,所以气氛就不那么紧张了,说实话来百度还是有点小小的紧张的。

      1. 说了说项目中相关的知识。
      2. 聊了聊之前做过的项目。
      3. 内存泄露,怎样查找,怎么产生的内存泄露。
      4. 怎样计算一张图片的大小,加载bitmap过程(怎样保证不产生内存溢出),二级缓存,LRUCache算法。
      5. 简单介绍一下java中的泛型,泛型擦除以及相关的概念。
      6. Android优化相关的只是,布局优化、内存优化等等。
      7. SQL相关的知识优化的方案,这里我直接说不太了解,就过了。
      8. 算法题,m * n的矩阵,能形成几个正方形(2 * 2能形成1个正方形,2 * 3 2个,3 * 3 6个)
    

    三面

    因为每次面试都是有记录的,所以三面面试官问题的技术问题就不那么细节了,大体以讨论的方式跟我聊,大体聊了以下几个方面,当然越深入,面试官对你的评价就越高

     1. 项目相关。
     2. Android优化.。
     3. 插件化相关技术,热修补技术是怎样实现的,和插件化有什么区别。
    

    其他的都记不太清楚了,总体来说聊的还是不错的,本来以为百度会有很多算法题,结果只出了一道(侥幸。。。),本来还要有leader面,三面面试官还是非常好的,跟我说他们几个技术觉得我还是不错的,就看leader了,结果leader有事,出去了,不知道什么时候回来,就约当周的下班时间过去就好,然后面试官亲自把我送到了门口,跟我聊了很多,挺不错的。

    四面

    四面是经理面,感觉经理已经不做技术了,技术基本上没有询问,大体问了一下项目,以及自己在项目中都做了一些什么,聊了聊其他的话题,就完事了,然后就让我回去了,
    大老远的跑过来,就谈了不到半个小时,好吧,谁让人家是百度呢,回去等hr电话吧。
    过了几天,hr联系我谈薪资待遇等,又让我跑了一趟,面试这么多家,最累的一次,谁让百度是牛*呢,一顿说,bulabula……
    感觉近几年百度发展的不是很好,一直在走下坡路,不知道是不是在憋大招,很多百度人都出来了,不过百度毕竟是百度,还是很厉害的。

    阿里

    梦寐以求的阿里终于找我来面试了,之前不管是内推还是网络上投递都被拒绝了,原因是我工作不到一年,没办法谁让马云爸爸太厉害,我投递的是杭州的天猫,是做虚拟现实的小组(刚听到这个名字感觉和自己不太相符),这是我到面试完后,才知道的,面试官也跟我说Android上的需求可能不会很多,更多的是VR技术在Android上的应用,包含OpenGL等技术。

    一面

     1. 询问了我博客上写的一些东西,从项目立意谈起,到设计,再到详细的技术实现,可谓是面面俱到,由于自己写的博客还是比较熟悉,回答的还不错。
     2. GLSurfaceView的相关知识,OpenGL,Shader,绘制流程。
     3. 询问当前做的项目,以及到具体的实现和优化。
     4. 多进程间的通讯,Binder机制。
     5. 询问看过哪些框架源码,EventBus,Volley讲了一下。
    

    大概聊了一个小时左右,聊得还可以,基本上都回答上了,中间给了我很多建议,不懂的地方,也会仔细跟我讲解一番,其实有一半的时间都是跟我聊产品,为什么这个产品好,怎样做才能迎合市场,然后怎么设计整个产品等,感觉跟我现在水平不是一个层次的,果然,第二天就给我发了一封邮件,说我现在暂时不太合适投递的岗位。

    面试结果

    除了阿里淘宝外,其他的公司基本都拿到offer,这段时间把华为这边的工作都交接完,休息几天,如果有空的话回家停几天。

    总结

    自己对于互联网有一些小小的见解:随着资本的冷却,整个互联网市场也逐渐的冷静下来。Android应用开发从一开始能说几个四大组件的名词,能随便写个监听事件,就能拿到高达上万的月薪的时代了。归根到底并不是工作难找了,而是Android应用开发工程师这个职位已经趋于正常,再也不是没什么技术也能拿高工资的香饽饽。当然这个也不是绝对的,对于中高级的开发人员来说,市场还是比较缺少的,尤其是知名企业对于招聘员工来说,不仅要求有过硬的技术,还要求有高素质,好的教育背景等等。总的来说,高工资可以给你,但是前提条件是你要足够优秀,或者说让面试官觉得你很优秀。

    其实面试过程就是一个把你自己推销给别人的过程,对于我们(毕业不久的同学,因为我毕业不到一年)来说就是要让面试官感觉你技术好,有培养价值。感慨有点多了,还是来点干货吧,大概列举一下每一轮面试的大概范围和深度,但是也不是绝对的,还是要看具体情况。

    笔试

    对于社招的同学来说,基本上不需要笔试,但是也有公司是需要的,例如 今日头条和网易都有笔试。笔试都是比较基础的一些知识,Java、Android等方面的,一般不会有网络,计算机等方面的笔试,一般情况下大家都能答出来。

    一、二面

    近一段时间的面试经历来说,一、二面的问题没有什么很大的区别(公司基本上都有3面技术面,但是也有例外,我在网易就是2面技术面。),基本上都是一线开发人员。主要考察你是否有牢固的基础知识和是否在平常开发中能熟练使用。

    • 是否能讲解清楚你所做的项目,以及使用到的相关知识。
    • Android基础知识
    • Java基础知识,大概是多线程,线程安全,集合类,JVM,类相关知识等。
    • Android一些源码的阅读
    • 优秀的第三方框架源码阅读

    三、四面

    一般公司都是三轮技术面,但是也有四轮技术面的,不过不多。很多公司基本上每一轮面试官都会记录他所询问的问题,以便给下一轮面试官作参考,还有就是避免对同一个知识点多次询问。所以到了这轮面试,基本上不会再询问比较基础的知识。

    • 会从两个方面考察,
      • 广度:比较新的技术(Rxjava,插件化等),JVM,GC,网络,数据库,Android(一般不会询问之前面试官问过的问题)。
      • 深度:一般会通过1或2个问题来考察,例如:map接口下都有什么子类->hashmap和hashtable区别->hashmap实现原理->怎么解决hash冲突->是否了解concurrentHashmap->concurrentHashmap实现原理->volatile实现原理(concurrentHashmap读是不加锁的,使用到了volatile)。
    • 项目中的贡献,所做的优化。
    • 设计能力,基本上不多,这个要看面试的岗位,因为我这里面试的只是高级开发,并不是架构。
    • 工作中的亮点和突出。

    hr面

    基本上到了这轮,你就算通过面试了。hr会询问一些你的经历,最主要的还是和你商定薪资待遇。在这轮,大家应该要对自己的薪资水平有一个大体的了解,一般都是在原来的工资基础上增长20%~30%的样子,当然,如果你在面试过程中表现非常优秀,也可以不受这个限制。当然如果公司诚心要你,就算你要的工资过高,hr也会委婉的告诉你,不会直接把你pass。

    选择公司

    由于很多小伙伴都在询问我,最后选择了哪家公司,因为之前在写这篇博客的时候,刚刚面试完不久,还没有决定去哪家公司,所以就没有写上去。最后我选择今日头条,这边的发展更适合自己,当然这个不是唯一的选择标准,我觉得选择公司应该从以下几个方面来考虑:

    • 公司是否在上升期。
    • 所做的东西是否有市场价值,自己是否感兴趣。
    • 通过面试基本了解将要共事的同事技术情况,毕竟如果你周围的人很优秀,那么你肯定也不会差,一定要跟优秀的人一起共事,你会获得很大的成长。
    • 薪资待遇,毕竟我们找工作就是为了养家糊口,我相信这一条也是很多人决定一家公司的重要理由之一。

    以上就是我个人对于如何选择一家公司的一些想法,不足之处希望大家能指出。


    (function () {('pre.prettyprint code').each(function () { var lines = (this).text().split(\n).length;var numbering = $('
      ').addClass('pre-numbering').hide(); (this).addClass(hasnumbering).parent().append( numbering); for (i = 1; i
      展开全文
    • 2020浦发银行面试经验

      千次阅读 2019-09-02 21:13:10
      本来是放弃了,不想去面试的,无奈还是不想死心。于是便买了晚上去武汉的火车票,第二天早上78点才到武昌,可以说整晚没睡,强烈不建议坐夜车去面试的,太难受了。下午大概1点半坐地铁到了浦发银行大厦,签到等到...

      本来是不打算去面试浦发银行的(人数太多了),奈何还是不想死心。于是便买了当天晚上去武汉的火车票,第二天早上8点才到武昌,可以说整晚没睡着,强烈不建议坐夜车去参加面试,太难受了。下午大概1点半到了浦发银行大厦,签完到等到待机考。给了三道题,50分钟完成,居然给的dev编译器(平时习惯用VS),也是醉了,第一题给出两组数,求每位数相互乘积,最后求和,开始想复杂了,想用字符串流去转化整数为字符串,结果stringstream用得不熟悉,花了不少时间才整明白,其实只要按照常规思路用两层for循环就可以了,好在最后a了;第二题,罗马数字转十进制整数,结果是对的,用的switch,不知道为啥通过是50%;第三题百钱买百鸡,时间不太够了,写了代码,三层for循环,没来得及调试,就自动提交了。可能还是自己平时刷题太少了,导致做题速度太慢了,旁边的华科大神半个小时a三道,哎,得加强刷题练习了。然后就是等面试,等了2个小时,去一个小房间面试,大概6个面试官,让我交成绩单,简历打印了没有看,全程就一个面试官一直问我,大概问了15分钟吧,可能对我的研究生方向(计算机图形学)不感兴趣,提都没提,加上我不是搞java的,貌似不是也很想问的意思,就象征性地问了c和c++基础。

      我回忆下,大概问了
      1.c和c++的区别
      当时只是把它们的概念背了一遍,其实感觉有很多可以说的东西,比如c和c++的关键字啊,不同的打印方式,申请地址方式,指针和引用,结构体和类等都可以说。
      2.const用法,指针常量和常量指针
      这个貌似很多公司必问,总结如下:
      常量指针 const int * p
      又叫常指针,可以理解为常量的指针,常量指针指向的对象不能通过这个指针来修改(即给*p赋值,error),但是指针本身指向的地址可以发生改变(即 p++,OK)。

      int i = 10;
      const int *p = &i;
      cout << *p << endl;//10
      p++; //OK,指针还可以指向别处,因为指针只是个变量,可以随意指向,但是(*p)++是error的,是const int的,不可修改,
           //即常量指针不可修改其指向地址的内容
      i = 12; //仍然可以通过原来的声明修改值
      

      指针常量 int * const p
      本质是一个常量,而用指针修饰它(即指针本身是一个常量),指针所保存的地址可以改变(即给*p赋值,OK),然而指针所指向的值却不可以改变(即 p++,error)。

      int i = 10;
      int *const p = &i; //常量指针
      cout << *p << endl; //10
      (*p)++; //OK,指针是常量,p指向的地址不可以变化,因此p++就是error的,但是指向的地址所对应的内容可以变化。
      cout << *p << endl; //11
      i = 12; //仍然可以通过原来的声明修改值
      

      3.二叉树按层遍历
      在这里插入图片描述
      通过将二叉树装入队列,每装入一次根节点的左右孩子,就将队列头指针后移一位,具体步骤如下:
      a、把根节点A放入队列,此时队列为:A,队列头指针指向A,也就是队列第一个元素
      b、把当前队列头指针所指元素的左右儿子放入队列,即将B C放入队列,此时队列为A B C ,队列头指针向下移一格,此时指向B
      c、不断重复b步骤。此时把B的左右儿子取出来放入队尾,队列变为A B C D E,队列头指针后移,指向C,C没有子节点,队列不再延长;
      d、结束条件,队列头指针和尾指针重合时,输出最后一个元素,算法结束。
      4.单链表的逆序
      剑指offer的题目,通过三个指针可以实现,head,next,prev,看图说话吧
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

      typedef struct LNode {
      	int data;
      	struct LNode *next;
      }LNode;
      
      LNode* reverse_linked_list(LNode *head) {
      	LNode *next = NULL;
      	LNode *prev = NULL;
      
      	while (head) {
      		next = head->next;
      		head->next = prev;
      		prev = head;
      		head= next; //当prev走到最后的head,head=NULL,循环终止,整个链表发生逆转
      	}
      
      	return prev; //最后prev就是队列的头
      }
      
      

      5.socket编程中tcp通信建立用了哪些函数,地址绑定怎么绑定的
      这个还是研一写的代码,记不清了,记住,不熟悉的东西一定不要写到简历,要写一定要弄熟再去面试。
      在这里插入图片描述
      6.多线程
      这个没研究过,不会。

      总结一下,问题不难,但是就是说不全,总是会漏掉一点,就在自己思考时,面试就开始说下一题了。说到底还是自己太菜了,没有刷题,没有总结,这次回学校了好好反省,把题目刷几遍,毕竟现在竞争力太大了,有调查说80%的offer都是掌握在20%的人手上,这就是咱这行现在的形势。哎,咱得加倍努力啊,不说了,学习去了。

      展开全文
    • C++面试题目及面试经验

      万次阅读 多人点赞 2018-10-24 10:10:43
      终于,在跑了这么多场宣讲会之后,总算拿到了一个心仪的offer,故此写一篇经验分享,纪念一下秋招历程: lz 方向是C++开发,双非本科生,靠着队友,水了一个CCPC的铜,省赛什么的就不说了,到手的offer五六个的样子...
    • 我的JAVA面试经验(3年左右工作经验)

      千次阅读 2019-04-16 08:23:36
      致那些迷茫的JAVA面试者(特别是南京的1-4年经验),致那些奋发的年轻人,致自己。写这篇博文主要也是对我的成长道路的记录,面试受挫后的反思,及对自己的勉励。 本人介绍:3年多经验的程序员,坐标南京。 背景:...
    • 华为单板硬件面试经验

      万次阅读 热门讨论 2016-11-23 14:54:07
      华为单板硬件面试经验
    • 第一次写面经,有点不太熟,浦发算是我春招投的第二份简历,但是周期确实蛮长的。 二月底在浦发上投了简历,大概三月中旬收到了笔试通知,三月底的时候收到了面试通知。...面试:是在重庆分行面试,四月10-12...
    • 面试两个月,我吐了!(软件测试岗面试经验

      万次阅读 多人点赞 2021-04-28 19:16:33
      在校时成绩是敲门砖,工作后简历和面试变成了敲门砖,简历筛选后就是面试面试有多重要,不用我说大家都明白。由于中途换过一家公司,想找个好点的公司,面试经历比较曲折,所以有些面试经历经历写下来博大家一笑。...
    • 2019海康威视面试经验

      千次阅读 2020-01-02 16:30:41
      1.楼主是女生楼主秋招面试了中兴,海康,大华,华为,面试了四家,除了华为,三家都拿到了offer,楼主最后选择的是海康威视,哈哈哈加班其实也还可以,还是看部门的,因为自己本来就在杭州,同学什么的也多,所以还是...
    • 海康威视面试经验总结

      千次阅读 2020-07-23 15:50:27
      java后端开发 1.怎么用List集合既存储Integer对象,又存储String对象 答:List 2. float2.0-1.1,一定等于0.9吗,为什么,如果不等于怎么才能让它等于0.9? 3. hashset存储的对象一定不相同吗?什么情况会相同?...
    • 2020 Golang字节面试经验分享

      千次阅读 2020-04-18 00:56:24
      2020年4月份字节跳动后端面试经验 第一面 远程使用牛客网进行面试 面试官首先介绍说会有几轮面试算法题 1.1 将整数转换二进制 然后将负数 算法题 1.2 买卖股票的最大利润 给定一个数组代表股票每天...
    • 字节跳动测试开发工程师面试经验

      千次阅读 2020-07-03 00:56:38
      面试平台:牛客网 面试岗位:客户端测试开发工程师 这已经是第五次面字节跳动了,哎,不堪回首,前四次太久远除了单链表的逆序以外没记得别的了~ 1.自我介绍 2.项目流程 3.详述之前负责过的模块,测试难点在哪 4....
    • 今日头条面试经验

      万次阅读 2018-03-29 12:38:28
      今日头条面试经验 今日头条面试经验 一共四轮面试 前三轮是技术面试,最后一轮是hr面试。 (我选的python语言) 第一轮:问了简历上的两个项目,简单的介绍了一下项目,问了一些项目里的技术问题。然后直接开始...
    • 烽火通信面试经验

      千次阅读 2019-09-23 20:31:25
      #一面,申请的后端开发岗 ##首先自我介绍,然后问了大概四个问题: 1、编译原理中的编译过程说一下 2、说一下线程同步问题 3、线程有哪几个状态?回答完状态又问了下等待态是在等啥? 4、操作系统的作用主要有哪些?...
    • 10 场外企面试经验总结

      千次阅读 多人点赞 2019-05-28 20:52:20
      你可以说,第一次面试外企,没有经验,但绝不能说,自己准备不充分。这是大忌!     以下 7个专题面试,都是多年积累的经验。每个专题又分多个小题,有专业性强的问答,也有常规通识整理,希望助大家...
    • 吉利面试经验

      千次阅读 2019-03-29 17:34:34
      @吉利面试经验 群面:10人,2分钟自我陈述,10分钟讨论,一人做总结陈述 优先顺序排列 无领导小组问题,有十万块钱,有8个需要帮助的员工,问怎么分配,员工就是有得病的,有工伤的,有已故员工子女上大学的,我...
    • 面试经验|传音控股自动化测试

      千次阅读 2021-08-26 22:47:54
      第一面:电话面试 1.Android开机流程 2.如何测试开机时间 3.通过识别图形界面测试开机时间 scrcpy——Android投屏神器(使用教程) 4.android四大组件 5.java实现并发的方式 6.monkey如何缩短测试时间 答:...
    • 前言 先简单介绍下自己,我“平平无奇小天才”一枚,毕业于南方普通985普通学生,有幸去百度、字节面试,感觉大公司就是不一样,印象最深的是字节,所以有必要总结一下面试经验,以及面试中遇到的一些问题,以便大家...
    • NLP面试经验汇总

      千次阅读 2019-06-15 09:50:27
      19届春招秋招面经-NLP方向:... 蚂蚁/腾讯提前批NLP面试经历-蚂蚁offer:https://www.nowcoder.com/discuss/170292 2019春招面经大汇总!(岗位划分):https://www.nowcoder.com/discuss/167046 ...
    • 项目管理面试经验之谈

      千次阅读 2019-09-26 09:57:49
      提到项目管理往往认为的是具体的项目管理经验,这种管理经验如何提炼,如何描述,是需要思考总结的,项目管理属于软实力,很难通过具体的描述去呈现出来,下面结合自己面试经验,说一下项目经理面试重点考察的几...
    • 算法工程师,最全的面试经验梳理

      千次阅读 2019-03-20 23:30:14
      然而由于经验不足、信息不对称,很多候选人走了冤枉路。终致付出大量努力,却处处碰壁,丝毫不见回报。 2018 年,我先后面试社招生、校招生、实习生百余人,发现很多算法工程师候选人失败的背后,存在着一些共同的...
    • 微软社招面试经验

      千次阅读 2020-07-27 17:58:03
      微软的面试整体偏向基础,英语能力考察仅限于个人简介和项目描述,如果运气好的话都是中国的面试官,没有英文面试。 投递简历之后会有hr先和你聊一轮,要求做一个一分钟的英文自我介绍,然后会对英文能力做一个整体...
    • Unity面试经验(两天面六家,四个offer,济南)

      万次阅读 多人点赞 2019-02-25 10:38:25
      本文仅为二线城市的Unity面试经验,求职环境与一线城市完全不同!! 1.海投 投简历用的app为Boss直聘,智联招聘,前程无忧,(boss直聘是没法投简历的,如果想投简历先跟人事打招呼,如果人事想看你的简历需要花十...
    • 美团面试经验分享

      千次阅读 多人点赞 2018-11-05 19:42:17
      本文面试题是转载于:程序员乔戈里,因为作者只是描述面试问题的过程,我这里对面试问题做详细补充。 一面 1、自我介绍 答:自我介绍是面试中唯一的自己主动介绍自己的环节,一定要好好把握好,你数据结构学的...
    • 刚去字节跳动面试成功回来,为了能让大家有更好的面试资料,小编花费了2个多月的时间,把市面上的所有的Java面试题,做了一个归纳总结,整理了快300多页,够大家刷题好久了!好了,废话不多说...
    • 2020春招深信服笔试面试经验

      千次阅读 2020-03-13 13:02:14
      深信服春招流程:网申——简历筛选——笔试——技术一面——技术二面——HR面试——Offer 笔试(网络): 笔试题目:8道不定项选择,7道填空,三道编程题,考两小时 不定项选择、填空主要考的是数据结构、操作...
    • OPPO软件测试面试经验

      千次阅读 2019-08-30 08:23:42
      这一电话面试了一个半小时,第二天零零散散记录以下内容,给大家参考; 面试官:你为何不让你前同事推荐你,你要自己投简历,推荐机会大点,投递简历人多会被忽略; 我:(心里:那你不是联系我了么),因为认识...
    • 数据仓库工程师面试经验(2019)

      千次阅读 多人点赞 2019-09-12 15:04:55
      数据仓库面试经验分享(2019年)
    • 蚂蚁金服面试经验分享

      千次阅读 2019-01-17 19:48:37
      从7月分开始,打算找工作,一个偶然的机会,拉勾上一个蚂蚁金服的师兄找到我,说要内推,在此感谢姚师兄,然后就开始了蚂蚁金服的面试之旅。把简历发过去之后,就收到了邮件通知,10个工作日联系我,请耐心等待。 ...

    空空如也

    空空如也

    1 2 3 4 5 ... 20
    收藏数 240,547
    精华内容 96,218
    关键字:

    面试经验