11月4号在cu灌水,忽然在人才交流板块看到了一条招聘信息。深圳的,招linux 驱动开发人员。抱着宁错杀1000不放过一个的道理,立马发了份简历。第二天下午3点半,正和同学玩刚安装的魔域,电话响了,是那公司的人打的。听说话的语气,不像HR,当时就觉得有点奇怪,不过还是老老实实的回答问题,感觉不是很正式,更像是在讨论问题。由于有些东西很久没接触了,基本所有的问题都回答不全。问的也很基础,大概还记得是哪几个问题:
1、qt 会不会,一些基本的情况,能否写个文件操作之类的。我只说我会gtk的库,他又问写过最长的ui程序有多长,当时没说我用gtk写过近千行的程序,只是说qt不怎么熟悉,只写过一些小例子,真傻。
2、你对内存管理(MMU)有什么看法。忘了,我只记得会分配内存做TLB,这问题没回答上。
3、你对usb驱动有什么认识。我只知道尾点(endpoint),直接向总线负责,不必和硬件通讯,urb都忘了。
4、你开发的那个驱动是干什么用的。那是我在简历上瞎写的,随便弄了个简单的usb驱动。基本没有功能。
5、内核的5大模块。我只知道内存管理、进程管理、网络,进程通信和文件系统怎么都没想起来。
6、我那开发板的内存起始地址。这问题当时没听明白,当时还想所有的体系结构不都是从0×00000..0 开始吗,挂了电话以后才想起,他估计是想问,用户程序的写入地址。真白痴,当初做实验都设置了好几次,windows下是 30000000,linux下是32000000。这问题基本没回答。
挂了电话后,我觉得肯定没戏了,于是写了封邮件给他,希望能在12月份再给个面试的机会,因为那时刚好考完,他也同意了,对我印象貌似还不错,叫我准备好了发邮件给他。我想用这近一个月的时间好好复习,其实他问的东西并不难,看看书就能回答出来。这段时间过一遍《understandinglinux kernel》 写写module熟悉熟悉开发环境,下次面试应该很有希望。
第一次面试,虽然是电话面试,蛮紧张的,呵呵。最大原因还是缺乏自信吧,呵呵。