招聘感想(含面试题)
这里算是转贴,原帖发在
http://www.delphibbs.com/delphibbs/dispq.asp?lid=3979245,
原帖回复部分也有些自己的看法。
两个月前,开始招聘Delphi程序员,招聘前随手写了几道题,用来笔试。
到现在还没有招到人,很无奈,标准甚至降到只要能做第1、3、5题就录用的水平。结果竟然没有人能够将这3题都答对。很多人连string和WideString的区别都不知道。
近几年,Delphi的从业环境逐年下降,在网路上看到无数人在唱衰歌、转语言。想来原因有:
1、行业开发方向往网络、嵌入式、分布式发展;而Delphi被大家当成做数据库开发的工具(甚至之前宝兰都这么宣传)。
2、用Delphi的公司大都是做MIS的中小公司,产品附加值差,一味压低产品门槛和开发人员素质。
3、开发人员大多只会拖拖控件,碰到点小问题就到处找控件,看看大富翁、CSDN Delphi的问题,一个个白痴得不行。
4、关于Delphi的教材也是全篇一律的数据库开发,不亦乐乎地玩弄些数据读写的小技巧。
我想说的开发人员的问题。过来面试的人,从77年到88年的都有,年龄跨度上较有代表意义。多数人的简历上都写着精通这个、熟悉那个,却只能做上3、4题,还未能全对,有写上名字交来白卷的,更有2个80年前后的应聘人,看了会题目后直接走了。我觉得题目还是比较容易的,而是很多人的开发能力差,从来没有想过理解开发环境、操作系统提供的能力,提高算法设计能力。因此,给人的印象用Delphi的都是些水平低下的人,公司没法提高开发质量、产品质量,也就无法开出有竞争力的薪资,最后是整个Delphi生态链的质量下降。
说这些话,一来期望得到些共鸣;二是希望借此招聘,我对英才网上泛滥的简历几近绝望了。
我姓李,联系方式是:jzs_li@163.com,北京金钻石科技发展有限公司。
笔试题目如下:
Delphi工程师笔试题
北京金钻石科技发展有限公司
答题人:_______________
一、Delphi基础
1、Delphi 内置类型 string 和 WideString 的区别。
2、简要描述Delphi代码单元中,以下关键字的作用。
interface:
implementation:
initialization:
finalization:
3、将一周七天声明成枚举类型。
4、现有Integer 变量 A、B,在不声明其它变量的情况下,将它们的值交换。
如,A := 1; B := 2; 交换之后 A = 2; B = 1。
5、现有以下类:
type
TBase = class
function GetValue: Integer; virtual;
end;
TChild1 = class(TBase)
function GetValue: Integer; override;
end;
TChild2 = class(TBase)
function GetValue: Integer; override;
end;
function TBase.GetValue: Integer;
begin
Result := 1;
end;
function TChild2.GetValue: Integer;
begin
Result := 2;
Result := inherited GetValue;
end;
function TChild1.GetValue: Integer;
begin
Result := inherited GetValue;
Result := 3;
end;
用以下方法创建对象o1, o2: TBase:
o1 := TChild1.Create;
o2 := TChild2.Create;
那么调用以下方法的返回值是
o1.GetValue返回:
o2.GetValue返回:
6、如何模块内部获得自身路径?
Exe程序:
DLL程序:
7、描述一下TEidt和TListView的类派生顺序,并说明它们的来源区别。
8、用pascal 写一个双向链表。
9、设计模式中的单件模式,在Delphi中可以用什么方式创建。
10、Delphi快捷键
快速搜索添加控件:
打开工程属性对话框:
切换编辑中的代码窗体:
删除一行代码:
二、Win32基础
1、写出Delphi声明Win32类型的库及其对应的Win32 Dll库(至少3个)。
2、如何在Delphi中完成多线程的内存保护。
三、数据库
1、现有MS SQL Server 数据库 UserLibs 列举出所有用户表及其字段。
2、现有数据库A,数据库B和A相对应,在数据A中表增加时,或字段增加时,将结构同步到数据库B中,该过程不能损害数据。(上机题)
[解决办法]
sf
[解决办法]
考试,如果不让google,题目再怎么实际,也是死记硬背才能占上风
[解决办法]
啊 我都不会做。。。。看书去~~~
[解决办法]
另类招聘,我顶,公司远了点,如果有班车可以考虑
------解决方案--------------------
还好啦,离地铁也就6站地
[解决办法]
从要求上看,要求是delphi高手(对windows编程很了解)及sqlserver高手
貌似根据你们的实际需要出的题,这像是某个项目的开发人员出的题,而不是懂得招聘的管理人员出的
[解决办法]
汗,该题又重出江湖了啊.
顶一个.
[解决办法]
怎么又来了
[解决办法]
有些题的具体含义还真不知道
[解决办法]
看了
[解决办法]
哦,忘记说明了,公司有宿舍的
哈哈
[解决办法]
to youthon
这个题不是表示要招Delphi高手,招聘情况,原文已经说明。
to nbzip,mdejtod
这个题,我昨天在大富翁和盒子都发了一份。考虑到每个人可能上的站不一样,也就抄一份到这里。
[解决办法]
还不错 你出的delphi题目。
我刚来北京 面试 10家单位有7家要做题 有六家给我出的都是c语言的题。
如果靠你这样死机硬背的题,还不如找个有莫莫 资格证,
他们都是考试高手。但是能不能干活就不知道了。
[解决办法]
to qidahai985615
貌似这些题也不能说是死记硬背的题吧,我希望得到的是对开发工作的理解,有些题我觉得你肯定在教科书里找不到答案。
[解决办法]
4、现有Integer 变量 A、B,在不声明其它变量的情况下,将它们的值交换。
如,A := 1; B := 2; 交换之后 A = 2; B = 1。
这个要是A,B小于65535的数字..我还会...如果是任意数就不会了..
9、设计模式中的单件模式,在Delphi中可以用什么方式创建
这个 看看 刘老师的书 编程模式 应该没问题..可以书买了 放在那里没怎么看
10、Delphi快捷键
快速搜索添加控件:
删除一行代码:
没怎么用过...控件稍微找找就找到了..没怎么用过快捷键
-----------
2、现有数据库A,数据库B和A相对应,在数据A中表增加时,或字段增加时,将结构同步到数据库B中,该过程不能损害数据。
----------这条 楼主要是 知道的话..一定要告诉我啊...
对做双机备份很有用..可惜我没想到什么好方法
[解决办法]
呵呵,要是我,我也说不清楚,但不能表示能力很差。如果要考能力,
可以在一台可以上网的机器上,让他们做一个实实在在的程序或小数据库系统。
现在网络太发达了,人的脑子记忆力自然会变得有点迟钝,并且对网络有依赖。
用了差不多十年的Delphi,虽然它很强大,但我只用它来写动态链接库(DLL)。
[解决办法]
to hecongzhen
答案肯定是有的。
to PBGun
我宁肯多问些基础,其实除了Delphi,我也在招其他语言的;语言并不重要,所以不同语言职位的面试题目背后的意味都差不多。我不是老板,我望得到是人,不是工具。
to kwer
呵呵,跳开开发,人活着还是有点激情好。
[解决办法]
不难,但有些我必须查资料
高手之外更有高手,可惜本人已经没有编程的激情
[解决办法]
招聘就是看看应聘者的基本功外加上人实在不实在就行了,没那么多说道!
技术这方面差不多能应付工作就行了
[解决办法]
好多东西考的不是智力(能力)而是知识吧:)
[解决办法]
to liangpei2008
我也赞同你的招聘看法,或者说这种看法也折射了现实的无奈。发这个帖子,说这些感想,只是想描述一下我理解的delphi结症。我们看delphi老在说数据库什么,新人就以为delphi不就是一个Form、一些界面控件,加上ADO什么的,还是有折腾诸如效率奇差无比的MIDAS之类的东西,我只想说三个字——完蛋了!
[解决办法]
to leeky
貌似有些误解。题里的确不乏基础,但是我希望得到是对语言(工具)及其外延(OS、算法等)的理解。
因为具体的开发(我觉得这估计是你表达的能力)都是可以迅速学习或者找到答案的;只要有基本的理解,那么做什么开发,用什么语言还有关系吗?
[解决办法]
第4题蛮经典的,呵呵
确实要求基础扎实啊。
[解决办法]
谁不是从新人过来的呢?
[解决办法]
to zzflover
貌似没有理解我的意思。
[解决办法]
我做了7年的delphi的开发,开发过大型ERP的软件 ,你这些题如果是考试的话,我估计我也不一定能做出来。这些题我也用过。但是每一个人不一样 。像我就是不愿意记忆这些东西,网络很发达,只要能理解,有思路就可以了。何必再几个知识点上去计较这些呢
[解决办法]
第4题我见过几次,这次还是忘了
[解决办法]
to lsjf0341
题和做了几年开发没有关系的;我想这是两个概念吧。
[解决办法]
除测试题不就是为了检测应聘者的能力吗?
题目不合适,不改题目而是降低标准,这个不是好的解决办法
我觉得应该把某些题目改一下,使题目能够检测出应聘者的能力
其实不如考一些相对比较基础的题目,看答题者的答案也能知道其相关方面的水平了
[解决办法]
金钻石,那是我来北京的第一家公司,可惜之作了1个多月,人都忘记了,当时的会计姐姐还在吗?有个山西还是内蒙的记不清了!公司看来是搬家了,有点怀念那个地方,还有晚上看门的大狼狗,我也作招聘面世,谈谈我的看法,我基本上是不会让来面试的人来答题的,我想没有哪个愿意做这些东西,其实要了解一个人的技术能力,更加有效的方法是交谈!没有必要叫那么多人来面试,又不是海选!在精不在多!
[解决办法]
..
[解决办法]
在网络时代我觉得要找的人有如下条件就好
1:会利用网络和MSDN资料解决问题。
2:会模仿并适当发散。
3:熟悉业务逻辑。
4:代码编写习惯要好。
[解决办法]
我只会第10题的第四小题
话说我都毕业7年了
[解决办法]
出的题目不错,全部看了下,只是“8、用pascal 写一个双向链表。”不懂。
不过像这类题目:“ 快速搜索添加控件:”,我知道有这个功能,也知道对应的菜单在哪里,但如果让我记住快捷键在笔试的时候写出来,那么还是记不住这个的,因为不常用。再说delphi7在这个菜单后面也未加注快捷键,所以很难答出来,但我知道该功能,也会用。就是不知道快捷键,现在还不知道!
[解决办法]
这类面试的公司一看就是垃圾公司,曾经到一个管理软件公司面试,题目让写出加密算法代码,nnd,傻逼才背的过,我就写了个无法写出,最后说我的工资太高了,他们这的工资最高到6k,去他nnd
[解决办法]
to jiheng999
呵呵,公司是换地方了;你说的会计姐姐还在;至于面试,并不是想象中的海选啦。
to youthon,gelinqing
贴中我就说了,发帖的目的是发发感想,二来看看这种方式能不能找到人。
各位所说的,我否认是一种工作方法。
至于题,不就外延了点吗?难道都只剩下拷贝粘贴,没有自己思考了、丧失激情了吗?
to bdmh
我不知道你是不是以攻击人做为乐趣,不清楚你是不是受过什么非人的伤害,但也不用将自己搞得喝疯子一样。
[解决办法]
窃以为,没有人才培养计划的公司,没资格评论应聘的人素质如何,起码没资格在大庭广众下评论.
[解决办法]
to MinxSoft
用Delphi的公司,有几个有人才培养计划?
其次,是不是非要将人集中到一起送去上课,人才培养计划?
我以为,依赖于环境驱动,还不如自我驱动。
对于面试题不一定,实际工作中都能碰到;我写完题目的那天下午,我就将题目发给同事们,大家工作停一下,看看这些题你会如何去做;我们平时也会讨论很多开发的话题,和具体工作没有关系,和Delphi没有关系;所以,招聘的时候,我期望找到同道中人。
和大家的讨论中,我觉得,不少人在观念上都很消极。
[解决办法]
有几题不会...
[解决办法]
你误解BDMH的意思了
[解决办法]
几道题不会,特别是 数据库相关的题不会。555
[解决办法]
建议lz不要在网上发表这么多要求,否则会遭到人海攻击。退一步说待遇低,绝对不能招到高手。
[解决办法]
人才培养 不一定就是送去上课
有融洽的技术氛围,有个把技术大牛,就行了
[解决办法]
第4题用加减跟异或都可以解决
不同的是加减有溢出问题
异或不存在这种问题
[解决办法]
关于面试题,我的建议是:让对方试着出一个他认为对合适的题目
然后探讨一下为什么这么出
(n年前的原创)
[解决办法]
呵呵,这一题在你之前,有人问过,我也答过.呵呵(给DELPHI的兄弟们丢脸了)
http://topic.csdn.net/u/20091019/17/adf9d49a-f539-4ee0-afbf-2a2b7b35561c.html
====================================
我觉得面试题,取一些平时要经常性遇到的问题或功能就好了.
因为行不行,在工作的前一二天之中就能体现出来.如果不行就是不行.
当然如果是大公司,就得有培训机制,人都是可成长性.给一个月的学习期.
[解决办法]
to LeonMtv
我什么要求都没有提,不参考所谓工作经验、性别、学历。也没有说我在找高手;只是说希望找到相同理念的人。
至于人海攻击,无所谓啦,只要不死人,没有什么问题是值得担心的。
[解决办法]
如果你除了这么多题只是用来吓唬人的话,你干嘛让人做这些题?
[解决办法]
我现在的公司面试的时候,其中有问过,谈一谈你觉得比较成功的项目或者代码,这样感觉比较好,聊一下,水平怎么样就知道了
[解决办法]
Orz
[解决办法]
你招的哪是人才啊,是寂寞,大牛~~
[解决办法]
看了下,那个帖子是转我在大富翁发的。
[解决办法]
大哥的 !!
TO 主
恐怕有人 是哪公司的 像主你的"一个个白痴得不行" 明你本身就存在...........莫非你要自己炒成IT招聘界的'芙蓉姐'~_~ ...............不由想起一句 你可以指但不可以指指 ............
[解决办法]
哎,麻烦死我,啦,以前从来都没接触过,让我一个星期刊完,我的大哥啊,那记的住啊
[解决办法]
呵呵,面试本来就没有标准的方法。
如果题很具体,那么肯定会有人说,能不能通用一点啊,具体的东西一查就知道,只要是基础掌握了。
现在题基础了些,也引来一堆人说,应该考些具体点的,基础的东西平时也用不到,谁能记得住啊。
我还是觉得应该在基础的东西多些了解,对开发环境自身(包括编辑器、库等)多些了解,在对OS多些了解,这样能知道在什么层面上开发,可以利用的东西有哪些,编译出来的代码运行在哪里;这样做出来的东西,高效、简洁、稳定,更重要的是易于维护。
谢谢大家关注,这边我先结贴了,30号前我会将题的全部答案发在大富翁里(贴首有链接)。
如果从我的帖子里,觉得有共同话题,可以加我qq701883。
我的异常网推荐解决方案:软件开发者薪资,http://www.myexception.cn/other/1391128.html