程序员面试项目经验_第1页
程序员面试项目经验_第2页
程序员面试项目经验_第3页
程序员面试项目经验_第4页
程序员面试项目经验_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第页程序员面试项目经验

2:说说你的家庭面试时询问家庭问题不是非要知道求职者家庭状况,探究隐私,而是要了解家庭背景对求职者的塑造和影响。面试官盼望听到的重点也在于家庭对求职者的积极影响。

3:说说你的最大优缺点这个问题的概率很大,面试官喜爱求职者从自己的优点说起,中间加一些小缺点,最末再把问题转回到优点上,突出优点的部分。

4:就你申请的这个职位,你认为你还缺什么?面试官喜爱问求职者的弱点,但精明的求职者一般不径直回答。他们盼望看到这样的求职者:继续重复自己的优势,然后说:“对于这个职位和我的技能来说,我相信自己可以胜任的,只是缺乏阅历,这个问题我想我可以进入公司以后以最短的时间来解决。”

5:你期望的工资是多少?这个问题不能径直回答,面试官盼望听到:“以我的技能和优势,我完全可以胜任这个职位,我相信我可以做的很好。但是贵公司对这个职位的描述不是很详细,我想我可以延后再争论”。

6:你还有什么问题吗?这个问题看上去可有可无,其实很关键,面试官不喜爱说“没有问题”的人,由于其很着重员工的性格和创新技能。假如有人这样问:贵公司对新入公司的员工有没有什么培训的项目?或者说贵公司的晋升机制是什么样的?面试官将很欢迎,由于表达出你对学习的热忱和以及你的上进心。留意:面试过程中,求职者要尊敬面试官,仔细回答每一个问题,在回答下列问题之后说一句“感谢”,能提高获胜的机会.

面试进行曲之技术面试(项目阅历)保藏

在前期已经讲过怎样分析自己,对自己进行一个精确的定位,选择一个合适的求职方向!并结合自己的实际个人状况来写一份针对性很强的个人简历!个人简历就是个人的广告!好的简历可以更受到用人需求单位青睐!好的简历才能让你获得面试的机会!我们还针对面试列出了j2ee方面的知识点!不管是笔试还是面试都是会考到这些特别重要的知识点!面试的技术内容并不会有想象中的那么难,主要着重基础和环节!环节决断一切!所以列罗的那些知识点是需要下功夫去预备的!当然列罗的那些知识点只是一些在面试中常常会涌现的问题集!每家企业都可能超出这些知识点的可能(就不要骂我了)!自己去预备吧!技术方面的考核通常分为笔试,技术面试;其中技术面试又分为专业知识面试和项目阅历考核。

应当说来笔试和专业知识面试都是考核你对某方面(j2ee或.net)知识的掌控和娴熟程度!而项目阅历考核那么是看你是不是拥有项目阅历,是不是适合企业的用人需要,是不是需要企业为你付出培育的成本,是不是你能够立刻投入到工作中去.企业是以你的项目阅历作为衡量你的工资标准的!所以就是会涌现有些同学可能在学校学习成果很好而企业给他开的工资并不高,而有些同学的学习成果一般反而得到高工资的缘由!专业知识的考核只是企业了解你具有这方面的专业素养和技能!其实有时笔试成果差一点或者你感觉在做笔试题的时候有些题目没有做出来或答错了并没有关系的。在技术面试的时候,在回答专业知识方面的题目不够抱负,也并不起决断性的作用!总之笔试和专业知识面试的答题达到企业要求的70%就可以了!当然假如你在专业知识方面表现的太差,考官对你也就没有多大的爱好了!但是最能决断企业下定决心录用你的关键在于你的项目阅历(摒除企业特别强调英文等其它方面技能外)。说了这么多似乎都没有说到正题,这是由于让大家更清晰的了解回答好项目阅历方面的问题是多么的重要。而这方面又正好是刚从学校出来的学员非常薄弱的,并且针对这方面介绍也非常少!下面我们就来谈谈面试中关于项目阅历的问题及应当从哪些方面进行回答!

问题一、请简约的介绍一下你自己吧!

分析:这是在任何面试中都会遇到一个题目,看起来这个问题是非常简约的,但是往往我们并不知道考官问这个题目是盼望从你的回答中获得什么信息!所以我们就很简单走题,跑题,不入正题!不能立刻就吸引考官。请记住抓住面试的每一个机会来推销自己。但是往往我们不知道从哪里谈起。所以我们得先了解考官想要猎取什么信息呢?

1.你的从业时间你从事相关的工作有多长了

2.你的教育背景你是否受过良好的教育

3.你的工作阅历你是否有过具有肯定的工作阅历

4.你的项目阅历你是否有过丰富的项目阅历

5.你别出心裁之处你是怎么进行项目开发的,有什么特别之处,或者你在哪些项目中

取得过哪些胜利,或者有哪些自己觉得骄傲的地方

6.你最擅长的地方你最擅长的技术是什么?

7.你的性格你是怎么样的一个人

怎么回答:我们一一来分析吧,首先从业时间一般回答你进行软件项目专业开发的时间.千万不要把你以前在大街上卖过鱼蛋或到夜市卖烧鸡等污七八糟的时间计算进来.工作阅历也是,你至少有在一家公司呆过吧.不要告知我你只学过j2ee或.net半年时间,就想来我公司混饭吃.要和你的简历对应起来.一般至少1年半以上.

教育背景:假如你上的高校及所上的专业比较对口,就说出来,非否就不要提了.总之是要扬长避短

工作阅历:也就是以前在什么公司上过班,与你简历上的全都就可以了.只说与软件开发的工作阅历,其它的就不要提了

项目阅历:你曾经做过的自认为比较好的项目,这里特别重要,先用一句话来概括项目,然后把项目的功能及子功能全部表达出来.

你别出心裁之处:也以说你在项目你以什么独特的方法获得什么不同的效果,主要是能够结果详细的项目或能举例说出来.

最擅长的地方:主要告知对方你最擅长哪方面的技术,是需求分析?编码,或数据库或架构

你的性格:用一两个词来形容你自己,描述你的性格.

回答实例:

面试官:请简约的介绍一下你自己吧!

令狐冲:您好,在下令狐冲.从事j2ee开发工作3年时间.20002年至2022年在大宋桃花岛软件谷皇室软件公司从事j2ee项目开发.其间开发过大宋侠士综合管理平台.大宋侠士综合管理平台能够自动收集大宋各路侠士,英雄好汉,隐居高人信息并对他们的个人信息及所作所为进行跟踪管理,实现侠士信息维护,查询.侠义事项维护,侠士等级管理,侠士奖惩管理,侠义活动发布,抗灾捐献管理等。鄙人在项目中主要负责需求分析,架构设计和框架类代码实现。在项目开发中擅长与客户沟通,充分理解客户需求。具有极强自学技能,在大宋藏经阁中通读了大量的软件项目开发秘籍,具有藏文,印度文,金文的读写技能。

问题之二、谈谈你的***项目吧!

分析:考官通过看你的简历或者你的介绍来了解你所做的项目,那么考官确定想更具体的了解您的项目,看是不是与你的简历写的项目阅历全都。也就是考核你是否具有真实的项目阅历。一般来说,在你的简历至少有一个重点项目,放在简历项目阅历栏的第一位。把项目的业务功能描述清晰。在这里你就是重点谈一个项目就可以了。从下面几个方面来进行陈述

1.用一句话简述项目

2.具体的列出项目实现的功能

3.说出项目实现的技术和架构,能说出项目的不寻常之处,比如采纳了某项新技术,采纳了良好的架框等

4.能让别人感觉出项目的规模

5.说出你在项目中的责任

通过这些来证明你是的确开发过了这个项目,并且这个项目是一个真实的。还有就是你是真正具有项目阅历的。合乎企业的用人需要。

特别留意要把项目所实现的功能描述得越具体越好。当然用词要简洁,表达要流利。其次要尽可能采纳专业术语,显得你的专业。不要犯低级错误。

请记住,你要描述的是整个项目而不仅仅是你做的那一个模块。有些项目你只参加了其中一个模块,但是你要把整个项目描述出来,不要仅仅描述你参加的那一个模块。

说出你项目采纳的技术及架构,还要能说明你在项目中的责任。

回答实例:

面试官:令狐冲,能介绍一下你做的大宋侠士综合管理平台吧!

令狐冲:好的,大宋侠士综合管理平台是为大宋武林联盟开发的,实现武林联盟管理的自动化。大宋侠士综合管理平台能够自动收集大宋各路侠士,英雄好汉,隐居高人信息并对他们的个人信息及所作所为进行跟踪管理,实现侠士信息维护,查询.侠义事项维护,侠士等级管理,侠士奖惩管理,侠义活动发布,抗灾捐献管理等。

系统基于B/S三层架构,采纳Spring+Hibernate+SpringMVC框架.运用Oracle数据库.

本项目只投入15个人,开发周期为6个月。本人在项目中进行了前期的需求分析,系统架构实现,数据库建模,及部分编码工作。

问题之三、谈谈你们是怎么对这个项目进行开发的?(谈谈你们是怎么进行项目开发的?)

分析:这个问题是考核你是否熟识软件开发的流程,同时也是考核你的项目阅历,你的专业素养,从这里可以判断出你参加过多少项目,可以判断你对软件工程的理解和熟识程度。这个问题是非常关键的,你需要预备的知识点有:软件项目的生命周期、软件项目的开发模型、面对对象的分析和设计、软件质量保证等。

