中级农民
- 积分
- 110
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2016-12-2
- 最后登录
- 1970-1-1
|
表示很理解楼主的心情,不过还是想讨论一下:
从公司的角度来看,对于大一点的公司来说,刷题可能是考验你problem solving,data structure,algorithm,coding的最直接的能力。楼主也说了白板编程/现场写代码/oa被很多人讨厌,不过楼主可以想一想如果换做国内的方式会怎么样,假设你是一个做full stack的,那你去面试的时候被问一大堆现成安全的问题还是一点一点抠细节的那种,到时候你会不会说,我一个做全栈谢谢API的为什么要知道系统底层怎么实现thread的,我直接调他的API不就好了吗?这个只是一个最简单的例子,对于一个公司来说,他不可能为了每一个职位去customize所有的面试问题,但是统一使用一套面试问题就会造成面试人对于考的东西和做的东西完全不搭边的误解。与其考了一大堆基础知识发现进来都不会code还不如多考考算法,看看你解决问题以及写代码的能力?(如果抱着公司关我啥事凭啥不按照我的skill set来,那就当我没说。。)
另外就是心态上,目前找工作的人还是远远大于工作的数量,所以才会有题目越来越难的迹象很多时候就是为了把人区分开来,我觉得高考也一样。当然我不觉得这样是对的。不过作为现在还不能改变规则的人来说就只能适应它。其实我也很好奇,楼主觉得什么样的面试是一个好的面试。我这里抛砖引玉几种:
- 白板编程/现场写代码/oa
- 直接考一个现在团队里遇到的问题,看面试的人怎么解决(这个方法的弊端在于如果面试的人对于这个方面不熟悉是不是直接就pass?怎么样合理的测试这个candidate的potential呢?)
- 靠详细的CS fundamental,例如系统里的各种实现,怎么分配系统资源,例如深挖Java JVM
个人来讲我不觉得第二种和第三种更能区分一个有潜力的面试的同学,尤其在这个同学还没有很深的业界经验的时候。
另外刷题有啥好处我决定另辟蹊径给几个答案:
- 刷完题之后,我感觉我打字贼快,平时写100行code现在能写更快
- 随便写个Python file path traversal基本不用怎么想逻辑,只需要考虑商业逻辑就好了
- 前两天写了个Tree Edit Distance,如果我不知道DP可能得现学
有啥坏处
- 浪费时间
感觉打这种问题需要狗头保命一下。免得被别人说PUA。 |
|