`
岳乡成
  • 浏览: 121988 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

一个牛人出给软件工程师的面试题

阅读更多
一、牛人出的面试题如下:


1. struts,spring,hibernate这样的开源框架,他们的历史局限性在哪里?在何种情况下会不适合用这些框架?


2. 如果要设计一个搜索引擎,像google那样只有两个页面,要求性能最大化,web方面应该如何设计?(不需要考虑搜索的逻辑)


3. 如果要设计一个用于小型路由器中的web系统,应该如何来设计?


4. 请评价下你所熟悉的web框架的可测试性如何,struts,springMVC,webwork或其他均可.在什么样的条件下才能对web系统引入自动化测试?请描述一套完备的面向web系统的自动化测试框架所应当具有的特性.


5. 企业级应用有哪些特殊要求?在何种情况下我们不需要考虑这些要求?


6. 你们从前的研发流程是怎样的?如果由你来设计研发流程,是否能大幅提高生产力和开发质量?如果能,那体现在哪些方面?如果不能,瓶颈在哪里?



二、以下好像是另一个牛人跟帖给的一个自己的答案,内容如下:

1. struts,spring,hibernate这样的开源框架,他们的历史局限性在哪里?在何种情况下会不适合用这些框架?
struts是以请求回答方式为基础的.ajax,flash等富客户端越来越多了.....
spring是由于java的静态类型限制,等java可以支持动态方法添加之后.....
hibernate是由于数据库都是关系型的,等数据库面向了对象之后.....
综上所述...ssh蹦达不了几天了.


2. 如果要设计一个搜索引擎,像google那样只有两个页面,要求性能最大化,web方面应该如何设计?(不需要考虑搜索的逻辑)
性能:
1客户端:js的写法,数据排列,不同浏览器区别.
2服务器:逻辑,计算,缓存,减少I/O,提高命中
3传输:带宽,缓存,异步,进度条,并发,集群,数据压缩.
我认为最主要的性能是人的体验,其它都是可以放到第二位去的.

3. 如果要设计一个用于小型路由器中的web系统,应该如何来设计?
使用不需要并发多线程的简单文件服务器提交后直接改文件.
不使用常规异常捕获方式
(由于选择性少所以根本不使用异常,只提供软硬的复位)


4. 请评价下你所熟悉的web框架的可测试性如何,struts,springMVC,webwork或其他均可.在什么样的条件下才能对web系统引入自动化测试?请描述一套完备的面向web系统的自动化测试框架所应当具有的特性.
由于容器的限制所以:web,spring,hibernate都不是很好测试.
由于大多数web是以人的体验为主的.主观概念变成代码代价过高
由于页面生成工具没有足够的测试支持.所以写出的代码非常难以程序化自动化

现有的seleniumIDE还不是很稳定
如果把html,js,css分开,页面内容以json或xml来传输,页面的逻辑由js二次绚染成型那么测试成本会下降很多.....
(开发成本提高2到5倍)


5. 企业级应用有哪些特殊要求?在何种情况下我们不需要考虑这些要求?
,性能,扩展性,7*24小时,
性能问题在出现性能问题之前不考虑
扩展性问题在签定长期维护,二期开发合同之前不考虑
7*24工作系统一般不考虑...开发中本身就是


6. 你们从前的研发流程是怎样的?如果由你来设计研发流程,是否能大幅提高生产力和开发质量?如果能,那体现在哪些方面?如果不能,瓶颈在哪里?
......................我设计的.........
瓶颈很大一部分是由于没有勇气 去尝试新的实践.


三、看了上面的问题和回答我无语了,三年的职业生涯,觉得自己狗屁不是。更绝望的是可能再给我三年的时间,可能也不会能自如的回答上面的问题,达到牛人要求的程度。一股透心的悲伤从心口喷出,前面是有路,但我可能走不过去了。真该考虑转行了吗?


四、看这个帖子的人,你的感觉呐。



五、哎。。。。。。。。。


分享到:
评论
16 楼 yashironan 2010-01-29  
前4个是基于web系统,具体的是SSH框架的问题;后2个是在web系统上延伸出来的问题,个人感觉以这些来衡量有失偏颇。

不知道这是不是全部的题目,比如有状态协议栈的常见做法和问题,异步消息队列系统,分布式系统,负载均衡方案,嵌入式数据库这些电信级系统上常用的东西,这就没有提到呢
15 楼 meiowei 2010-01-29  
我擦把眼泪去 先
14 楼 geweixin 2010-01-29  
http://www.iteye.com/topic/292937

那位送饭兄弟出的。hoho
13 楼 windywindy 2010-01-29  
感觉好像在招架构师的!!!?
12 楼 2022228 2010-01-29  
如果你完全自主的设计了一个web系统,自主开发,系统上线后遇到各种问题,体会可能就有些了。
目前实践中。。。
11 楼 dajian 2010-01-29  
我也答不好,工作四年了
10 楼 locked 2010-01-29  
这些题目都是开放式的,仁者见仁,智者见智,有些时候和抬杠也差不多少了。
如果DBA要求App发送的SQL是严格优化,DBA审核后的 ,hibernate没戏。
9 楼 langshao 2010-01-29  
fuchao01 写道
感觉直至做SSH开发的应该能回答吧!我不是,所以我还真答不出来


我没用Struts(很久以前用过Struts1),但在用Spring和Hibernate,我就回答不出来。太菜了?
8 楼 fuchao01 2010-01-29  
感觉直至做SSH开发的应该能回答吧!我不是,所以我还真答不出来
7 楼 langshao 2010-01-29  
感觉和lz差不多!

对于第二点那位仁兄,觉得他是搞笑的(有意的或者无意的)。不知lz帖出来是不是这个意思呢?
6 楼 geweixin 2010-01-29  
bluemeteor 写道
这也叫牛??楼主再哭几年吧

求答案?
5 楼 chao0010 2010-01-29  
个人觉得如果3 4年的工作时间内一直做开发的话,以上问题不一定能答的很好,即使能答出来基本上也是在各种资料上看到的,并不是自己的理解,就像本人现在就答不出来。真正能用自己的理解去回答这几个问题,并且能答的很好我觉得应该至少需要6 7年的工作经验吧,而且不仅仅是做开发。
4 楼 岳乡成 2010-01-28  
bluemeteor 写道
这也叫牛??楼主再哭几年吧

给个答案吧,哥们。
眼高手低可不好的。
3 楼 bluemeteor 2010-01-28  
这也叫牛??楼主再哭几年吧
2 楼 guangyixia 2010-01-28  
好多钱一个月
1 楼 岳乡成 2010-01-28  

相关推荐

Global site tag (gtag.js) - Google Analytics