软件项目的生命周期:

项目计划

需求分析

设计(概要设计和具体设计)

编码

测试

发布

维护

项目计划阶段:走访客户,进行沟通沟通,获得客户原始需求。

对客户的需求和市场等进行调研,分析,编写可行性分析报告。

通过不断的与客户沟通,找客户不同环节的用户进行沟通来猎取需求。召开评审会议,报告可行性分析,报告用户原始需求,报告项目远景规化。

需求分析阶段:

在客户原始需求的基础上不断与客户沟通,充分的熟识和深入客户业务,获得充分的业务需求,完善用户需求和功能性需求,了解客户的相关约束而获得非功能性需求。最终编写《需求规格说明书》;召开需求评审会议,客户确定需求,并签定合同;编写项目计划说明书;编写测试计划;召开项目启动会议,项目正式启动。

概要设计阶段:依据《需求分析说明书》,进行用例分析,获得充分而有效的用例。编写界面原型,编写编码规范和界面风格规范,数据库设计规范。用uml工具画用例图,编写有效的用例规约文档。划分项目功能模块.评审用例及用例规约文档。

具体设计阶段:依据完整的用例及需求进行分析,获得数据库所需的相关信息,画数据库E-R图,编写数据设计说明书.进行数据库建模。进行具体的分析,用uml工具画类图,确定每个功能模块的子功能,抽取项目的公共部分成为一个公共模块。确定项目的架构基础。确定需要用到的类及类成员和方法。确定一些帮助类及方法。对每一个用例都用uml工具画出顺次图。编写具体设计说明书,评审具体设计说明书,进行基础框架搭建。列出任务清单,进行任务安排。

编码阶段:以小组的'形式进行代码编写,编写单元测试用例,每完成一个类都要进行单元测试。每完成一个功能点和模块都要进行集成测试。确保每一个功能点和模块完成后都是一个可以看得见、摸得着的产品。而不是等到最末才进行统一的调试和搭配。每天都要对代码进行检查和优化,也就是所谓的重构。

测试阶段:依据测试计划对项目进行系统测试,以及用户的验收测试

产品发布:交付完整的产品和设计文档。把产品布署到客户的计算机上,确保产品的正常运行。客户签收。

维护阶段:为客户提供技术保障,对产品进行相应的维护和升级工作

软件常见开发模型

瀑布模型:最经典的过程模型,适用于需求明确,规模较小的项目

喷泉模型:迭代,无间隙特点,适用于面对对象的软件开发过程

螺旋模型:

MSF模型:微软解决方案过程模型

什么是极限(*P)编程:极限编程是对机敏软件开发方法的一种实现。它强调测试先行,也就是在编写代码的时候先编写测试用例;循环迭代,每一次迭代都是一个可用的产品;重构,不断的对代码进行优化;结对编程,两个人为一对共同进行代码编写;它强调团队之间的知识传播,让团队的每个人都能熟识软件开发的各种技术。如:支持熟识数据库的人去做界面,做界面的人去做数据库等,通过不定期的角色转换来加强团队的技能。要求客户参加到软件开发中来,开发出最适合客户需求的产品。

单元测试一般是在编码的时候同步进行的,一般是以类为单位进行测试,当一个类完成了编码,并编译正确后才进行的测试,测试这个类是否已经能够实现指定的功能。一个类能够正常的编译胜利并不意味着这个类就已经完成了,还要通过测试,设置断言来确定他是否已经达到了预期的效果,实现了特定的功能。调试,编译通过只能证明代码的语法没有错误。

单元测试由程序员自己来进行,也可以在项目小组内交互进行。单元测试是采纳白盒测试

集成测试一般指实现了一个功能点或一个模块后,为了测试这个模块是否已经实现了需求要求的功能。集成测试可能需要对多个类进行组装,也可能需要与以前已经测试通过的模块进行组装,是对产品组件的系统整合和执行。集成测试可以依据模块的大小分不同的级别,在现行的软件开发中,每完成一个功能模块都需要要进行一次集成测试,使得你完成的模块是一个可以运行的产品。集成测试一般可以由项目小组的负责人(或指定一个小组成员)来完成。集成测试采纳白盒式测试和黑盒测试

系统测试一般指项完代码已经全部完成,交给测试小组来进行测试。进行系统测试的人员独立于开发小组,系统测试人员把完成的产品布署在相应的计算机环境中,根据测试计划进行测试,验证系统是否满意了指定的需求。系统测试除了测试产品应满意基本的功能需求外,还要对产品的性能,用户界面,安全性,压力,牢靠性,安装和反安装等几个方面进行测试

系统测试采纳黑盒测试

