对《如何准备软件工程师的面试》的补充

参见:http://googlechinablog.com/2006/10/blog-post_13.html

1.使用相同的工具(如铅笔和纸张)和时间限制(例如半个小时)模拟面试训练

模拟面试这样的准备是必要的,但绝对不是充分的。中国有四个字:纸上谈兵。对于没有打过仗的士兵最好的准备就是去打一场仗。对于面试的准备就是面试本身。很多应届毕业生第一次面试,初生牛犊不怕虎,期望值很大,对于大公司的面试思想负担过重。正常的心态应该是,多参加这类大公司的面试,把每一次面试的心得总结成经验。任何面试都是你下一个面试的准备。身经百战,求职沙场上才能得心应手。

2.在面试过程中不要对细小错误耿耿于怀

同意这一点。不过,犯过的错误不等于不要管它。面试中的问题和现实中遇到的问题大同小异。一个公司项目管理中一定会犯各种各样的错误,所谓不怕犯错,就怕不知道怎么弥补。告诉面试你的人,当某种错误出现的时候,什么才是最快的补救措施,什么才是最有效的预防下一次同类错误的办法,一定能给你在面试官的心目中加分。

3.在面试过程中不要失礼

非常同意,但是相反来说不要过分拘谨。《硅谷海盗》就有个人去苹果公司面试一个程序员的职位。他的谈话显然充满了婉转和客套,生怕每一句话都会得罪面试官。然后刚刚创建公司的 Steve Jobs 直接走进面试的房间把光脚丫子放在他面前,问那个人:“Are you virgin?”。有时候过度的客气和礼貌可能会让人感觉到虚伪。软件开发是枯燥的,大的 IT 公司最需要看到的是有活力,甚至有一些 Sense of humour 的应聘者。

4.不要在面试中喧宾夺主

这一点要看怎么理解了。我知道有很多面试官不喜欢一问一答,而是喜欢把面试看成是一种朋友间的聊天。面试是双向的,对方在面试你的才华,而你是在面试对象公司的需要。把你的意见和看法真实的表达出来,掌握面试的主动权,向面试官阐述你对编写代码的激情,或者对某个软件解决方法的不同看法,比那些战战兢兢的书呆子更容易获得面试官的笑容。我试过打断过一个正在介绍测试方法的面试官,很激动地叫他给我一个机会让我把这个测试方法说完,结果我们两个沉浸在这个话题许久。当然,一个 Hello, World 你也要解释半个小时,确实会让人受不了。

5.在回答需要具体答案的问题之时,记得首先要有总括性的发言

同意,而且这是任何情景下发言和谈话的第一要求。需要补充一下的就是,当你发现自己夸夸其谈的时候,尝试每一个间隔都总结一下自己当前所阐述的是之前提到的哪个论点、哪个子主题。你可以谈话很大声,可以很有激情,但是绝对不要忘记自己所阐述的思路和主线。把你的谈话和之前总结的主题相对应,会让人觉得你在谈话方面很有组织能力。

6.(不是特别重要)在面试中要衣着得体,舒适的商务便装是最佳的选择

看不同的公司文化了。微软从大老板创业那个时代就是 T-Shirt 加 Pizza 了,你要是穿的很商务去面试一个 SDE 或者 SDET 的职位,最好自己想一下是不是真的喜欢穿成这样。有人提到 IBM……那是一个商业公司,你说呢?

Stupid Me

Just found that the blocking list in my hotmail account is full of many non-spam email addresses and some of them are even from my friends. I don’t remember why their email addresses are blocked and I am pretty sure it’s really accidental. If you’ve sent any email and heard no reply from me because of this, please let me know and I give you permission to kick my butt for free.

Comments on Microsoft and H1-B Visa

By reading Priya’s post [Technical Careers @ Microsoft] today, it seems that the quota on H1-B visa for working in U.S. this is getting this software giant more head ache. Actually on May 25, 2006, its chairman Bill Gates had already made a statement regarding this issue. I suspect there are many other U.S. companies which are highly demanding on technology professionals are suffering from this problem too.

While there are many talented attorneys at Microsoft are working very hard on many petitions, I am wondering if Microsoft has ever thought about an alternative solution to get smart people without restricted by limitations such as visa quota. Inspired by the fact that Microsoft has settled R&D departments in China and India, an idea has came to me: Why not set up another R&D department in Vancouver, BC, Canada?

By checking a map, we see that it is only 2~3 hours driving from Redmond to Vancouver. This is very different from other R&D departments far away from United States, that the advantage of distance can make the corporate communication very tight. Yes, you are right that Microsoft is well known of long distance collaboration and there are many cases that the developers in Shanghai and Redmond working together seamlessly. But what is suggested here is more of an extension to the headquarter rather than another subsidairy company.

The most important point is that, obtaining a working visa in Canada is much less time consuming than doing the same thing in U.S., which make it a solution to the current visa quota. Intuitively, such change is going to accelerate the overall product development with no doubt. There are many products out there are develop to help the collaborative development, such as its own product Live Meeting.

I believe there must be some other people share the similar idea with me, but certainly I am not familiar with laws and other limitation involved in this idea . So, correct me if I am wrong. =)

Hyper Level Domain

I use del.icio.us a lot. It’s convenient for saving my bookmarks using tags. While there are several other websites provide the same service, such as Windows Live Favorites and Yahoo Bookmarks, one thing of del.icio.us that attracts me is its domain name. The trick is that the word delicious is separated by dots and ended with .us, the country code top level domain (ccTLD) of United States. Its actual domain is icio.us, and it comes with a prefix del.

What is cool?

