2007年8月9日

IIS and .NET 2.0 interview questions

Published 09 August 07 08:17 AM | steve schofield

I had a 2 hour layover and was browsing the newsgroups.  A person posted a question wondering about interview questions regarding IIS and .NET 2.0.  I'm sure there are many other questions that I didn't think to ask, here is the list I came up with.  If you have any questions, feel free to post them to the comments and I'll update the thread.

PS: This is meant for a 'systems' or 'itpro' type person and not necessarily a developer type individual.

General IIS related questions

  • How do you isolate and troubleshoot an ASP and / or ASP.NET application?
  • What is your idea of locking down a server?
  • How do you feel about having developers or anyone else making changes directly in production?  Aka how do you normally handle change management.
  • What perfmon counters do you find useful in troubleshooting an IIS or related problem.
  • Do you have experience in working with web-farms, load-balancing environments?
  • What is your ideal way of handling content.  Remote Storage / NAS (network attached storage) vs. local content and replication.  If you use local content and replication what tools do you to use?
  • Are you familiar with DFS?
  • What debugging tools do you use for IIS?
  • What / Where would you put global .NET settings.  How would you lock them down?
  • Do you have any experience with SSL certificates?
  • Do you have experience with machines with multiple IP's and how to handle several sites / applications on a machine.
  • What is your preference of handling machine accounts?  Do you like local vs. Active Directory based accounts.
  • Do you have experience with working in an AD environment that supports IIS.
  • Do you have experience with NLB (network load balancing) that comes with IIS.
  • How do you monitor the applications / sites to ensure the uptime is appropriate.  This might apply more to a monitoring environment, but it is good to know what to monitor.
  • Are you familiar with compression and the benefits.
  • Do you know what MIME types are for?
  • Do you know how to list all running applications on a server to determine which application pools are owned by what sites. (IISAPP)
  • Are you familiar with IISState, IIS Debug Diag. SSL Diag, SMTPDiag in the resource kit.
  • What tools do you use or have experience in load-testing an application.
  • What are some of the tools provided by MS.  WCAT, TinyGet, WAST.
  • Do you know how to configure host-headers and how they related to DNS.
  • What is your backup and recovery strategy for IIS
  • How would you handle migrating to another box?
  • How do you handle changes in IIS, scripting or manual changes?
  • Are you familiar with scripting languages such as VBScript, JScript, Powershell.
  • Are you familiar with IISCfg and related scripts such as adsutil
  • Do you have experience supporting multiple environments of IIS (different domains, dev / test /integration / production)
  • Are you familiar with ways to connect to remote databases such as db2, oracle, sql server
  • Do you know the differences between anonymous, integrated, basic, digest authentication.
  • What is your preferred method of publishing content?  FTP? FrontPage? WebDAV? Folder copy? Publish to a staging machine and replicate to the content source either on a nas or individual nodes.
  • Are you familiar with the other services in SMTP, FTP?
  • Do you know how to configure a smarthost?
  • Does the built-in FTP service support host-headers?
  • Do you know the benefits of using a COM+ package vs. Regsvr32
  • What certain local group is necessary if it is configured as a application pool user.
  • Do you know how to check a COM+ component to ensure it will not leak memory.

.NET 2.0

  • Can you run the 1.1 and 2.0 on the same box?  What are the limitations.
  • Can you explain what the '/bin'  folder is used for.
  • Do you know what user instancing is.
  • Do you know the difference between precompiled applications and publishing the source code.
  • Do you have any experience with partial trust or CAS (code access security)
  • What types of things cause an appdomain or application pool recycle.
  • What are the new folders in .NET 2.0 and what are they used for.
  • How / why does the machine key need to be the same across all machines in a web-farm.

