少见面经 顶一下
-----邮件原件-----
发件人: perlchina@googlegroups.com [mailto:perlchina@googlegroups.com] 代表
vincent
发送时间: 2009年6月19日 11:08
收件人: PerlChina Mongers 讨论组
主题: [PerlChina] 腾讯互动娱乐mysql DBA四面面经
20090611腾讯四面面经
1月11号面了腾讯,今天得到结果是fail,呵呵现在把面经写出来给大家分享一下。免
得大家跟我一样变成炮灰~。
跟论坛里面robin订好是下午两点的时间,由于天气比较恶劣,到东站迟了十来分钟,
错过了12点去深圳的一班,只能坐12:20一班的车,到深圳已经
1点30,快速换乘地铁,到世
界之窗时前给robin打了一个电话,下了地铁,打的士前往到科技中一路的华强发展大
厦时,已经两点半多,相当的汗颜。感觉robin人很不错,递了一
份试卷给我做,大约四页左
右,第一大题是几道选择题,隐约记得一道是linux那个目录不能备份,其余没有什么印
象了,呵呵真不好意思。第二大题是几道填空题,这两道大题都是考
一些很基本的linux和数
据库的知识,会者不难,不会嘛就只能干瞪眼了,由于三年来大部分时间都是在linux
上做开发,基本上条件反射地填上去了,剩下几条有点模糊的就连猜带
蒙填上去了。接下来两
题是编程题,一题是把某个目录下后缀为.sh的文件后缀改为.shell,因为之前跟robin
说过熟perl,所以特意标明了让我用perl来做,呵
呵.
#!/usr/bin/perl -w
use strict;
use Symbol;
my $fh=gensym();
##默认是当前的目录了
opendir($fh,"")||die;
my @files=grep(/\.sh/,readdir($fh));
closedir($fh);
foreach my $file(@files)
{
my $new=~s/\.sh/\.shell/g;
rename($file,$new);
}
shell版本相当的简单,不过文件数目貌似不能超过1万+。超出的话,ls命令会溢出。
#!/bin/sh
File=`ls *.sh`
for name in $File
do
mv $name ${name%sh}shell
done
perl为什么不用 <*.sh>操作符呢,因为这个操作是调用外部shell的,文件数超过一定
数量会溢出,而且不能移植到其他平台。
下一题是给一个学生课程列表
peter math 89
john math 88
john langauge 87
peter langauge 77
..
求每个学生的总分,并且升序排列输出
这个题我在项目中有实际运用过,是使用数组来记录其位置协助排序,不过时间有点
紧,想不起来了。有点瞎写了。不过做完一阵子后就想到借用数据库来排序。
现在把我的完整
代码写出,有不对的地方大家请指正一下
#!/usr/bin/perl -w
use strict;
use Symbol;
use DBI;
my $fh=gensym();
my $dsn="DBI:mysql:database=test;localhost;port=3306";
my $dbh=DBI->connect($dsn,"dbuser","passwd") ||die;
$dbh->do('create table temp(name varchar(50) ,score int(8))');
my $sql=$dbh->prepare('insert into temp(name,score) value(?,?)');
open($fh,"score.txt")||die;
while(my $line=<$fh>)
{
chomp $line;
if($line=~/(\S+)\s+\S+\s+(\d+)/)
{
$sql->execute($1,$2);
}
}
close($fh);
###然后操作数据库 呵呵
$sql=$dbh->prepare('select name,sum(score) as value from temp group by
name ');
$sql->execute();
while(my $ref=fetchrow_hashref())
{
print $ref->{'name'}," ",$ref->{'value'},"\n";
}
$sql->finish();
$dbh->disconnect();
接下来的是一些linux的基础知识题以及数据库的基础操作(建表,授权等等)
然后是一个按照要求写sql语句的题目,感觉都比较简单,就不写了。
然后是一题关于mysql误删表恢复操作,我是使用了mysqlbinlog来恢复,将二进制log
定向到一个文本中,找出相应的删表语句将其删除,然
后恢复。
接下来的也是一些sql语句的题目。
全套题个人感觉还算比较简单,由于没有做什么准备,概念性的东西一时间记不起来只
能瞎蒙了,考的东西平时基本上都有在现实中遇到过。由于我对
oracle没有什么研究,刨除
oracle的一部分,我个人的自我评分是80+。呵呵当然最后分数还是由robin说了算。
接下来是robin的技术面,问了一些perl和mysql技术性的东西,除了myisam和innodb的
cache机制的区别这个问题无法答出,其
余都能勉强给出自己的理解和看法,然后现场写了一
段典型的DBI操作代码,讲解了DBI使用占位符来优化查询的技术细节。回答了技术危机
的处理。等等,就这样第一面在闲聊中结束 。
二面是一个瘦瘦的斯斯文文的帅哥,问得比较多的是我工作中的流程和事件处理经验,
对此个人比较唏嘘,我觉得我们公司可能是中国大部分民营软件开发公司的
缩影,制定了相
当多的流程和制度,但是由于真正做事情的就那几个人,所以平时做事忙起来就发现按
流程基本上做不了什么事情了,最后又流向于混乱式。虽然也参加了专业的
项目经理课程培
训,但是发现那套东西要做起来相当的困难。二面也在流水式的你问我答中结束。
三面是一个高高大大的帅哥,也问了一些平时工作中组织配合的问题,还有自己的一些
意向和想法,三面也不知不觉中结束了。
四面应该是一个部门的领导,表情比较屌,问问题都是仰着头问,让我个人心里有点压
力和别扭。首先让我自我介绍,我重点说了一下我做过的项目,然后他展开
提问。
首先问了为什么要转行,说从开发转到DBA是一个变化相当大的转行,有无办法适应。
个人肯定是说OK啦。因为我觉得从开发转到维护和管理相应来说应该是
很容易。然后是为什么
选择腾讯,我个人回答是腾讯规模大,技术强。这其中有一个比较尴尬的细节就是,由
于我习惯于在开会时自己在纸上瞎写一些字来提高注意力,在面试的时候也
在稿纸上不时东
画西画,他当场指出这是对面试官的不尊重,让我相当的尴尬,看来一些小细节真的是
要人命啊。最后就是强调我的简历都是写一些开发的东西,跟这个部门的工
作内容不太吻合
,其实我过往的工作经验就是开发监控和管理的产品,我也觉得这个是我应聘这个岗位
的最大优势,只可惜没有注意到在简历中体现出来。总之这些问题都让我比
较尴尬, 有点郁
闷不已,还问了为什么要从广州到深圳工作。以及离职问题等等。最后面无表情握手中
收场。
面试结束了,天都黑了,还下大雨,肚子饿得要死,在雨中等了好久才打到车。我个人
总结了一下:第一是没有及时根据此岗位转变角色,还停留在以往应聘开发
者的角色去应聘
这个岗位,第二是没有注意面试中的小细节,导致面试官产生偏见。第三就是简历做得
太无针对性。第四可能就是传说中的人品了~~ ⊙﹏⊙b汗。希望对有
去面试的朋友有帮助。
最后介绍一下我自己,广州五山某理工学习毕业,三年的电信网管开发经验,精通
perl、unix/linux c,perl主要是文本分析,系统监控及
管理,网络通信,数据库操作。c的话主
要是接口通讯开发,数据库通讯,谙熟多进程,多线程,信号,精灵进程,终端/伪终
端等编程,mysql从应用、调优、管理、原理谙熟于心娴熟于手,呵呵
~~其余啥都懂一点,包
括泡妞、蒲夜场,跑东莞...,现在想换新工作,有介绍的朋友请不吝帮衬~~~,工资最好
不要低于7.5K O(∩_∩)O~~~~
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---
没有评论:
发表评论