验收测试一般指产品交付给客户,负责把产品布署在指定的计算机环境中。由用户依据需求文档,进行的总体测试。验收测试的内容和系统测试一样,只是执行者不同。都是除了测试系统完成基本功能外还要对性能,安全性,牢靠性等进行测试。验收测试也是采纳黑盒测试

为什么需要测试?测试是对软件质量的保证,只能通过严格测试的软件才是合格的软件,测试并不是说让软件能够编译通过,测试是让软件产品最大程度的满意客户的需求度。

回答实例:

考官:令狐冲,能谈谈你们是怎么样对这个项目开发的吗?

令狐冲:首先,我们这个项目已经有了一个基本的用户原始需求。但这是不够的,我们都知道需求分析是非常重要的,所以我们在用户原始需求文档的基础上,再次进行了分析,通过不断的与客户沟通,充分的了解和熟识用户的业务,完善了业务需求和功能需求。还对用户业务需求和功能需求分析完善为实现软件的需要的非功能性需求。得出项目需求规格说明书,经过评审会议确认通过。

依据需求规格说明书进行用例分析,通过分析和争论找出充分的有效用例,并用Rose画用例图。对每一个用例进行具体的分析,完成每个用例的用例规约文档,并编写界面原型。划分项目模块。最末对用例及用例规约文档进行评审验证。编写”代码编写规范”及界面风格规范,数据库设计规范,编写概要设计说明书。

依据需求规格说明书和分析各个用例规约文档,获得数据库的基本信息原型。也可以说是数据库表的草稿,依据数据库表草搞进行分析,进行数据库设计和优化。编写数据库设计说明书。采纳PowerDesigner进行数据库建模,并生成SQL脚本。确定项目框架,设计公共模块和帮助类。依据对数据库模型和用例规约文档的分析,列出对象清单和理清对象关系。用Rose来画类图。对每一个用例都用rose画出时序图。编写具体设计说明书。列出任务清单,分组进行代码编写。

在代码编写阶段,先统一完成全部的实体类。对于非实体类那么先完成类的框架,也就是只写方法和说明文字。详细方法的实现临时为空。然后再进行代码填写。每完成一个类的代码编译通过后都要进行重构和单元测试。每完成一个功能和模块都由会由小组进步行集成测试。使得完成的模块是一个真正可以运行的,可见的功能实现。

在各个小组都完成自己的模块后就进行模块整合,进行一次大规模的集成测试。然后把产品产给产品测试小组进行系统测试。

问题之四、你们是怎么保证软件开发的质量的?

分析:这个问题其实上面的讲解已经给了答案了。软件质量是软件实现对需求的满意度。开发的软件越满意客户的需求,说明软件的质量越高。反之就是质量越低。尽管你开发的软件运用了新的技术,良好的设计,丰富的功能;但是这些功能都不是客户需要的,客户需要的功能没有实现或者是许多没有实现。这样的软件也是失败的软件。为了保证软件质量,也就是让开发的软件最大程度满意客户的需求,只有两个方法。一个是获得充分完整的需求,二是能过测试,以需求为中心编写测试计划。来保证软件合乎需求。

回答实例:

考官:你们是怎么来保证软件的质量的呢?

令狐冲:要保证软件的质量首先就要获得完整的需求,在需求分析阶段做了大量的工作与客户各个环节的代表性用户进行沟通,充分了解和熟识客户的业务。并且从需求到设计阶段都保持与用户的沟通和沟通。让用户的业务专家一贯参加我们的需求,分析和设计工作。

其次我们会在需求分析后就编写测试计划,在开发的每个阶段都进行相应的测试来保证代码是乎合相应需求的。在代码编写过程中,每完成一个类都由程序进行单元测试,每完成一个功能点或模块都要进行集成测试,每一次集成测试都对上一次的已经测试通过的产品进行迭代,也就是以前测试胜利的都会加入到本次测试中来。使得每个完成的功能和模块完成后都是一个可以运行的,可以看得到的产品;同时也欢迎用户来见证我们的集成测试结果。代码编写完成后进行最末一次集成测试,然后交由独立的测试小组对项目进行系统测试。

问题之五、你为什么离职的?(你为什么离开以前公司的?)

分析:这个问题几乎在任何场合的面试都会有,有时是在技术面试的时候问,有时是在人事面试的时候问,有时会在技术面试和人事面试的时候都问。其实也比较好回答,回答的抽象一点比好。切记不要说以前公司的坏话,假如你这样做。人家会想,你以后离职后同样也会说这家公司的坏话.一般都是说为了某求更好的进展空间。让人感觉你是经过深思熟虑后才选择他们公司的。

回答实例:

考官:你为什么离开以前公司的?

令狐冲:以前公司对我很好,我在以前公司干得也很开心。我由于合同到期,为了获得更好的进展空间及谋求对自己能持续进展的环境。并向公司办理了离职手续,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论