面试那点小事

2015-08-26 17:04 
19715 
19 
80

  截止到现在我一共面试了20多家公司,小公司都是初去北京的时候面试的,主要为了熟悉面试流程,学习分配面试时间,还有路程远近什么的都要考虑,所以开始去的都是小公司。下面我就说一下面试收获、笔试题,总结感悟等,写在文章中的公司都是有典型代表的,我感觉能给大家带来收获的,以后再面试有新的东西我会慢慢添加,如果你对面试相关的东西还有疑问,您可以联系我,联系方式在本网站有。希望对大家有所帮助。

一、速普

简介:小型公司,有自己的产品

1:检测一个变量是否有设置的函数是否?是否为空的函数是?(2分)
2:echo(),print(),print_r()的区别(3分)
3:表单中 get与post提交方法的区别?
4:session与cookie的区别?
5:用PHP打印出前一天的时间格式是2015-8-10 22:21:21(2分)
6:能够使HTML和PHP分离开使用的模板引擎(1分)
7:使用哪些工具进行版本控制?(1分)
8:如何实现字符串翻转?(3分)
9:有一个网页地址, 比如PHP开发资源网主页: baidu.com, 如何得到它的内容?($1分)
10:在PHP中error_reporting这个函数有什么作用? (1分)
11:JS表单弹出对话框函数是?获得输入焦点函数是? (2分)
12:foo()和 @ foo()之间有什么区别?(1分)
13:GD库是做什么用的? (1分)
14:写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。
15:写出 SQL语句的格式 : 插入 ,更新 ,删除 (4分)
  表名User Name Tel Content Date
  张三 13333663366 大专毕业 2006-10-11
  张三 13612312331 本科毕业 2006-10-15
  张四 021-55665566 中专毕业 2006-10-15
  (a) 有一新记录(小王 13254748547 高中毕业 2007-05-06)请用SQL语句新增至表中
  (b) 请用sql语句把张三的时间更新成为当前系统时间
  (c) 请写出删除名为张四的全部记录

  总结:后来发现这套题是那家公司从网上找的。。。 大家可以好好做做,链接地址:http://dwz.cn/1xm0F5

二、同城帮

  之前隶属于360公司,现在慢慢独立出去,属于创业性质的公司,主要是O2O方面的,面试内容如下:

  • 说说项目,问项目的具体内容,遇到的挑战,具体解决办法,缓存的使用,为什使用redis,为什么使用独立文件服务器。

  • 缓存,memcache与redis的区别,redis的优势之处。怎样解决memcache命中率低的问题,问了在实际项目中memcache命中率。是否部署过redis服务器。

  • svn与git 的区别,具体的工作流程,使用git 的好处,以及怎样处理冲突,基本的命令写两个。

  • 数据库
      一:数据库的存储引擎,myisam与innodb的区别,说出除了这两种外的其他存储引擎。
      二:int 与bigint的区别,实际使用的时候主键选择哪个?int(10)与int(11)的区别,var_char与char的区别
      三:数据库设计,用户表与登录表分开的好处,

  • 5:php部分
      一:session与cookie的区别
      二:分布式怎样解决session共享问题(可以从数据库,ccookie存session,nosql方面解决)
      三:get与post的区别
      四:php __autoload机制

  • 6:计算机网络
      一:三次握手与四次挥手的过程(主要是画图),各个参数的含义
      二:http与https的区别,https怎样保准安全(结合ssl)

  • 7:数据结构
      一:链表的结构体(线性和链式),插入一个元素的操作代码(纸上写)
      二:排序部分,时间复杂度,写出一个排序算法。
      三:二分查找的思想,时间复杂度

  • 8:开发环境,linux常用命令,apache与ngiax的区别,平常用的开发环境是win还是linux等

  面试心得:技术面试大约50分钟,比较累,,,,还有是问问住宿、交通,毕业、实习时间,到岗时间等,hr人不错, 面试整体不难,都是常用到的东西,算法要随手能写。

三、新浪微博

  我一直想去的公司。面试内容做了一套卷子,大约6张(单面),试题大概如下:

1:为什么想加入新浪,对新浪的印象
2:未来的计划、目标、打算?
3:有没有微博号,昵称是什么,粉丝数多少?
4:填空:(主要写结果)
  一、判断null的函数
  二、判断变量是否存在的函数
  三、判断是否为空的函数
5:php转换json为数:组的函数
6:php 得到前一天的日期,格式如下(2015-08-24 10:20)然后写入到文件 /usr/test中
7:提取url,要求从”< a href=’sina.com.cn’>sina“中提取url部分(要求使用两种方法)
8:连续子数组的最大和例如输入数组为{1,-2,3,10,-4,7,2,5}最大的子数组{3,10,-4,7,2}和为18
9:写出常见的linux命令功能:top、ps、mv、find、df、cat、chmod、chgrp、grep、wc
10:写出linux查看80端口的命令
11:有一个ip日志文件每行一个ip,统计某一个ip出现的次数
12:数据库设计,有一个发布文章的数据字段:文章id,文章标题,发表人,类别id,子类别id,所属地id,创建时间,状态
  问题:一:划出数据库设计图(表之间的关系),表可以自己添加,说明这样设计的目的,好处
     二:写出创建创建文章表的语句,说说选择字段的依据。
     三:写出查找最新发表的10篇文章的sql语句,说说优化的方法。
13:系统设计
  场景:现在要做一个用户日程提醒系统,需求如下,可以记录用户每天的日程,代办日程到了以后,以短信或者是邮箱的形式通知用户,用户可以查看历史日程,可以管理自己的日程(增删改查),用户有好友,可以查看好友开放出来的日程,可以进行好友聊天。
  要求:一:考虑并发性。
     二:用户量在千万级别,日程数量在亿,10亿级别
     三:保证安全、首页家在流畅
     四:使用缓存服务器
  问题:一:你感觉这个系统的难点在什么地方
     二:这个系统各个模块之间的关系,
     三:这个系统实施的具体细节(缓存,大数据方面)
     四:系统的安全性怎样保证

一面(技术面):
  • 1:主要是关于这个系统的数据表设计
  • 2:这个系统当用户比较多的时候可能反应较慢,怎样解决
  • 3:这个系统的首页加载比较慢怎样办?
      开始说,采用页面静态化,他说首页是动态加载,页面静态化没有效果,反而会拖慢系统,文件IO需要消耗性能,让我想想还有什么办法,我说缓存首页数据,但是要注意缓存更新时间。

  • 4:登陆问题,慢慢的系统的登陆比较慢,你知道为什么吗,怎样解决
      我说应该登陆的SQL语句优化不好,他说SQL已优化到最好还是比较慢。我说是用户量实在太大了,超出了mysql的单表容量了,可以水平拆分,缓解数据增长的压力,他说什么是拆分,水平拆分和垂直拆分有什么区别?我说垂直拆分解决表与表之间的IO竞争,不解决单表中数据量增长出现的压力,把不向关的表放在其他的服务器上,水平拆分解决单表中数据量增长出现的压力,不解决表与表之间的IO争夺。他问拆分依据是什么,我说按时间拆分,他让我再想想。他说你登录的时候怎样确定用户在哪个表里面呢?我说在hash把用户与分表的关系hash到一个表里面,他说不是最好的解决办法,并且hash麻烦,需要确定那张表才能进行查找。。。他让我再想想,我从存储过程,数据库缓存来说,最后他说不好使,他说你可以采用用户名分表,用户名(a-z)分26个表,登陆的时候一下就可以找到他在的那张表了。这个问题大约谈了30分钟,回答的不是多好。

  • 5:第三方登录问题
      他问做过第三方登陆没有,我说我自己尝试过,利用qq做第三方登录,主要调用的腾讯提供的的接口,他又问我第三方登陆的原理。

二面:(技术、项目面试)

1:问我为什么想加入新浪微博
2:说一下项目,他问360抗战老兵那个,他访问这个网站,问了系统的测试,开发细节,缓存那块问题,问了mc与redis的区别,内存管理的不同
3:访问了我的个人网站,说可以下网站的架构和部署
4:问我想找什么样的工作,我说想找网站后台,或者是app接口开发的工作
5:问我最有没有学习新的东西,想学什么新东西,我说可以看看nodjs 想关注php7

  总结:一面技术面大约60分钟,主要问了数据库方面的,感觉自己回答的不是很好,二面也是技术面,主要是问项目(360老兵那个,大家对这个项目比较敏感),面试到12:30左右。整体感觉还行,问的都是数据库方面的优化,表拆分,大数据的处理方法等等。最后让我第二天等结果,第二天hr打电话说面试通过,说了实习的事,周一上班,周二办理手续

四、美丽说

  国内最大的女性快时尚电子商务平台,面试内容做了一套卷子,试题如下:

1:mysql的索引是那种数据结构,为什么使用这种数据结构。
2:设计一个数据表,用来存储url信息,此表会经常发生插入删除操作,应用场景是查找某个url是否存在,请写出表结构,并加说明。
3:比较单词a 和 b判断b单词的字母是否都在a中。
4:写一个timer类,用来统计应用程序的运行时间,并写出调用方法。
5:session与cookie的区别,说明禁用cookie后 session还能不能运行,可以参考(http://www.cnblogs.com/zyf-zhaoyafei/p/4477175.html)
6:新浪微博一年产生的数据量是多少,应该怎么存储这些数据。
7:状态吗:204,304,404的含义,可以参考(http://tool.oschina.net/commons?type=5)

8:介绍你了解的开源项目

一面(技术面):

1:介绍php的魔术方法
2:索引的最左原则
3:数据库sql的优化,哪些sql语句执行会忽略索引。
4:策略问题: 4个人过桥,a要1分钟, b要2分钟,c 要5分钟,d要10分钟,两人同时过桥,过桥速度以慢的为准,一人拿手电,过完桥后一个人吧手电送回来,问最快多长时间过完桥。

二面(技术面,问题):

1:说说项目,360老兵那个。
2:浏览器输入url到页面呈现,经过的过程,
3:mc与redis的区别,内存管理方面。

三面(hr面):

  是个漂亮的妹子,聊得很开心,主要涉及工作打算,生活住宿方面的,大学学习经历,是否了解美丽说这个公司等等。最后让回去等通知。

  总结:美丽说,公司挺大的,一面感觉还是数据库方面有点吃力,主要是数据库底层方面的讨论不是多好。关于策略类型的问题,一般要不是你见过,基本上打不出来,但是不能说自己不会,你应该给出自己的见解,即使不完全正确。最后回去等通知,说是还有一个hr今天不在,如果觉得可以26号会打电话通知我来复试。。。最后还真给我打电话让我去复试,时间是27号。

五、360金融

笔试题:

1:写出PHP中以 array_ 开头的函数,并说明用法,至少写6个
2:mysql常用的存储引擎,说出3个以上,并写出每个应用场景,优缺点
3:redis与MC的区别,写出其中一个的内存管理机制
4:查看 Apache 80端口的命令
5:用C语言实现php中的base64编码函数
6:用PHP写出快速排序

面试:

1:微博中reids的应用场景,redis的内存分配机制,为什么使用redis不适用MC,mc与redis的并发哪个较高
2:array_map的使用场景,array_merge(),合并数组之后的键名变换情况
3:php几个编码函数区别(json_encode, http_build_query, urlencode等区别)
4:正则表达式中 . * + / 的含义
5:给定一个数字,2进制转换成16进制

六、美*网

笔试题:

1:打印前一天的日期时间格式:2016.03.18 10:15:12,打印上个月的最后一天的日期
2:说出 empty(),isset() array_key_exits();的区别
3:浏览器地址栏输入 www.baidu.com 以后发生的事情,和用到的协议
4:从连接中(< a href=’www.meicai.com/index.html’>)提取出url
5:PHP发送强求的方法,有什么不同点
6:写出10个mysql 的字段类型,说明使用场景
7:一个数据表,70个字段,10G的数据量,每天50w的数据增量,说出有哪些优化的方法
8:写一个定时任务,每天2点到8点,每隔10分钟调用一次PHP脚本 /data/www/test.php
9:写出查看php-fpm进程数的linux命令
10:写一个函数,判断重一副扑克牌中随机抽出的5张牌是不是顺子,顺子的定义:5张牌是连续的牌比如 23456 其中2-10是原数字,A是1,J是11,Q是12,k是13,小王大王是任意数。

七、瓜子二手车

一面(技术面):

1、介绍一个写过的项目,画出架构和技术点
2、coding 杨辉三角,求m行n列的值
3、使用正则表达式判断ip的合法性,要考虑全面
4、redis和MC的内存管理机制
5、redis中数据存储方式,各种数据结构应用的场景,redis做消息队列与专业的消息队列有什么区别和优势
5、最左原则的原理和sql的优化机制,什么时候不会用到索引。
6、分条件查询的优化和系统设计与架构
7、你最近学习的新技术,你对架构师的理解,你对GO语言的理解,速度快吗?快在哪?

二面(技术面):

8、一条sql语句的优化机制,大数据分页处理
9、矩阵的规律遍历,写出遍历的代码
10、上司与你的关系,怎样保证工作与生活的协调等等
11、抓取 a.html页面,把含有a便签中的href全部抓取,如果url含有 guazi.com就把该条url标题上guazi,然后再抓取该链接对应的页面,这样不断的遵化你抓取,你怎样解决死循环问题和页面抓取效率问题。

八、百度外卖

一面(技术面):

1、说项目,介绍知识点,画结构图
2、数据库最左原则含义用法
3、一个日志文件,打印某一时刻的并发数(记录日志的条数)
4、一个数组按照固定的值排序(按照id排序)

  1. $a = [
  2.   ['abc'] => ['id' => 1, 'value' => 233],
  3.   ['bcd'] => ['id' => 2, 'value' => 463]
  4. ]
二面(技术面):

1、说说项目
2、数据库最左原则
3、数据库索引建立的原则
4、数据库引擎,说出特点
5、redis和MC的优缺点,都在什么场景下使用
6、打印日志文件中,出现最多的前100个IP
7、说出linux中常用的命令
8、php 和其他语言不同的地方,PHP中弱类型的实现
9、C语言中结构体和共用体的区别,每个占用做少内存(二者已给出)
10、有没有自己写的一些作品,或者开源的东西
11、系统设计:百度外卖活动中的秒杀怎么设计,注意点是什么

三面(技术面):

1、介绍做的项目,画出你做的一个模块的流程和开发关键点
2、有没有学习新的东西,比如新的技术,语言
3、GO 语言看过吗,有什么优点,用在什么地方合适
4、为什么选择百度外卖
5、为什么不愿意留在原公司,离职的原因在哪

四面(技术面):

1、介绍一个最深刻的项目,说出技术点
2、coding:一个数组 0 - n-1,已经排好序,打印出满足 a[i]+a[j] = c 的所有i和j,说出时间复杂度
3、以后有什么打算,学习的目标或者是自己的规划目标
4、收到的offer都有哪些,为什么没有选择这些公司
5、原来后台项目有多少个人,每一个人的技术实力在哪

九、小米科技

一面(技术面):

1、写一个类,一个单例类,输入两个数组,$arr1, $arr2,每个数组中存有整数(0-9),这个类提供两个方法,一个是排序$arr1,一个是把两个数组当成两个大数然后进行相减,返回结果(第一个数组如果是[5, 2, 3, 4] ,相当于数字:5234)
2、讲解做的项目,讲述知识点和自己的贡献。
3、数据库中两个笛卡尔积在join中的体现,说出left join的中间过程
4、最左原则的意义,数据库索引的使用情况和优化
5、网站打开慢的原因和解决办法

二面(技术面):

1、讲解项目的架构,redis在项目中的使用情况
2、为什么不留在原来的平台
3、数据库事务原理,是否使用过

三面(技术面):

1、数据库优化,索引建立原则
2、数据库事务的含义
3、redis与MC的区别,redis支持的数据结构有哪些
4、框架使用,优缺点
5、PHP中的魔术方法
6、是否使用过前端框架,js,jquery是否学习过

四面(技术面):

1、为什么来小米网,对我们了解多少
2、给两个数组得到交集,各自的差集
3、给两张表,得到各自的交集和差集
4、数据库索引的字段,哪些会用到索引,该怎样查看。
5、PHP短标签,怎样开启。结束标签有什么影响
6、session和cookie的区别于联系,怎样保证集群下的session同步的问题
7、对架构师的理解,你认为怎样才能达到架构师
8、div 怎样实现三栏式布局
9、php 各个框架的应用,php的安全相关
10、数据库的优化,怎样保证大数据量的数据库访问正常
11、数据库集群的特点和数据同步的机制

12、什么是响应式设计

—————-持续更新中—————-

  基本上就这么多了,因原来的文章较长,对试题外的东西进行了迁移,想看面试技巧和软实力的同学请到我的这篇文章:《面试技巧和软实力》,本篇博客以后只放面试真题。

  上面写的都是我自己的一些面试经历,所说的话并不针对哪个公司或者哪个人。为保护其他隐私,希望大家不要摘抄或者转载(面试题可以),文章里面会涉及一些公司的面试内容,如果贵公司不想把自己的面试题或面试信息公布的话,请您联系我,我会第一时间删除,谢谢大家!~

评论列表

1#楼   2015-08-27 13:59      网友(四川省成都市 电信)

不错不错!

2#楼   2015-08-30 16:02      网友(四川省成都市 电信)

很牛啊,新浪的卷子,你全做出来了没???

admin回复: 网友(四川省成都市 电信)   2015-09-01 17:21  

做完了,没有对完!哈哈!

3#楼   2015-08-31 21:11      网友(北京市 电信互联网数据中心)

真不错

4#楼   2015-09-22 13:01      网友(福建省福州市 电信)

楼主好魄力!

admin回复: 网友(福建省福州市 电信)   2015-09-22 13:52  

还行吧!比较折腾。

5#楼   2015-09-22 14:08      网友(河南省新乡市 联通)

加油,哈哈~~支持LZ

admin回复: 网友(河南省新乡市 联通)   2015-09-22 14:12  

好的!

6#楼   2015-09-22 14:22      网友(江苏省无锡市 电信ADSL)

好牛!!!

7#楼   2015-09-23 09:57      网友(江苏省无锡市 电信ADSL)

你最后选择了哪个公司,新浪吗?

admin回复: 网友(江苏省无锡市 电信ADSL)   2015-09-24 14:56  

嗯嗯!去新浪了。

8#楼   2015-09-28 18:22      网友(北京市 光环迅通)

我想知道登录tocken和哈希这方面哪里可以接触

9#楼   2016-04-20 10:17      网友(湖北省武汉市 电信)

不错哦!

10#楼   2016-05-02 11:08      网友(重庆市永川区 联通)

不错,学习了

11#楼   2016-08-05 19:44      网友(陕西省西安市 电信)

大神很厉害

12#楼   2016-08-18 10:26      网友(河南省新乡市 联通)

好厉害啊 看完后收获很多 嘿嘿

13#楼   2016-09-01 20:56      网友(北京市 星光数据中心IDC机房)

sssssssssssss

14#楼   2016-12-10 17:34      网友(上海市 电信)

很好 很有帮助 我这个月也要出去找工作了 很忐忑 感谢大神分享

15#楼   2017-02-16 14:08      网友(中国-北京-北京)

你在哪些网站投的简历啊?拉勾网靠谱吗?

admin回复: 网友(中国-北京-北京)   2017-02-17 18:09  

拉钩,内退,各大公司官网!

16#楼   2017-10-31 11:31      网友(中国-上海-上海)

楼主总结的很好,很仔细,希望以后更新

17#楼   2018-03-13 22:04      网友(中国-北京-北京)

楼主是社招还是校招呀

18#楼   2018-04-12 13:31      网友(中国-上海-上海)

大神 学习了

添加评论

* (邮箱不会公开,只会做回复通知用)

* (好的站点我会把它添加到友情链接

* (需要您帮忙,确定您是真实的访客)

*

提交评论