下午接到ATC Microsoft的面试的电话,我还有点惊奇
虽然事先我是把简历给了番茄的,不过,他说太弱了,应该不会被面的。
原来是华丽大姐那儿正好需要人,番茄又把我推荐过去了
事先我不知道是什么工作,不过,华丽在电话里问我是不是以前做过ASP的一些东西,熟悉.net,C#,我说是吧……然后就过去面试了
瞒着导师跑出的实验室。
面试有点仓促。本来还想准备一下的,不过,想想这样的技术面试,一晚上也不可能准备什么东西,不可能去学点新的东西,而应急的背些概念更加是对双方都有害。能干就是能干,不能干就是不能干,板上钉钉的事而已。
过去后才知道是要改一个项目的代码,他们需要一个C#高手,而且需要立即上手。
当时,我就觉得没啥希望,我下周还有考试,时间上肯定不能马上上手,而且我那点C#基础,边学边用还凑合,这样的大项目实在是太……
华丽大姐找了个coding牛人过来面的我,现在回忆起来,当时问了一些这样的问题(有省略):
Q:会http解析吗?对这个协议了解多吗?
A:不会
Q:你做过一些ASP的东西是吧,HTML熟吧?
A:嗯
Q:这样,假设我们需要抓取一个页面中的所有链接,你会用什么方式?
A:嗯,解析HTML,搜寻里面的tag<a>,然后看相关的字符串href
Q:你是说字符串匹配?那如果那个HTML中有正文部分有href字符的吧?
A:有相关约束条件啊,符合链接的有格式的限制<a href="">
Q:除了这个链接外,还有别的链接需要抓取的吗?
A:嗯,还要考虑Javascript的一些跳转吧
Q:这样,现在问也不能了解什么,这样吧,你看看这个程序,就是要做的这个。给你二十分钟,你看你能看出什么内容来
A:……
看程序这段时间是我最痛苦的时间,程序一共有6个project,还有一堆的组件。我看了那个主文件,貌似是从XML读取configure结点的内容,然后进行了字符串处理,split, trim这些的,但我没明白那些处理结果意味着什么。
我看了一下configure文件,但没具体的看
然后再找一下主文件中用的一些类,再去看那些类。
这样转了半天,最后还是没有头绪,二十分钟就已经过去了
事后,华丽大姐说,应该好好看configure文件的,里面有读取什么内容,实现什么功能的一些注释!
他们说这是经验缺乏所致!
之前我编过的C#也就一个毕设时一个简单的单机版程序,对于工程设计方面的确没有了解。
对于这样的结构也不清晰!
之后,那位大哥还试了一下,让我在纸上写段程序,处理字符串的,就是消去字符串中的多余空白。
这个是很基础的东西,以前我也做过,就直接写了VB的程序。
当时头晕,可以用C#写的也没有。不过也差不多,就是split,trim这些
不过,写完后,还是有问题
1. 效率问题,以前我写代码都只是像完成作业一般,而且处理的也是小量数据,的确没有考虑效率问题
2. 牛人大哥提到说如果字符串中的Tab或者回车的处理,我也从未考虑过
最后当然是failed
不过,我还是很从容的。
倒不是装了,本来我就觉得这样的实习的话的确不适合我。我跟华丽说,其实面试结果倒不重要了,现阶段对于我来说,重要的是让自己明白欠缺的地方
华丽说,看来你和番茄是一类人啊........
我说,不是不是……我没有他那么BT啊!
华丽说,哈哈,我也想这么说!
事后番茄,我,华丽一起吃饭。说到这个面试。
其实我也知道自己的弱点,很多东西,看得多,写得少。实际经验还是蛮缺乏的。而且技术的面那么广,必须要有一门是自己的强项。不管是C#还是C++,总得拿得出手一样的。广泛涉猎,最终却是各方面的平庸。