IIS7

  • What makes the IUSR account unique in IIS7 vs. previous versions.
  • What are some of the new ways of troubleshooting, Logging in IIS7
  • What are the major benefits of IIS7?  (FREB, Integrated Pipeline, IUSR same on all w2k8 boxes, Shared configuration, Modular architecture, configuration changes
注:虽然最近没有找工作的打算,还是愿意把文章贴在这里,有空看看。
posted @ 2007-08-09 23:18 zhaorui 阅读(89) 评论(0)  编辑

2007年3月15日

今天,Google中文个性化主页增加了分类标签(Tab)功能。你只要拖动你的内容块到这个标签,就可以将原来的内容移动到这个标签。添加和编辑标签也很方便,只要点击要编辑的标签,就变成可编辑状态,然后编辑就可以了。
Google只允许我们拥有6个标签(包括默认的Home在内)。如果你的Google个性化主页上添加的内容很多,那么6个标签未必够用。Haochi给出了一个很巧妙的办法,那就是进入Google个性化主页后,在浏览器的地址栏里输入下面的代码后按回车即可新建额外的标签:



  理论上,你可以用这个方法创建无限个分类标签。
如何删除标签?方法是:先进入要删除的标签,然后左键单击它的名称,即可看到名称的右边出现"删除"(delete),点击它即可删掉该标签。



http://www.pkblogs.com/aminghome/2006/10/googletab.html
posted @ 2007-03-15 23:54 zhaorui 阅读(26) 评论(0)  编辑

2007年3月7日

5 Ways To Know When It's Time To Find Another Job



Are you underpaid and overworked? That's an obvious sign of a bad job; career experts from Challenger Gray & Christmas and Monster.com offer advice on when you should consider your next career move.






Ever wonder if it's time to start looking for another job?

After the dot-com bubble burst several years ago, a lot of high-tech workers simply felt lucky to have a job--any job. Gone were the days when chief security officers, Java developers, and project managers could pick up a new, and better, job as easily as picking up a latte. Human Resources managers stopped worrying about how to keep good employees from leaving for better jobs. People who had decent jobs counted themselves lucky, kept their heads down and just hoped they weren't next to be outsourced or otherwise pink slipped.

Those days are gone. High-tech jobs are being created. There are new positions to move into. A lot of people, though, aren't picking up stakes and moving on. They're stuck in that head-down mentality and maybe they're missing the opportunity to find that great next job.

The tech sector has not only shown signs of life over the past few years, but there's been some real signs of strength, according to John Challenger, chief executive officer of Challenger Gray & Christmas, a global outplacement firm based in Chicago. He says next-generation companies like MySpace, YouTube and Google are shaking things up, and he's seeing a steady stream of new jobs being advertised.

"If people are thinking that at this point in the game, they could be selling themselves short," says Norma Gaffin, director of content at Monster.com, the Internet job board. "Especially people who went through the bust " they don't realize they could find a better position or the right position for them. I think a lot of people aren't asking themselves the questions."

And according to Gaffin, those questions don't have to include, "Am I miserable?" People don't have to " and shouldn't " wait until they hate the thought of getting up and going in to work every morning before they start looking for a new job.

Some career counselors say people should reevaluate their jobs at least once a year, giving some thought about the work they're doing, who they're working with and where they're going in the company and in their career. There are many reasons to look for a different job and they don't have to be for better money or because you hate your boss.

To help out, InformationWeek interviewed three experts in the careers industry and sorted through their best advice. Here are the five ways to know when it may be time to move on.


  • 1) Are You Still Learning?

    "The barometer that I use is you ask yourself the question: Are you learning? Says Gaffin. "If you're no longer learning, the indication is that your time there is over. If you have a really good boss, it can be hard to leave that. But if you've learned everything you can from that company and that great boss, you're not helping yourself by staying."

    She also points out that if someone isn't learning in their current position but they like the company, they first should look to see if there's a better spot they could move into. If there isn't, however, then it's time to look outside the company for a company that has new skills to teach you.

    "I think people do forget to ask themselves this question," Gaffin adds. "The job has to work for you. The company has to work for you. The problem is the better off you have it at the company, the less likely you are to ask yourself if you're still learning."

    Gaffin even goes so far as suggest giving each job an expiration date, so people will spot the date, much like they do with a milk carton, and give their job something of sniff test to see if it stinks or if it's still good for another several months.

    "Are you getting the training you need?" she asks. "Are you being put in a position where you can advance? Is it still helping you continue on that path you want to be on beyond this job?"

  • 2) Mergers, Acquisitions, Rumors

    Robin Ryan, the author of 60 Seconds and You're Hired, says there almost always are rumors floating around the office. Someone's leaving. Someone's coming on board. A project is being scrapped. Most of the rumors don't merit any real attention or concern. However, there are those rumors " the persistent niggling ones " that should make you sit up and take notice.

    "It's rare that rumors stay alive when there's nothing behind them," says Ryan. "Pay attention to the rumor mill when it's about acquisitions, mergers and layoffs. Mergers and acquisitions are a real red flag that some of you will go, if not all of you. There's a lot of rumors but when everybody is talking about layoffs and it's being said and said and management isn't coming out and denying it, then that's not good Your job is in the most jeopardy if your company has just been acquired. This is the scariest time."

  • 3) Warning! Toxic Co-Worker

    Is there a bully roaming your office? Is someone else always taking credit for your work? What about that jerk who takes obvious glee in getting under your skin or that one person who makes you dread walking through the office door every morning? Answering yes to any of these questions probably means you're working in a toxic environment. And that, says Gaffin, is a really good reason to sharpen up the resume and go on some interviews.

    "You can brush [most things] off the first time, but then you can't keep brushing them off," she warns. "Take a look around. What's the forecast here? Is this good for me?"

    Obviously, Gaffin isn't advising people to pack up their desks because they have occasional tiffs with co-workers, or even their bosses. See if problems can be worked out. Don't toss aside a great job because one person can be grating. But if you dread every confrontation or he/she makes the whole work environment unbearable, it's most likely not worth it to your stress level to stay and deal with it every day.

    "If you see a company where people are not held accountable for things they do, both good and bad, you shouldn't stay," Gaffin adds. "They might as well not be giving you a computer because they're not helping you do your job."

  • 4) Got The Boss Blues?

    Just like irreconcilable differences are a reason to end a marriage, they also can be the reason to get out of a bad job.

    "If your relationship with your boss has deteriorated and you feel you can't repair it, that's risky," says Challenger. "Are you not receiving challenging work? Are you not getting plumb assignments? Is there room for advancement or do you feel like your advancement is being blocked? Are you not being recognized sufficiently, either monetarily or within the organization, for your efforts? Everybody feels all those issues at one time or another. It's about your level of concern and do you have more than one of these issues?"
    Challenger says sometimes trouble arises when someone gets a new boss. Maybe he doesn't recognize a worker's past contributions or maybe he's far more focused on the people he brought onboard himself. He also says workers should beware when they've had a blow up with the boss and they just can't seem to get the relationship back on solid footing.

    "It's very important that the relationship is OK," he adds. "It can be up and down if [the relationship] is solid at its core. Otherwise, you're just not going to be in a position to get good raises, promotions and challenging and interesting work If you feel like your job is at risk and you may be let go, instead of fearing and avoiding it, be proactive about looking. If you think the risk has really jumped and in the next three months you could lose your job, start looking. Don't wait."



  • 5) Underpaid And Overworked?

    While money may not be the biggest factor when deciding if you need to look for another job, it certainly can't be ignored.

    Are you not earning what you think others of equal stature are " either at this company or at competitors? Are you not getting raises or bonuses? If so, it's time to do some homework.

    "Many people took a job that paid less than they wanted but they just wanted a paycheck," says Ryan. "If you've stayed with an employer for four or five years, you'll probably find that you're underpaid." She suggests going online and check out various salary surveys, looking specifically at your job level and geographical region.

    "You've been advancing your skills, you've been working on brig projects, and then you go online and check out salary surveys," says Ryan. "If you find people are making between $100,000 and $140,000 when you're making $80,000, that can be very motivating to start looking If you're not paid enough, you're not feeling valued enough."

  • posted @ 2007-03-07 21:05 zhaorui 阅读(113) 评论(0)  编辑

    2007年2月12日

    我对女性做工程师的一点看法



    去年 10 月,我跟开复去南京大学做演讲谈 Google 的技术,讲座结束之后,有一位女同学提了个问题让我很惊讶。

    她说: "我是学计算机软件的,蛮喜欢的。但是女生学这行不太好吧?你看我该不该找个时机改行?"

    我问: "你为什么会觉得女生不适合学软件?"

    "女生三十岁以后, 体力和智力下降, 会跟不上男同事。"

    这是我第一次听到如此具体的性别歧视,挺吃惊。做为一位女性软件工程师, 我平时难免听到了一些对于女性做工程师和对女性能力的疑问,我觉得这些话最大的危险是影响到人的自信。

    我在北京出生,五岁时我父母到美国留学,于是把我也带了去。 我父亲是数学博士,母亲从小就用心辅导我,所以我小时候数学特别好。十岁的时候我就开始在附近的大学选微积分课, 随后又跳了三级,十五岁进入了加州理工大学 (California Institute of Technology)。 现在说起来简单,但当时我的经历经常遭到别人的反对,说我年龄太小、学不好之类的话,或者说女性不适合学计算机。 我当时觉得这些话大都很可笑,没有在意,当然也要特别感谢我父母没拿它当回事。后来我顺利的完成了所有的学业,用事实证明了我走的路, 那些所谓的“预言”也就不攻自破了。

    后来我在美国另一家大软件公司做了五年的工程师, 随后来 Google ,在这里已经工作了两年半。 在 Google, 我第一次有了很多杰出的女性榜样。我们公司有六位女性副总裁, 两位女性董事会成员,当然还有许多女性工程师总监、女性工程师等等...... 目前我的老板 (manager) 就是一位女性主管经理。她是我的第一个女老板, 我从她身上学了很多女性擅长的本领,比如如何让别人采取你的观点,同时又不伤害他们的感情等等(她也是中国人)。

    Google 意识到女性员工在很多问题上可以给公司一些新的视角。 创始人 Larry Page 去年对我们的人事部门订了要求,要求新招的软件工程师里应该有 25% 是女性,当然这是不能以降低录取标准为前提的。所以我们下了更多功夫去寻找女工程师,邀请她们来面试。 这可不是口头说说而已 – Larry 专门调了三分之一的人事部员工去招聘女工程师。结果去年我们的女工程师比例在 6 个月内由 13 %上升到 19 %。 Google 每几个月还会邀请中学和小学朋友来参观公司、与员工谈话,对于其中的女孩子,Google 一直鼓励她们要好好学习科学和电脑。

    Google 还要求在我们应聘面试的过程中至少要有一名女性面试官,如果申请者被发现有性别歧视,那不管这个人有多聪明也不会被录取。我曾经有过这方面的亲身经历。两 年前,我和一位男同事共同面试一个男性应聘者。当时我考了他一道难题,但那位应聘者回答时,只对我的男同事讲话, 几乎不睬理我。45 分钟的面试中, 我感觉越来越不舒服。 事后,我把我的顾虑写进了面试反馈。另一位女性面试官也表示了同感。结果,虽然这位应聘者其它方面都表现的很好,他还是被拒绝了录取。

    其 实从很多细节上可以看出 Google 对女性员工的重视。软件公司庆祝业绩时,常常会发 T 恤,Google 也不例外。别的公司因为男员工比较多,常常只订男尺寸,造成我家里存了很多大的只能当睡衣的 T 恤。但是 Google 每次总会订女生的大、中、小号。每个小组庆祝阶段性成果的时候,也会挑男女员工都喜欢的活动,比如听现场相声等,而不仅仅是看跑车赛或棒球。

    我虽然在 Google 很幸运有许多优秀的女性软件工程师和同事, 但有时侯会觉得也许其它公司的女性没有公司这样支持她们。我想利用这个机会鼓励国内和海外的女性软件工程师,相信自己,让那些对女性的怀疑消失!

    三八妇女节快乐!


    posted @ 2007-02-12 01:33 zhaorui 阅读(15) 评论(0)  编辑

    如何准备软件工程师的面试



    (作者简介: 王忻,Google 工程师。北京出生,五岁时跟随父母移居美国。中学期间跳了三级,十五岁进入了加州理工大学,加入 Google 前曾在微软等公司工作。)

    六月份的时候,我曾经在黑板报上介绍过“如何写一份好的工程师简历”, 今天想跟大家来谈谈如何准备软件工程师的面试?假设,现在您的杀手简历 (killer resume)已经吸引了某大公司的注意并约你面试。那么接下来该如何准备呢?

    我 在 Google(以前是微软)工作期间面试了不下 300人,其中某些应聘者确实表现非凡,但有些却显得准备不足。当然许多面试准备不足的人最后依然获得了录用通知,因为他们本身确实才华出众。但如果应聘 者能提前准备妥当,那么面试过程将更为保险和轻松。以下所列出的就是我根据多年经验总结得出的建议:

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


    Google 和微软都会让应聘者在白板上手工解答编程问题,但通常大部分的应聘者都是习惯于在电脑上利用编程工具系统编写程序。因此面试的时候,某些应聘者离开了熟悉 的电脑光标,站在白板前感觉手足无措不知该如何起行。又或者他们不习惯在编程之时旁边有人观看,这会让他们感到紧张而无法正常思考。

    在现实生活中,如果你想要横渡英吉利海峡,自然不能总是在室内游泳池练习。你必须投身于大海在波涛之中训练,在准备面试的时候也是如此。:)

    在 面试开始之前你最好向招聘单位询问面试形式和面试问题。如果招聘单位让你在某个房间考试且仅提供没有汇编程序的编辑器,那么就应该在家中按照这种情景进行 练习。如果招聘公司单位让你在白板上回答问题并会安排考官在旁监督,那么你就要找一位软件工程师来扮演考官配合你练习。即使找来的考官经验不如你也没有关 系,他们依然能帮助你消除在他人面前出错所带来的紧张感,这样可以让你适应有人在旁边盯着看的面试氛围。

    如果你恰巧认识我并希望由我来帮你联系,那我的条件就是必须请我吃饭:如果你已经工作了就吃日本寿司大餐;如果你还是学生,那么吃比萨饼也可以。:)

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


    我 曾不止一次的在面试过程中碰到这种情况:当应聘者知道编程问题后,他马上就想到了最佳的方案、确定了边界条件,然后开始编写程序。但在编写过程中,应聘者 犯了诸如首先检查是不是操作顺序错误或忘记设定某变量等无关大局的小错误,当我指出其错误之后,应聘者立刻变得十分紧张,这种焦虑情绪影响了他在后面环节 的正常发挥。

    其实这种恐惧心理完全不必要。一名优秀的程序员在编程过程中出现错误也是很正常的,就像是小提琴手在演奏高难度的巴赫交响乐时也会偶尔失误。音乐会的听众可能会觉察到这些错误,但是听众绝对不会因为这种细小失误就把出色的小提琴手看作是门外汉。

    即便应聘者彻底搞砸了某个编程问题,面试考官也可能会提出不同的问题并会容忍应聘者在某个问题上的失误。再退一步说,就算某次面试彻底失败,你也有机会在其它面试上补救。

    我 的一位同事(一个项目的技术负责人)最近面试了一个人,在开始面试时他觉得面试者的交流方式存在问题,因此开始表现的相当不友好。但经过了整个面试过程 后,面试者证明了自身的能力,而我的那位同事也成了那位面试者最坚定的支持者。在过去的一年中,我从未见过这位同事如此强烈的支持哪位面试者。

    所以,因此就算面试进展不顺,也务必坚持到底不要放弃。

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

    这似乎是不用说的问题,但在面试过程中我确实碰到过影响很不好的失礼行为。曾有一位前来应聘软件工程师的人看到我就说:“哇,我真不敢相信你这么年轻!你看上去好小!!我觉得你才 18 岁!”

    面试者的这种言行实在要不得。

    面试者也要注意不要说出诸如此类的话:“哇,你真的就是考官吗?你看上去好老!”“哇,你真的是来面试我的,你看上去好胖!”(相信应该不会有人说这样的话)。

    在 我的另外一次面试中,应聘者的手机在面试开始 15 分钟之后就响了,她没有理会,手机连续响了 20 秒,这样不免会对面试造成影响。5 分钟之后,她的手机又响了,她依然没有理会;5分钟之后,手机第三次响起。最后她终于抓过手提包在里面翻出了手机。我想:“是时候关掉手机了,她在进来之 前就应该把手机关掉。”但是她在手提包中拿出手机之后却旁若无人的打起电话来,而且就在面试过程中间!

    这种情况唯一可接受的理由就是他有什么非常紧急的事,但是即便情况如此,那么他也应该在面试开始之时就讲清楚,让面试官有所准备。

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

    我曾经面试过几个应聘者,他们好像铁了心肠一定要告诉我他们最近的“超级项目”。当我开始发话他们就立刻打断:“我想让你了解我们近期处理的超级项目,10年之前当这个项目开始之时还默默无闻……”,然后接下来的5分钟时间都在那里滔滔不绝唾沫横飞。

    有时应聘者好像打定主意要给每个考官详细描述其引以为豪的项目,然后一整天都在那里翻来覆去的说这个项目。

    记住:面试官在面试过程中有具体的问题需要询问。但是如果应聘者喧宾夺主,那么考官就可能无法获得充分的信息来做出判断,同时这种行为也会让考官觉得应聘者很难共事。

    如果你确实想谈论自己的项目,那么就应询问面试官:“我觉得最近的某某项目能充分体现我的能力,我能不能用 10分钟的时间来描述一下具体情况?”这样就会给面试官空间来调整面试过程,由此也避免毫无征兆就让面试离题万里。

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

    有 时我会问一个答案可以很简练的问题,例如:“在你的那个成功项目中总共有多少人参与?”但应聘者往往会就此打开话匣:“恩,张三参与了这个项目,他负责 UI部分,当然我也会给他一些指导。李四也在项目中,她在宾州远程工作,负责后端服务器。两年之后我们又有新人王五加入……”

    在应聘者滔滔不绝的讲了三分钟之后,我还是不知道这个项目到底有多少人参与。

    因此首先要简练的回答问题,然后再展开描述:“在我接手项目时有三个人,但当我离开项目时人数已经增加到12人。”

    当然如果能简练的回答问题,然后征询意见之后再展开论述那就更好了:“在我接手项目时有三个人,但当我离开项目时人数已经增加到 12 人。我可以讲一下各人在项目中的具体分工吗?”

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

    人们有时候会为衣着犯愁。但是最重要的是要让自己感觉舒适。如果需要具体的建议,那么我建议穿衬衫甚至T恤衫。对于某些公司(例如 Google),西装革履显然是太隆重了。

    这 条建议不必太看中,因为面试官不会管应聘者穿什么。最好应该询问人事招聘部门穿什么合适,因为不同国家有不同习俗,就算美国东海岸和西海岸的公司着装文化 也会有差别。像 Google 这样的公司在着装方面更加随意,因此如果你穿着“三件套”的经典西服去 Google 面试,考官可能会有异样的感觉。因此如果你真的具备软件工程的本领,穿什么其实并不重要。某个应聘者曾经穿着皱巴巴脏兮兮的T恤就跑来面试,他的T恤衫上 还有着许多破洞。但最后他还是拿到了录取通知(当然我绝不建议如此穿着)。

    最后的一个小故事


    最后我想讲一场极为尴尬的面试。在看完之后,我希望你能这样想:无论你的面试如何糟糕,你至少要比这位应聘者幸运。

    以前我还在微软的时候,我们通常会为应聘者准备一些饮料,某位暂称其为 Jeff 的应聘者要了一听百事可乐。我们走进面试房间后,他就在桌前坐下了。接下来我们简要的谈了谈他的工作经历,然后他开始在白板上解答编程问题,此时他还没有打开他的可乐。

    我们俩站在白板前,然后杰夫开始在上面写程序。在写程序之时他沉浸在对整体构架的思考中,下意识的退了一步来查看整个白板。在后退时他不小心碰到了桌子,放在桌上的百事可乐掉到了地上。

    因为可乐还没有打开,因此当可乐罐落地的时候,可乐罐炸开了。

    可乐罐在地上打转,泡沫喷的到处都是。你可以想象当时的场景,可乐喷到了墙上、书架还有我电脑的键盘上。我俩楞在那里,手都半伸着(根本来不及抓到可乐罐),眼睁睁的看着可乐弄得到处都是。

    我们花了 5 分钟的时间用纸巾来清理现场(虽然我的书本自那天之后都粘页了,而墙壁也不再是干净的了)。

    随后我们重新开始白板测试。杰夫此时已非常紧张(换了谁都会紧张吧?)。他写了几行程序,然后擦掉,然后再写。他是用自己的手擦拭白板而不是用板刷。他急得额头冒汗,然后他又用刚刚擦过白板的手擦汗。在面试过程结束之时,他的脸上布满了红色、绿色和蓝色的颜料。

    我说:“你的手上粘了很多颜料,我带你去卫生间洗洗吧,”然后我把他领到洗手间让他从镜中看到了自己的尊容。
    posted @ 2007-02-12 01:32 zhaorui 阅读(31) 评论(0)  编辑

    如何写一份好的工程师简历



    最 近三年作为 Google(谷歌)的软件工程师,我每周会帮人事部门审查简历,决定要不要给他们面试。Google 这几年的发展让很多许多优秀的工程师都前来申请。到目前为止,我已经看了上千份简历,有些简历留下的印象比别的好很多。尤其是最近亲戚朋友常常问我如何修 改他们的简历,所以我积累了一些常见的错误避免的提议,在此跟大家交流一下。

    1.谈到你做过的技术时,应该提到用的程序语言、你的个人贡献和产品细节。

    有时我看到有人把过去的经验在简历上一笔带过,比如说:

    • 在三人小组里,为电子邮件软件写了些 features。

    这是远远不够的,看简历的人希望了解你做的工作的难度和对本公司有多少联系,所以你最好写的具体一些。譬如:

    • 用 C++ 语言写了网络电子邮件的自动 backups。在三人小组里,专门负责设计和写储存服务器。从设计开始, 一年后把这个功能 feature 的用户推到了三千。

    2.多讲事实, 少用形容词。

    看简历的人读你的简历时,需要做判断,所以在简历里需要事实和数目。如果你写“迅速的提高了软件的操作效率”,看简历的人很难判断你成就的难度。但如果你写“在3个星期内,把软件的操作效率提高了40%” 就好多了。

    有 些谦虚的朋友们不愿意把话说满,所以你也可以用这个办法。你如果说自己“突出”或“在项目上常常被请去救火”,听起来难免会有点骄傲。但你也可以用不能否 认的事实来说明你的观点,如“《纽约日报》评这个产品为‘突出’”,或“加入了三个原本已落后于计划的项目小组,但经过努力和组员一起把它们都按时完成 了。”

    3.你获得的奖、商业的荣誉或表扬、受用户欢迎的产品和你做过的有难度的业余项目都该包括在简历里。


    我有位朋友在硅谷一个著名的硬件公司做了六年,她设计的 IP phone(网络电话)为公司赚了上亿的收入,被公司与商业报道多次评了奖。我有一次在旧金山的高速公路上驾车时,看到路边有她产品的广告牌;还有一次我去上海度假时,竟然发现上海公路边上也有!

    不久,这位朋友决定换工作,请我看看她的简历。我惊讶的发现,她居然轻描淡写的写了一句-- "1998 – 2004:网络电话产品的硬件工程师组长" 和她的职责。

    "产品赢的奖呢?它为公司赚的钱呢?" 我追问到。

    "那些也该写吗?" 她说。

    当然该写。

    有人问,业余时间做的项目可不可以写?我觉得只要你的项目有代表性能说明对你的能力,都该包括。

    4.分清主次,删掉相比之下不起眼的成绩,以免冲淡更加突出的成绩。

    有朋友问,写简历是不是写的越多越好?譬如:

    在甲公司做暑假实习生——
    * 改善电子游戏的数值分类算法, 减少了内存要求 10%。
    * 用 Java 写了 3000 行用户界面程序。
    * 每周做两小时的人工测试。

    你在申请软件工程师的职位时,我觉得前两点比较相关,第三点其实就不必写了。有时我看到有的简历里会提到,"按时完成了任务,产品符合原计划规格"。但读简历的人通常会认为这是理所当然的,而你把这些声明出来反而减弱简历的效果。

    写 一份简历不容易,但写好了也会带来成就感 (和好工作!)。 Google (谷歌)在中国广召各方面的人才,你不妨可以给我们投个简历!我们不但在信息检索方面招雇工程师,还有计算机图形、用户界面、硬件、Windows、质量 保证员和系统管理员等方面。更多信息,请您访问这里

    谢谢阅读!大家感兴趣的话,下次我可以介绍“如何预备软件工程师的面试”。
    posted @ 2007-02-12 01:30 zhaorui 阅读(153) 评论(0)  编辑

    2007年1月16日

    感受英特尔

    初稿完成于2007年1月14日晚

    目录

    1. 入职与离职
    2. 薪资与考核
    3. 装备及IT系统
    4. 组织与沟通
    5. 培训与职业发展
    6. 娱乐与生活

    从2003年3月31日入职,到2006年11月9日离职,我的第一份工作持续了1320天。正是这份经历,把我从初出茅庐的计算机系毕业生,变成了以编程为业的程序员。这段日子,也成了我人生中一段特别难忘的回忆,而给我这段记忆的,便是英特尔。


    不知为何,总是想起那些日子,难以忘怀,这种心情之前没有体会过的。适逢年末,想着记录一些精彩的片段,又担心过于琐碎,无人问津,毕竟自己人微言轻,所 见所闻十分有限。转念一想,也许可以掀开英特尔神秘面纱的一角,介绍其组织、管理员工(尤其是程序员)的一些方式,为想换工作的朋友提供一份参考,顺便满 足大多数人的好奇心。:-)


    在很多人心里,英特尔是硬件厂商,跟软件没关系。事实上,英特尔拥有一支庞大的程序员队伍,除了开发底层驱动程序之外,开发工具(包括编译器、库、性能分 析工具等等)的研发也是很大一块。英特尔开发多种编译器,其中以IA架构上的icl最为有名,Oracle发布的数据库便是用icl编译的。


    我对编译器产生兴趣是在读了《深度探索C++对象模型》之后,当时正值C++学习大潮,读了多部名著之后仍然懵懂,所谓知其然不知其所以然,正是这本书将我对C++的理解提升了一个层次,也让我的求职方向逐渐明确下来。几经寻找,英特尔的编译组成为我的第一求职目标,于是买了著名的龙书, 打算仔细研读。可惜英文水平有限,加之编译理论水平几乎为零,到了招聘的时候也没读完一半,而且死记硬背、生搬硬套,没有多少收获,可见理论与实践脱节是 多么地致命。幸运的是英特尔在中国开始扩张,当年仅在浙大就招了6人,我也如愿加入了编译组。然而与icl无缘,被分配到一个新项目,为一块DSP开发编 译器,客户规模也十分有限。随着工作的不断深入,发现当初感兴趣的部分属于编译器前端,而我们的工作则是负责代码优化和生成,前端是从大名鼎鼎的EDG Group购买的。


    尽管工作与当初的设想大相径庭,英特尔的名头还是为我赚足了颜面,也让我得以一心放在工作上。之后,每一天、每一点的成长汇聚起来,形成了一段难忘的记忆,也激起了分享的冲动。


    注:本文只限于英特尔亚太研发有限公司及其前身英特尔中国软件中心,以及其前身的前身英特尔上海软件实验室,不适用于工厂。


    免责声明:鉴于英特尔内部变动十分平常以及本人记忆力实在有限,本文内容仅供参考,如与实际情况不符,本人不负任何责任。本文仅代表个人观点,与英特尔公司无关。

    入职与离职

    我是2003年3月31日报到,那个时候只允许星期一报到,后来疯狂扩张的时候灵活了一些。

    第一天是新员工培训,我经历的流程是这样的:人力资源部门讲解公司文化、政策、待遇等等,IT部门会介绍常用软件(如MS outlook)、硬件(如IBM T系列笔记本)的使用,中午每个人的老板会来领人,领着熟悉工作环境和同事。在世贸商城的时候老板还会负责午餐,搬到紫竹之后应该简单多了,毕竟公司有了自己的食堂,何况周围可供选择的地方也实在有限。

    即使刚从学校出来,接受一整天的培训还是很累,一定要充分利用休息时间,站起来走走,活动一下筋骨。为了防止久坐引起的损伤,英特尔十分鼓励、提倡这类活 动,所以千万不要觉得不好意思。不过也不要以为熬过这一天以后就轻松了,新员工培训是个系统工程,后面的培训接踵而来,包括公司方方面面(如公司的主要产 品线、组织结构、薪资福利等等)的介绍、解释,时间从两三个小时到连续三天不等,每周一到两次。连续三天的情况只会出现一次,人称训练营 (BootCamp),其时间之长、强度之大、内容之广、节奏之快,任你钢筋铁骨,也被熔化了。

    新员工的培训持续三个月左右,六个月之后度过试用期,每个人在这个时候也基本能够融合进来,以英特尔的方式完成日常工作。

    离职就要简单多了,一般要求提前一个月通知,以保证交接顺利。离职手续只需最后一天(一般安排在星期五)办理即可,公司会提供一个清单,按照上面的项目办 好,每个部门签字盖章之后就可以走人了。主要还是把公司的财产还给相关部门,如钥匙、保密资料、胸卡、台式机等等。最重要的还是笔记本电脑,入职时拿到的 所有配件,必须在最后一天归还,包括外置的鼠标键盘,甚至不能用其它品牌替换,必须是IBM的。另外就是各种密码必须清空,如硬盘密码、BIOS密码以及 一些IBM特有安全技术使用的密码,如果密码忘记,硬件就废掉了,几乎没有办法可以恢复,当然也就需要赔偿。赔偿是很麻烦的,因为不是明码标价、甚至不能 马上决定,这样最后一天(last working day)也就不是最后一天了,以后还得回来办。

    关于离职还有一个不成文的规矩,要给公司里的熟人发一封离职邮件(farewell letter),告知自己即将离开。内容无非是回顾过去展望未来,或感谢或发泄一番,并留下联系方式,所谓青山不老,绿水常流,后会有期也。有趣的是,甚至有些春风得意的人居然也会想象自己那份离职信的样子,仿佛仍未获奖的影星在酝酿奥斯卡获奖致谢辞一般。

    薪资与考核

    英特尔一向宣称提供具有竞争力的薪资福利(当然,这个口号已经被用烂掉了),经过2006年的调整,更加名副其实了。在跨国公司中,英特尔为程序员提供的 工资可以排在Google和微软之后,不过,以后的趋势如何,还要看2007年这关键的一年,毕竟谁也说不清楚大裁员之后会发生什么事情。

    英特尔的薪资由多个项目构成,包括基本工资、奖金、房贴、保险、股票期权等等。12个月基本工资加1个月的年终奖,构成了年收入的大部分。在此基础上,另 有相当于月基本工资15%的房贴,不过要工作满两年才会发放,未满两年由公司代为保管,这笔钱可以用于购房、租房或者子女的教育,住房公积金中公司缴纳的 部分也要从这里面出。奖金的形式变化多,对于程序员来说,一年下来拿到的奖金大致相当于一个月的基本工资,当然好年景多拿点,差年景少拿点。公司内部各种 奖项也都有奖金,另外写专利也有奖金拿,有位同事特别能写专利,家里的装修费全是从这来的。英特尔给办的保险也比较全,意外险、大病险等等一应俱全,后来 医保费用还可以报销。

    英特尔不提供餐费,本来也有交通费可以报销,后来都算到基本工资里了。搬到紫竹之后,对于不坐公司班车的员工提供津贴,开始说只发一年,本应在2006年结束,后来打算延长到2008年,只是金额有所减少。

    英特尔每年考核一次,并相应浮动工资、确定赠送的股票期权的数量。对于一般员工来说,考核形式比较简单,分自评和互评两部分,要求内容简洁、重点突出,忌 流水账或简单罗列。然后老板们把级别相近、工作内容类似的员工放在一起排排名次,这是老板为下属谋取利益的时候,虽然我没有亲身参加过,但其惨烈程度可想 而知。《公司政治》里面就有相关描述,可谓煞费苦心啊!

    考核的标准主要是看员工的工作是否符合英特尔的六个价值观——勇担风险(Risk Taking)、品质超群(Quality)、敬业乐群(Great Place to Work)、纪律严明(Discipline)、注重成效(Results Orientation)、客户至上(Customer Orientation)。

    考核一般在12月底进行,结果要到4月初出来,薪资调整也发生在4月。工资是每月20号发。

    对于新员工来说,有6个月的试用期,试用期结束时要提交一个报告,类似于年终考核中的自评,而互评和PK就省了,结果完全由老板决定。

    员工每年带薪假12天,工作满5年后为15天。1至2天的病假无需医生诊断,共计15天带薪病假,另有大病、产假若干。

    装备及IT系统

    笔记本电脑是英特尔的标配,每人一台,IBM T系列,现在是联想的了。新员工都是使用全新的笔记本,老员工每三年换一次,所以老板用的笔记本比他新招的人用得差,也不是什么稀罕事。笔记本的主要用途是收发邮件、管理日程、做演示等等,所以常用的软件是MS Outlook,MS PowerPoint和MS NetMeeting,另外公司里的标准即时聊天软件是Windows Messenger 5.1,MSN客户端是禁止安装的(安全原因),当然用Windows Messenger也可以上MSN,就是没有聊天记录。Skype也是允许使用的,不过是英特尔OEM版,据说也是因为安全原因,不让使用官方发布版本。为了员工能够随时随地投入工作,每台笔记本上还装有VPN,以便员工随时可以接入公司内部网络。

    视工作需要,每个人还会配备一台或多台台式机,一般是DELL的机器(英特尔似乎对黑色情有独钟),除非有特殊用途。电话每人一部,使用四位的分机号码,到了紫竹之后每人分配一个直线号码,高档了不少。

    无论是笔记本还是台式机,都不允许自行安装Windows,必须交给IT部门统一安装。有同事称,他在公司用的(当时)高端P4还没有家里的低端赛扬快,究其原因是因为IT安装了很多监控、杀毒软件。

    版本控制工具主要是cvs,也有使用subversion,ClearCase和VSS的,只是没有IT支持。cvs服务器在美国,所以每次check out一下挺费劲。缺陷管理软件是PVCS Tracker,也有用ClearQuest或BugZero的。唯一比较混乱的是内容管理系统(CMS),几乎每年换一次。我最开始用过QuickPlace,到后来的SiteScape,MS SharePoint,甚至还用过一段Wiki。频繁地转换让文档维护工作十分麻烦。

    英特尔的信息发布渠道还是不少的,只是被动接受的多,能主动参与的少,甚至可以说没有(如果不算blog的话)。没有论坛可以对公司事务进行讨论,最多通 过邮件私下探讨,然而大规模的邮件群发又是禁止的。英特尔也没有统一的地方可以交流软件开发经验,甚至都不知道别人都在干什么。不同组重复开发的事情也是 有的。blog和英特尔百科(模仿维基百科)算是很前卫的东西了。

    当然英特尔号称(裁员前)全球九千名IT也不是白吃饭的,绝大多数日常事务都可以网上办理,如申请帐号、请假、报销、查看工资、申请装机等等。而且网络基 础建设也不错,各种proxy能开的都开了,IMAP,DNS,DHCP等等也都有。唯一不爽的就是google.com,因为使用同一个出口,经常出现 连接被重置的情况,甚至可以说很少能连上,不得已只好谷歌了。

    组织与沟通

    英特尔的组织结构变动十分频繁,经常会有老部门取消,新部门成立,或者部门间重新划定势力范围。然而不论如何变化,相关人士总能及时得到通知。因此,英特尔的组织结构又是相当透明的,无论职位高低,每个人都对从自己往上直到最大的老板的组织结构十分清楚。

    联席总经理(two in one box)是英特尔的一大特色,即一个经理职位实际上有两个人,这就形成了一个庞大的管理层。尽管英特尔不断增加每名经理必须直接管理的下属数目,以减少经理数量,但这一制度仍然受到大多数员工的批评,以至于成为此次大裁员的重点之一。

    英特尔的沟通方式是垂直的,即下面有问题通过老板层层上报,直到能解决问题的人。上面有事情也是逐层向下通知,而每位经理也都十分尽力的在做,所以这几乎 是英特尔做得最有效率的事情之一,上面的话能够很快传到应该传到的耳朵里,只是传话的内容有没有走样就不得而知了。然而,横向的沟通渠道少的可怜,想想如 果两个部门要向上三层才能找到共同的老板,那么合作将是多么困难。

    英特尔的会多,不光是数量多,花样也多。除了日常的工作会议外,有个大事小情的,也靠开会来传达,或三五人、或七八人聚在一间会议室里,门一关,就开始七 嘴八舌。开大会的时候也有,几百个人拥在一个大会议室里,空气污浊得不得了,老板热情地招呼后进来的同事到前排就坐,可不少人宁愿在后面站着。有事的时候 开会,没事的时候也可以开会。那些不常驻在中国的老板们,每次来到中国,都会开一个open forum,这个词我还真不知道怎么翻译,形式有点类似记者招待会,老板用三五分钟做个开场白,然后就是自由提问的时间。可惜每次都是参加的人多,提问的 人少,搞得老板们都有点郁闷,说怎么中国的同事都这么沉默,其他人如何如何。

    英特尔有一种特殊的会议形式——一对一,即员工与自己的顶头上司之间的会议。这个会议由员工发起,老板不能拒绝,英特尔通过这种方式来增强员工与老板之间 的沟通。事实上,第一次是由老板发起的,主要是告知员工以后如何利用这一特殊形式的会议,至于以后多长时间举行一次,可以协商决定,反正是有话则长,无话 则短。但员工必须将会议的议题事先通知老板,以便老板有所准备,否则老板有权力不予回应。

    尽管很多人都把工作进度报告当成一种负担(尤其对于老板而言),但还是不得不写,频率可以各个部门自己把握,每星期一次、每半个月一次、每月一次都可以。 如果只是自己写写倒也罢了,大大小小的老板们还要总结自己手下的工作,这样就形成了一个自下而上的汇报流,于是老板们经常像讨债一样催促手下赶紧发出来, 好去拼凑自己那份。

    培训与职业发展

    英特尔十分强调员工个人的职业发展。作为一家技术型的公司,英特尔为专注于技术领域的员工提供了独立于管理路线的发展道路,即所谓的Y形职业发展路线。低 级别的员工不区分技术还是管理,当达到一定级别后,员工可以选择今后从事管理工作还是技术工作,对于同一级别的员工,无论其从事何种工作,所获得的待遇和 尊重是一样。在实际工作中,级别与隶属关系并没有必然的联系,老板手下可以有比他级别还高的技术型员工,而由于级别是与薪水挂钩的,所以老板的薪水也可能 比手下要低。当然这都是可能,在职业发展初期,这种情况基本不会发生,老板的级别肯定要比手下高,薪水自然也高。

    两条发展路线的好处是可以防止人才浪费,即避免了员工单纯追求职业发展而不得不转做管理工作,结果从一名优秀的技术工作者变成糟糕的经理。

    另一方面,英特尔也强调,职业发展应由员工自己主导,公司或老板只能起到辅助作用。英特尔为每个级别制订了明确的衡量标准,也时常邀请高级别的员工讲述他 们的职业发展故事,老板也会根据员工的志向为其寻找、提供发展机会。然而,这一切都不能取代员工自身的努力。首先,每个人要选定自己的发展方向,虽然英特 尔内部对技术人员拥有足够的尊重,但是在日常生活中,只有经理头衔才能让人刮目相看,不同的人追求不同的东西自然就有不同的选择。其次,自己要努力,要善 于发现机会,更要能够把握住机会,在英特尔,勇挑重担是受到赞赏的,但只有做出成绩才能获得奖励,没有结果的事情是上不了台面的。

    培训是职业发展中必不可少的一环。英特尔为员工提供了关于职业操守、办公室安全、沟通技巧等等方面的培训,而技术培训则由各个部门甚至项目组自行决定。技术培训的形式主要是同级培训或专题讨论,几乎没有从外面聘请讲师的。而且培训的范围也局限在问题域(Problem Domain),几乎没有对开发工具或程序设计语言(Technique Domain)进行过系统的培训。比如我们组就曾经对编译理论和代码实现进行过反反复复的培训,但是对于我们所使用的C++语言却很少提及,除了一次非常激烈的、关于是否允许使用模板的大讨论。这样的情形似乎与中国热衷于讨论工具、语言的大环境大相径庭,十分奇怪。

    娱乐与生活

    英特尔希望自己是一个很好的雇主,因此提供了许多方式帮助员工平衡工作与生活。

    在世贸商城的时候,公司购买了一些健身馆的年卡,搬到紫竹之后,甚至有了自己的健身房和教练。公司还提供一定额度的资金资助员工成立各种俱乐部,前提是要 达到一定的人数。俱乐部花样繁多,如羽毛球、乒乓球、足球、摄影、汽车、瑜珈、攀岩等等等等,活动方式由各个俱乐部自行决定。通常每个俱乐部会有一到两个 负责人,负责定场地、办讲座、组织活动等等。

    公司还定期、按人头给每个项目组发一些活动经费,以便相互了解、增进感情。限制是只能报销,不能提现,一般用于吃、唱、游等活动。另外,如果有外国同事来 访,部门里面也会拿出经费组织大家一起出去玩一番,至少也得吃一顿,毕竟大家平时很少见面,通过电话和邮件沟通总觉得隔着点什么。

    公司每年还会举行一次大型活动,一般是出去旅游,只是近来扩张太快,规格有所下降。04年去黄山,05年有三个选择,我去了普陀,06年是在上海金山的碧 海金沙上烧烤。当然元旦前后也会举办年会,不过这应该算是英特尔最失败的活动之一,因为经费有限,吃得也不爽,奖品也不爽,还有最高奖只是个MP3的时 候,一时传为笑谈。
    posted @ 2007-01-16 21:03 zhaorui 阅读(253) 评论(0)  编辑

    公告

    饭否
    昵称:zhaorui
    园龄:5年1个月
    粉丝:2
    关注:5

    导航

    <2012年2月>
    2930311234
    567891011
    12131415161718
    19202122232425
    26272829123
    45678910

    统计

    • 随笔 - 289
    • 文章 - 7
    • 评论 - 154
    • 引用 - 2

    常用链接

    随笔分类(205)

    随笔档案(289)

    文章分类(1)

    recommend

    unicode

    最新评论

    阅读排行榜

    评论排行榜

    推荐排行榜