While they were a huge amount of demands on getting a domain ended with .com, .net, .org and etc, del.icio.us has chosen the naming strategy different from others. There are many other domains like this, such as yan.se, a Shanghai based company that provides services on photo printing. The phrase yan se (颜色) in Chinese means colour, which is exactly what the company has to do with.

In general, domains like these does not care what the suffix domain is originally set for. They are heavily language specific. So let us simply call it Hyper Level Domain. A hyper level domain is not really a domain pattern per se. It is often named based on Top Level Domain (TLD) and might even be Second Level Domain (SLD) based possibly.

What is the market?

Since the concept of Web 2.0 was coined in 2004, people have tried and found many labels for it from different aspects, such as AJAX, Wiki, Tags, Simplicity and so on, and many of them are intended to be eye-grabbing. What hyper level domain can provide, is that it starts grabbing eyes from users by the stage of entering the URL in their favorite browsers. And I really want a domain name of wangxiao.hu !

What is the problem?

To register a hyper level domain, some condition is usually applied. Since the suffix of a hyper level domain can be a ccTLD to a particular country, and thus one needs to go to the domain registration companies of that country for it. The problem is, the domain registration policies in most countries require one to provide an actual address in that country. So I cannot register for my wangxiao.hu unless I have an address in Hungary. By checking yan.se in any WHOIS service, you will find it is actually registered with an address in Sweden.

Another problem is that, when more and more hyper level domains are registered, the ccTLD will probably lose its significance. This is also why the address of the domain owner is required in problem above.

Wh.at hyp.er lev.el doma.in na.me c.an y.ou thi.nk of? 🙂

读书印象之《苍蝇王》

来了加拿大后读的第一本英文小说,是William Golding 的《苍蝇王(Lord Of The Flies)》。这是一本跟 Anthony Burgess 的《发条橙(Clockwork Orange)》和 George Orwell的《1984》同一时代的作品。虽然是幻想类小说,但分别反映的意识形态,恰恰重合了我们这个世界成长的影子。1954年,英国作家 William Golding 创作了《苍蝇王》这部小说,并因此获得了1983年的诺贝尔文学奖。很多人把《苍蝇王》阐述成一部关于伦理哲学的作品。故事开始,一群十几岁的孩子被流浪到了一座孤岛。之前所有成年人都因为空难没有得以存活,存活的只有这些从来没有走出过现代社会的儿童。

故事背景中的独特的孤岛,拥有着充足的水和食物和一切其他必须品,于伊甸园无二样。孩子们在没有束缚的环境下自由地生活,谁也意识到这样的自由带给他们的后果。由于对未来没有任何计划,孩子们的生活形态回归到了原始社会,即饿即食,安枕无忧。孩子们欢乐的生活在所谓“怪兽”的出现后发生了转折,像极了《创始纪(Book of Genesis)》一书中所描述的“邪恶”的出现。人类历史的头一堂课到此结束。

当他们第一次意识到恐惧之后,由于意见和矛盾的产生,生活形态发生了变化,比如说权力。当 Simon 标志性地拿起烤熟的猪头吆喝众人的时候,等级分化立刻被明显出来。那猪头就好像《射雕英雄传》里丐帮的打狗棒,在人们的潜意识里面行成了官衔爵位的角色。就像我们的幼年一样,霎时间众孩童之间的分帮别派不可避免地发生了。在人类历史的第二堂课中,这个圈子的分化被由 Ralph 和 Piggy 所代表的多数集合派和由 Jack 所代表的少数集权派变成了两部分。

就这样,故事由最初的和睦,变成了后来的对立;由最初的自由物资索取,变成了后来的条例行物资分配。于是,矛盾产生了。可笑的是,当若干时间后,现代社会派出了船只,来寻找并营救这些未成年人,当时所有以上提到的一切,立刻消失的无影无踪。每个之前的“人物”,再一次变为了依赖成年人的孩子。而来营救的人并没有意识到过去一段时间历史的短暂重演,自然不会震惊地说:多么可怕。

或者,我们也是孩子呢。

显摆

翻 Email,翻出许久前 Seven 传书让我猜《天下第一》结局,之后的回信:

闻启,

数日未系于书信,思慕之心倍增。念态势昌平,权姑娘动止万福。末家感冒稍愈,方如实报来,不情之数,乃恐姑娘忧心于末家。又因末家醉心于《新宋》,拜读数日方怠慢于书信,如此孟浪,还望姑娘心慈而恕之。

人之生死自古有定数,某家不敢妄加断疑。某家蜀黍猜列,不尽愚昧:

凡传记细说,无不为大灭奸恶,次人尽之,善人处之。如数猜列,必先细而分之。大恶者,非小人也。古人云,大恶必大谋。如此指疑,数种种枭迹,神候当之无愧,将死之人以为之。次人者,可小人,可非小人,且同乃得志者。富千万,赵皇,曹太后,云清郡主赵云罗,柔姑娘,于故事之细说,可归于次人,未死以为之。善人者,惩恶锄奸者也,天下第一四士大夫乃为之。于情理,未死以为之。不过英雄大悲之壮举,实乃戏说常用伎俩,某家于一刀,成是非以为之。另又倭国柳生飘絮,因情大恶,善为次之,实属悲情,将死以为之。

人物生死实属戏说,姑且莞尔而忽之。《新宋》中人物其一,汴京名妓楚云儿,亦为石越石学士讪于小人算计,补慌而罪于衙内重板之下,却念石某人府上桑妻姊妹情,未献可怜求之于,终死于郊外陋屋。情戚戚泪以慰,书扉合而叹之。

末家将下周回屯,恐于时日紧凑,忙于裹包。以为与姑娘相见于数日内,心绪大好,念甫而保之。望姑娘心于顾己,不必担心,以怠末家小礼将送之。

末家虎某敬上

文绉绉地,有点傻。