【专业知识相关】
1、 谈谈对OOP、IOC、AOP的设计理念的理解;
2、 谈谈对主流的J2EE框架(Spring、Struts、Ibatis、Hibernate等);这些框架的局限性在哪儿?在何种情况下会不适合用这些框架? 3、
关于J2EE方面开发方面,说出前、后端的设计模型;
(提示:比如前端的MVC框架,Axis,Ext,JQuery,Flex等,后端的Ejb,Spring,IOC,AOP,JMS,JNDI,RMI,以及负载均衡等)
4、 什么是SOA,ROA?谈谈两种技术的原理及适用场景; 5、 说说JVM原理,内存泄露与溢出的区别,何时产生内存泄露? 6、
谈谈JAVA通信方面相关知识,以及大项目之间通信方案;
【软件架构、服务器、中间件相关
7、 谈谈架构师的职责有哪些?
8、 软件设计领域,有哪些设计模式,你常用的几种设计模式;各个设计模式有哪些优缺点,适应哪些场景;9、
谈谈你日常用的几种WEB服务器、中间件的相关特性及优缺点;
10、 如果要设计一个搜索引擎,像Google那样只有两个页面,要求性能最大
化,Web方面应该如何设计?(不需要考虑搜索的逻辑)
11、 企业级应用有哪些特殊要求?在何种情况下我们不需要考虑这些要求? 12、 谈谈你现在做技术最大的困惑是什么? 13、 描述一个你感觉最成功的一次架构案例? 14、 怎么做到系统整合?
(提示:A、通过代码的整合方式,使用相同的数据库。B、通过SSO方式,可以是
异构数据库.)
15、 浅谈一下负载均衡的原理?
16、 怎么处理权限分配?有几种权限分配模型?(提示:目前流行的三种:
A、自主型访问控制; B、强制型访问控制; C、基于角色的访问控制RBAC)
【数据库方面】
17、 怎么处理日志问题?有那些可行的方案?
18、 用JAVA如何实现每天1亿条记录的数据存储,数据库方面怎么设计? 19、 对应大表数据是如何处理;以及数据库性能调优策略;
(提示:索引,SQL语句效率(切忌全表扫描),数据迁移,水平切面等) 20、 分布式系统,数据库设计方面,应注意哪些方面?
(提示:权限设计、图片存储、服务器集群设计等)
21、 当用户反映,平台访问变的很慢的时候,怎样处理这个问题的?
(提示:A、数据库端;B、后端应用平台端;C、前端Web端;D、负载均衡;E、
网络设置;F、机器性能的优化;G、考虑是否有病毒、木马等干扰等等)
【项目管理、团队建设相关】
22、 介绍一下你主导过的项目;
(提示:要能熟练说明,你曾经负责的产品、项目研发?含设计开发思想、技术实现、任务安排、进度控制、版本控制、需求控制、后期规划能一系列问题。)
23、 你们从前的研发流程是怎样的?如果由你来设计研发流程, 能否提高工
作效率和开发质量?如果能,那体现在哪些方面? 如果不能,瓶颈在哪里? 24、 如何有效的沟通,如果高效的管理团队;
25、列举你做过的几个大型或超大型系统,并且描述其特点;
26、你认为负责一个大型集成系统的系统分析与架构设计,需要具备哪些能力?(尽量详细)
27、如果这个大型集成系统是车联网系统,那在系统分析与架构设计上还需具备哪些能力?
如果本文对你有所帮助,这是我的荣幸!
Ps:本文所有面试题来自网上,经本人挑选整理!