2009年6月19日星期五

[PerlChina] Re: 腾讯互动娱乐mysql DBA四面面经

我基本上都是按照c的风格来写perl的,风格太自由的话,同事之间的交流不是很顺畅~~~

On 6月20日, 上午2时44分, Huangj <reds...@163.com> wrote:
> 两段perl 代码写的忒罗嗦,还是 perl 么
>
> 在2009-06-19,vincent <pcwl.vinc...@gmail.com> 写道:
>
>
>
> >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 访问该论坛
-~----------~----~----~----~------~----~------~--~---

没有评论: