yy的一次面试经历

问:请先自我介绍一下,可以么?

答:好的,。。。。

问:你擅长哪些语言?

答:vb,c,现在是java。说起java,我想更应该说说面向对象技术。面向对象不是一种具体的技术,而且跟java等面向对象语言不是一回 事。她是一种思想,是程序员(包括所谓架构师)所必备的一种基础技能,一种做程序的基本方法。每位程序员在开始学java语法之前最好培育出他们面向对象 的基本思想。

问:你很擅长使用x数据库对吧?那么请说说一个数据库被放在哪个目录里?

答:不知道。我认为在实际工作中根本用不到这些。

问:那你知道什么?

答:对于技术,我是个纯粹的实用主义者。也就是说,技术要以用为本,取之有度。根据具体需要(源自客户需求)来学习和使用技术。真正的程序员是能够用最短的时间找到最适当的技术来解决问题的人,而不是学得很多却拿不出来烂在肚子里,或者拿出来了却根本用不上的人。

问:好了好了,下面考考你的PM能力。说说你在过去的一个项目中具体作了些什么?

答:没法具体说。我带过很多项目,每个项目的管法都不同。我只是有一些原则,如以人为本,无为而治等。

问:真新鲜。

答:一点也不,因为很多大师已经做到了。说起软件项目的管理,不能不说软件过程。Martin Fowler说软件过程“从无,到繁重,再到敏捷”,我重新翻译一下就是“从无,到礼,再到'道'”,这个加上了引号的道,意思是现在敏捷过程正在接近 道,但还不是真正的道。老子说“失道而后德,失德而后仁,失仁而后义,失义而后礼”,正好从反面印证了上述观点并加以预言:软件项目开发最终会得道,或者 说找到“银弹”,其方法论就是“无为而治”。

问:无为?那就是说什么都不用学就可以管项目了?

答:不是这个意思。无为不是无所作为,而是为道日损,损之又损,以至于无为。意思就是为了客户满意,项目组成员们快乐,整个项目组要努力找到适合这 个团队也适合这个项目的一套软件过程,她是独一无二的,因为Alistair Cockburn也说过“不同的项目需要不同的过程”。她可以被再利用,但只是一部分,而且具体做法会有不同,尽管思想一致。这样下去,最终项目组成员们 会顿悟,他们不再迷信rup或是xp,对于新项目,他们总会找到最适合那个项目的过程;对于项目经理,他不会让成员们感觉到被管理,事实上他也很少管他 们,大家都是平等的,为了项目成功大家都有责任都要尽力。极端的说,项目经理不过是个打杂儿的,就是干干跟踪进度,组织会议,对外联络这些杂事。这就是所 谓的“无为而治”。

再答:不过在现阶段,以上这些是有条件限制的,就跟敏捷过程的限制条件一样。如只适用于10人以下3个月以内的小项目(目前的大部分项目都是这样);不适合做人命关天的项目;不适合分布式的国际合作项目等等。

问:你的这些观点是否与CMM冲突?

答:我不这样认为。CMM的目的也是为了保质,保量,按时提交项目,让客户满意,让团队满意。这与以上观点是一致的。事实上,已经有很多人在研究xp等敏捷过程与CMM的关系了,已经证明敏捷过程至少能达到CMM3了。

问:好。如果现在让你带一个新团队,你打算怎么开始?

答:我会问大家喜欢纪律严格的xp么?如果大部分喜欢的话,那么我们就从实行xp开始;如果大家喜欢带点儿正统血统的agile up的话,那么就来agile up;如果众说纷纭意见不一致的话,那么最好从crystal clear开始,因为它的要求最少。

问:时间到了,你还有什么问题?

答:没有。但是有句话想说:俗话说“道不同不与为谋”,希望贵公司能以此来决定是否采用我。不管结果如何,我都会非常庆幸的。

阅读更多
个人分类: IT
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

yy的一次面试经历

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