Tips

##Tips Original from posts 这个repository的资料都是网上搜索+自己的总结经验, 我也不是什么大牛, 只是一介卖油翁, 无他, 唯手熟尔. 至于资料的正确性, 不敢有百分百的把握, 希望看官也能边看边帮我挑错, 有问题可以create ticket或者联系我, 非常欢迎!

关于面试准备, 说下心得吧.

  1. 我是在职码农骑驴找马, 每天回家后大概有5个小时学习, 一周大概是30~40小时的学习量, 持续了两三个月的样子. 各位按自己的情况来斟酌时间分配.
    • 战线不要拖太长, 要不最后你的身体和精神上的压力都会很大的.
    • 我这个人很笨, 不像刚毕业的学生有脑子有干劲儿. 我Leetcode过了三遍, 第一遍写得很吃力, 好多题没写完. 第二遍精细地写, 争取做到每道题都弄懂. 第三遍主要是靠笔在纸上写的, 然后再对答案, 把记住corner case, 强化思路.
  2. Leetcode对于提升自信心很重要, 面试遇到类似的题目基本就不会慌了, 剩下的就是靠”演技”, 简单分析下题目, 然后一气呵成地coding之后再分析过程, 把思路清晰地展现出来就行了.
    • 遍数多是没有用的, 三五遍题目还不懂和一遍全懂bug free是没法比的.
    • 有些题目理解困难就不要揪着, 看看别的先, 没事的时候多多思考. 但是也不要放着太多甚至觉得这个题太难肯定不会考, leetcode没有真正意义上的难题, 只有比较难AC的题(需要优化算法).
    • 记忆是需要反复刺激的, 题目理解后的corner case也是需要反复做的. 公司们虽然嘴上说不想把面试弄得跟应试一样, 但是身体上却很老实…
  3. System Design网上的资料很多, 面试起来感觉还是蛮看运气的, 比如我准备了很多large scale的东西最后面试聊的根本不沾边, 很难准备, 但是即使这样也不能掉以轻心, 平时没事抽午饭时间看看资料, 多总结多记笔记会很有帮助.
  4. 除了以上两点, 对于自己过去的project也要__十分__熟悉, 每一个细节都要分析到位, 为什么project用了这个tech, 好处坏处, 有没有alternative way, 重新做会不会继续用这种方法, 有没有提升空间都要提前演练好. 对于project甚至简历上的每一个key word都不能放过. 大致可以参见我个人的总结
  5. 对于CS专业知识还有强项语言的知识一定要把握住. 如果java不是强项语言, 最好再稍微准备下java的非常基础的知识, 因为java太火太基础了, 有些公司会默认java的基础知识大家都会.
    • CS的专业知识可以参见Knowledge, 这里只是列举了一些基本的.
    • 强项语言的知识就更细了, 我是做Python的, yield, generator 这种东西必须懂. 也可参见Knowledge
    • 做后端得稍微懂点基本数据库操作, 做前端的javascript closure, html, css什么的得看看. Full stack的比如我, 呵呵就得都看看了…
    • 基础的OS应该是默认前后端都得知道些的, 但是后端的更加需要知道一点.
  6. Behavior question必须准备, 要不你会被问的很恶心的.
  7. 每次面试完之后记录面经, 回忆自己哪里做的不好, 哪里卡壳, 尤其是behavior question. 做错的题不会的题一定要搞懂, 这里跟高考没区别.
  8. 跪了的公司不要多留恋, 继续下一家. 想着他们不要我是他们的损失的同时, 也要总结经验教训, 每次面试都要有所收获.
  9. 平时多多整理自己总结的东西, 最好还是弄成电子版的, 易读易修改, 防止重复劳动.
  10. 这个是我自己的方法, 弄个录音笔(用电脑也能录其实), 买个耳机分线器, 电话面试的时候可以录音(不同州的法律是不同的, 纽约州允许未告知对方的情况下电话录音, 我可不负法律责任哟), 只作为自己分析错误提升自己用. 二面或者onsite前听听之前面试, 注意下面试官对公司, team的介绍, 非常有用, 尤其是小公司.
  11. 面试之前做好公司background check, 如果有面试官的名字提前Linkedin查好, 准备好对应他职位的问题, 要给人一种很积极, 很了解对方公司的感(cuo)觉(jue).
    • Background check 包括公司规模, 历史, 主要产品, 如何盈利之类的.
    • 见人说人话, 见鬼说鬼话. 对HR就问general的问题, 比如Interview Process之类的(别傻呵呵让HR介绍公司, 这都是自己应该提前查好的), 对engineer就问些team, project问题.
  12. 平时没事可以来版上看看实事和面经, 了解了解就业情况. 这里有很多面经和refer, 大家人都很好, 互相帮助.

至于这个Repository, 很多总结的东西大家看到的蓝色的都是可点击的link, 点进去会有更多帮助. 上面的几个蓝的都是可点的.

如果要搜题目的话, 可以点这里, ctrl+f搜索就行了. 序号152之后的题目都不是leetcode之外的题目, 有些是群里或者版上讨论的内容, 有些是实际我的面经.

暂时就只想到这么多, 有问题可以跟我联系, 大家一起讨论, 一起进步.

2014/10/11