写在前面

网上已经有很多朋友分享了笔试面试的感受和经验,我也根据自己的情况做个简要的回顾。 这些文字既是对目前找工作情况的一个回顾,也是对自己今后发展的一种提示和指南。

个人状况

作为一名普通的硕士研究生,前前后后大学这五年也确实经历了不少事情:学生工作、技术开发,义务劳动等。 自己也确实对自己的计算机方向很感兴趣,从高中开始便开始了自己的程序开发之路,虽然没有取得很大的成绩,但是在一定层面上也算是培养了自己动手与思考的习惯。

为了满足自己对这个领域开发的了解欲望,我前前后后做过ACM题目、VHDL硬件语言开发、C51嵌入式开发、C++系统开发、JavaWeb开发、RoR开发,也算是从最底层到高层全面接触。 其中也有不少商业项目,从中也获得了不少经济回报和能力提高。 但是总体来说,我做的大多数工作都是对于业务逻辑的研究与讨论,而很少涉及底层的技术难点研究和挖掘。 这一点对我目前找工作造成了一定影响。

目前参加的笔试和面试

  1. 淘宝笔试,直接挂了。我感觉就一个最小公共祖先的问题没有答上来。这次笔试,让我从先前的复习中警醒过来,目前的笔试面试水平已经远远不只是要求基础过硬,还需要专项的训练(譬如《编程之美》)。
  2. 人人网笔试: 当时做的是Java开发,题目主要是涉及Java的基本语言属性,多线程,各种集合类的实现区别与联系。
  3. 人人网面试: 由于仍然是Java开发,和面试官交流的多为Java的语法点、线程池、各种集合以及一些很有技巧的编程题目: 寻找单链表的环、O(1)复杂度的Min栈操作。
  4. 百度笔试: 软件研发工程师方向,考察的多为基础的数据结构算法题以及海量数据处理的设计题。
  5. 腾讯笔试: 由于签订了保密协定,在这里就不做透露了。
  6. 阿里云笔试: 同样不方便透露。
  7. 百度面试: 一面二面都是算法题,由于大量涉及海量数据处理,基于字典的字符数据查找和对于你自己简历中涉及到的项目的深入讨论。
  8. 阿里云面试: 从简历出发不断挖深。
  9. 腾讯面试: 也是从简历出发,兼顾开放的思维交流。

小结与建议

  1. 在撰写自己简历的时候,三思而后行。不要急求于简历内容的扩张,要真正挖掘自己所经历项目、活动、比赛中的具体收获与真正提高。这也要求我们在今后参与项目开发时,不但能够很好的完成自己的业务逻辑需求,更多地是从专业眼光出发挖掘其中的技术难点和原理,俗话说知其然更要知其所以然嘛。
  2. 在个人复习时从基础出发,我这里主要是谈谈技术开发。语言关自然不多说,C系自然需要融会贯通于指针、链表、虚类等语言构件;然后就是把语言很好运用起来的数据结构与算法: 数据结构相关知识
  3. HR等: 这个我没有做相关练习,求高人指点。
  4. 通过《程序员面试宝典》、《编程之美》拓展思路总结自己
  5. 多动手写实际代码

相关材料

  1. 笔试面试题汇总
  2. 数据结构代码
  3. 设计模式相关