加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

【转】微软PM(Program Manager)面试答题思路浅见

(2013-05-10 17:29:03)
标签:

笔试面试

ms

pm

分类: 笔试面试
源地址:http://www.1point3acres.com/bbs/thread-56672-1-1.html

上次在一亩三分地发帖的时候,只是拿到offer了,还没开始上班。

一晃两年过去,惭愧的是,都没怎么回版里发帖。总觉得牛人太多,自己的职场感言实在没什么价值。一般都是景仰一下牛人,回去继续努力。

去年年底的时候觉得在当时的组腻了,想换别的东西做做,所以在公司内部换了组。一来是公司申了绿卡,拿到之前不想折腾了,二来是在微软习惯了(习惯的惰性害死人啊),觉得即使是其他IT大公司,对PM的需求也比较少,更别提小公司了,所以还是在内部换比较保险一些。

************************************************

上一封帖子有好多朋友问PM发展前途怎么样啊,真的不用编程吗,blahblahblah。

PM真的不编程,即使是懂代码,也很少直接check-in。道理很简单。。。如果需要每天 写代码,招个Dev就是了,何必招PM?既然招了PM,那势必有无数的会议要开,文档要写,各方面要协调意见,和客户打交道,以及参与设计产品界面或工作 流程。每天同样忙得要死,PM和Dev基本就是磨间驴和千里马之间的区别。 :)


嗯,是的,因为不用编程,所以代码能力会光速退化,所以前途比Dev要黯淡很多。泡面MM的建议是,如果你可以写代码,那就尽量Development Engineer吧。Test,PM神马的都是浮云。各大IT公司都是靠Dev才能吃饭的。需求大,缺口多,你说Dev累啊Coding苦啊还有无良的 Onsite啊,那说明你能干得了别人干不了的活哈。裁Test时有听闻,PM招的就很少,只要是勤劳聪明的dev,除非是公司彻底垮了,很少会被踢出门 的——即使是被踢出门,其他公司也会抢着要的。

***************************************************

话说回来。由于去年年底的换组,相当于我在微软又多面了几次。看到版上到处是程序员的offer或者是程序面试题,我觉得微软的PM面试题和答题思路还是比较不一样并且自成体系的。希望这篇文章能对需要的同学起到介绍的作用。

强调一下: 这篇文章只针对微软的PM,Program Manager。之所以这次大咧咧地直接写公司名字,就是因为LZ现在知道各公司招Dev差不多,但招PM是千奇百怪,甚至各个组都不一样。为了避免误导 群众,所以说这篇文章的问题和答题思路只针对这家公司。应聘别家公司的同学简单参考,因为公司文化很可能不一样。一样的问题,一样的答案,在不同公司,甚 至一个公司的不同的组,既可能让面试官眼前一亮,也可能被批个狗血淋头,你死都不知道怎么死的。。。

而且最后的Offer与否,不仅取决于你的临场发挥,也取决于招你的组的情况。是否有很多候选人,是否有已经合适的候选人,是否有组里内推的候选人,是否 有相关项目经验的候选人,组里的预算有多少,组里招人的期限是什么时候,以后具体会负责哪个部分还是笼统地招,这个组本身是不是项目及责任稳定,很多很多 因素影响最后的offer。拿到offer当然开心,但没有offer也不要一味地过于勉强,天时地利人和都要的。求职找工作不是个容易的过程,需要对各 种细节细心以及对失败经验健忘。等待不是坏事。有时候,上天真的会让你在小沟里翻船,于是你挣扎着把破船补好,真正上了海就一帆风顺呢!(这个绝对是经验 之谈。上次发帖那是糊里糊涂不知道内幕,这次换组我死皮赖脸即使失败了也详问反馈意见,然后周围朋友听说的,自己组里发生的,发现很多时候没拿offer 都是有别的因素,并不全是自己的原因。呵呵,即使拿到offer有时候也只是幸运,不是说所有合适的候选人都在合适的时候发了简历对吧。。。)

****************************************************

PM面试面什么?
这是个让泡面MM也无比头疼的问题。

简历也写了,cover letter也发了,面试官说行,拉出来溜溜吧。
你说你是该准备百米赛跑呢,还是中长跑呢,还是马拉松呢?。。。

实践证明,PM面试主要面的是设计类问题。有的组,一天五轮,轮轮都是换汤不换药的设计题。比如,给一家宾馆设计一个温度调节器,给某市设计一个停车方案,设计一个网上社区,等等。

PM面试还时有软件工程问题。具体分为,行为类问题,比如当你和老板的意志不一样时,如何解决;沟通协调类问题,比如项目进度晚了,该如何协调各部分进度等。

当然,也有程序题,尤其是如果你有CS背景的话。不过目的不是考查你代码能力或者算法能力有多强,而是你如何分析并简化一个技术类问题,并能和别的工程师讨论沟通。。。还有兴趣方向问题,你大学最喜欢的是什么课,为什么。:)

呵呵,所以,PM面试说简单也简单,因为没什么好复习的。说难也难,因为敌人在暗处,我们在明处。:P

****************************************************

软件工程问题是千人千面,没有正确答案的。有兴趣的同学可以参考 ,第一版第二版都可以,是微软前资深PM写的。需要注意的是,书里大部分都是Waterfall的软件思想,现在大部分公司 都是Agile当道。所以如果有Agile经验的同学会比较占便宜。另外,如果你能考虑到备份啊,版本控制啊,这种任何项目开发中的daily operation,也会加分。咳咳,如果遇到变态的面试题,不用担心,尽力去答就好了。就好比Dev从来不会在工作中用到在面试中被问到的算法一 样,PM也不太会在工作中被要求回答在面试中遇到的问题。也好比《非诚勿扰》舞台上的问题再问已经成为夫妻的人,一定很奇怪。

程序题和兴趣方向,前者考察你对以前学过的东西的深度和广度,后者也算是侧面展示你的谈吐、个性、处人为事,以后能不能和组里和得来。

这篇文章主要介绍一下设计类问题的答题思路:
1. User-Oriented Design. 回答结构是 Problem statement, user scenarios, goals, vision, roles/persona, role priorities, design, discussion, UI alternatives, for each specific role what is the most important value of your design.
2. Break down the question. 破解思路是多问问具体问题。比如上边宾馆的例子,是几星级的宾馆,同时容客多少人,几层楼,哪年盖的,有没有特殊用途比如面向老年人或者军人,这家宾馆在 什么地方,当地气温平时多少度,温差大不大,宾馆是在市中心还是在机场附近,等等。问这些问题的目的是指向性设计。在具体的工程里,其实发挥的余地很小。 作为PM的主要功能就是找到所有的限制因素,然后协调出一个方案来。
3. Keep your real customer in the center. Role和Persona的区别是,Role可以是任何使用系统的人,但Persona一定是最终客户。比如说,一个政府信息平台,尽管政府工作人员也是 使用者之一,但设计的时候,应该围绕广大市民设计。。。:)
4. Always be clear about your resources, schedule, budget, who is affected by what and when.
5. Listen, clarify and interact with the interviewer. Engage the interviewer as your target customer.

基本上这五点就是一个模版了。任何问题都是往进套,只要你讲得逻辑性强,有框架感,尽量往白板上把思路一步步写下来,应该就不错。

*********************************************************

最后的最后,在面试过程中注意:
1. stay calm.
2. show the attitude of being honest, open, willing and able to learn, love to collaborate with other people.
3. don't be confrontational, or indifferent, or tired of answering questions, or too proud.

*********************************************************

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有