{"componentChunkName":"component---src-templates-story-post-js","path":"/zh/stories/2017-12-08-nine-offers/","result":{"data":{"site":{"siteMetadata":{"title":"LaiOffer","description":"Develop technical knowledge. Improve programming skills. Build your career in software engineering.","url":"https://www.laioffer.com"}},"currentStory":{"edges":[{"node":{"title":"我是如何拿到谷歌/FB/苹果/亚马逊/Uber/LinkedIn等9个大Offer的？","path":"/zh/stories/2017-12-08-nine-offers/","id":"b56b1316-fe26-505f-8a79-b090ccb07747","name":"Chuchu Zhang","contentful_id":"3NjbRQVt68gYKeCscOmkGQ","date":"2017-12-08T12:00-07:00","featured":true,"node_locale":"zh","academicBackground":"UC Berkeley | CS","class":["软件工程师旗舰核心课程"],"offer":["Google","Facebook","LinkedIn","Apple","Uber","Twitter","Bloomberg","Square"],"description":{"description":"参加来offer以来，通过与很多非常优秀的同学和老师切磋，让我打磨出了非常Solid的算法、编程和系统设计知识。等到去面试的时候，已经对自己的水平非常有信心了，拿到9个大公司的Offer不能说是意料之中，但也可算是水到渠成。"},"thumbnail":{"id":"1af3d695-67a4-5a51-bc6b-32165ee89b7f","resolutions":{"width":480,"height":270,"src":"//images.ctfassets.net/04k2xg9gplcj/gON6qYAbD2gkMsE6cqEIS/b06394e317ab84503e965ab160983d39/chuchuzhang-thumbnail.jpg?w=480&h=270&q=50&fit=fill","srcSet":"//images.ctfassets.net/04k2xg9gplcj/gON6qYAbD2gkMsE6cqEIS/b06394e317ab84503e965ab160983d39/chuchuzhang-thumbnail.jpg?w=480&h=270&q=50&fit=fill 1x"}},"thumbnailAlt":"Facebook Office","featuredImage":{"id":"1b09a691-463b-5dc2-87f7-1840dd94a0f3","resolutions":{"width":800,"height":550,"src":"//images.ctfassets.net/04k2xg9gplcj/6kepjxapziEaKcOMCAE8us/a7b3cea0280de397e09c8d4a7d607b39/chuchuzhang-hero.jpg?w=800&h=550&q=50&fit=fill","srcSet":"//images.ctfassets.net/04k2xg9gplcj/6kepjxapziEaKcOMCAE8us/a7b3cea0280de397e09c8d4a7d607b39/chuchuzhang-hero.jpg?w=800&h=550&q=50&fit=fill 1x,\n//images.ctfassets.net/04k2xg9gplcj/6kepjxapziEaKcOMCAE8us/a7b3cea0280de397e09c8d4a7d607b39/chuchuzhang-hero.jpg?w=1200&h=825&q=50&fit=fill 1.5x,\n//images.ctfassets.net/04k2xg9gplcj/6kepjxapziEaKcOMCAE8us/a7b3cea0280de397e09c8d4a7d607b39/chuchuzhang-hero.jpg?w=1600&h=1100&q=50&fit=fill 2x"}},"featuredImageAlt":"Facebook Office","keyTag":null,"body":{"id":"03f37962-f1bb-5c85-8b0a-40ad2dff6913","body":"我从2015年开始参加来offer培训，断断续续到现在已经两年多了。这两年来通过与很多非常优秀的同学和老师切磋，让我**打磨出了非常Solid的算法、编程和系统设计知识。**\n\n等到去面试的时候，已经对自己的水平非常有信心了，拿到9个大公司的Offer不能说是意料之中，但也可算是水到渠成。非常感谢来Offer对我的帮助。\n\n借着这篇文章，我想谈谈这两年找工作的经验和方法，希望能给大家带来一些帮助。\n\n## 大三转专业，求职屡碰壁\n\n我从大三开始转专业学CS，当别人都开始找暑假实习的时候我还在独自啃CS基础课，对面试一点概念也没有。\n\n大三下学期的时候我报名了来offer。一年内，我上了两遍来Offer的课程，但都没有坚持上完。虽然说确实有学校的课业重、实习时间紧的问题，但是最关键的还是求职的觉悟不够，比较贪玩。\n\n由于我上课不认真也没有认真练习算法题，当我大四去找工作的时候，我虽然拿到了大公司的面试机会，但是都以失败告终。在此期间，因为我两遍课程都没有好好上完，我也不好意思和来Offer的老师们联系。\n\n![zhangchuchu-1](//images.ctfassets.net/04k2xg9gplcj/10zWarBs4GQc0GeCA2a24C/3e8976318c019ca163f27eef33c65be0/zhangchuchu-1.jpg)\n\n## 小试牛刀，加入Startup\n\n直到2016年三月，我还是没有拿到正式offer，这时候离毕业只剩两个月了，我开始着急了起来。不得已，我硬着头皮找到了孙老师。孙老师听了我的情况以后很着急，立刻为我安排重新上课。\n\n**这次我终于认真了。**\n\n和很多CS科班的同学一样，刚开始似乎感觉很多知识点学校都学过，但是当我真正跟着孙老师完整地把课上下来，才会有**一种醍醐灌顶，一通百通的感觉。**从基础到提升，我学到了很多。\n\n比如，之前我做算法题目没有什么条理，可上完课之后，我却能清晰地解释出“怎么从brute force的解法开始一步一步优化”、“遇到某一个类型的题目应该从哪入手”等问题。\n\n**在认真听课两个月以后，我终于在5月底拿到了一个startup的offer。**\n\n## 精益求精，拿下9个大公司offer\n\n在公司工作了一段时间以后，我发现自己还是想去一线大公司工作。于是，我又联系了孙老师，并在2017年二月加入了小班。小班和大班相比覆盖的内容都差不多，但是深度却加深了很多。\n\n闫老师不仅把每一道题都讲得非常透彻，而且还会从题目出发，联系不同的知识点，教大家如何从最暴力的解法一步步推导至最优解，以及，怎样分析不同方法的Trade Off等等。\n\n此外，老师不仅仅会教大家如何改善算法，还会教大家怎么弄清楚每一个variable的物理意义，使写出来的代码准确不冗余。\n\n我每一次上课都会忍不住感叹老师的代码又简洁又精巧，不愧是非常有工业界经验的资深工程师。\n\n![zhangchuchu-2](//images.ctfassets.net/04k2xg9gplcj/2cA8kQFZ0gSoUmiAQmmE4I/f0a0bd96f7aac31e211e88f01465e507/zhangchuchu-2.jpg)\n\n我觉得即使不是为了找工作，来Offer的课程也是非常有意义的。**如果你愿意从师于真正的Top Coder、Top Engineer，成为一个具有强大实力的软件工程师，那么你真的应该加入来Offer。**\n\n在上了半年多小班以后，我在今年10月拿到了几个大公司的offer。\n\n## 理解算法和推导，才是最高效的做题方法\n\n我觉得做题应该从基础的题目开始，**来Offer的算法课程和Laicode的题目是最重要的**，做完这些题目，大多数面试中的题目你都能回答了。\n\n做题顺序来说，我觉得最有效的是根据老师上课的进度，及时地完成课上例题和作业，这样能够更好的理解这部分知识点。上小班的时候，我会根据公司的tag和老师上课的进度找相应的题目来做。\n\n**我觉得做题数量不是最要紧的，更重要的是理解算法和推倒的过程**，能够做到举一反三。\n\n**另外，不用一味地追求最优解。**\n\n有的时候最优解不是很intuitive，我会理解次优解，而不是花很长时间在理解最优解上。有一些难的题目比如说DP, 我会先用DFS来做，然后改成DFS + memorization，最后再改成DP。这样对加深理解很有用。\n\n**面试的时候我也经常从次优解开始做，最后优化到最优解。**并不是故意想给面试官一个我没有做过这道题目的印象，而是和面试官讲清楚自己理解和推倒的过程，让他清晰地理解你解决问题的思路。这个过程也在面试中起到加分作用。\n\n另外，**和同学们组成学习小组也是一个非常好的方法。**\n\n和大家一起讨论能够锻炼自己表述、解释和总结代码的能力，也能够增加学习的积极性。\n\n## 如何准备面试\n\n除了算法之外，我觉得对于面试来说，**对自己projects的了解和平时知识的积累很重要。**\n\n面试的时候，面试官会问很多关于以前projects的问题。所以一定要想清楚，为什么要做这个project，为什么要选用某一样technology而不是别的alternative。弄清楚一样technology和alternative之间的trade off，对于提高system design的能力也很有帮助。\n\n与此同时**平时的积累也很重要。**\n\n比如说我比较喜欢读一些**Tech Blog**，平时的工作中用到的工具我会读Document去弄清楚Architecture。另外我喜欢参加一些**Tech Conference和Tech Talk**, 这些不但是很好的学习机会，而且是很好Networking的机会，能够近距离的遇到一些Recruiters和Engineers。\n\n![zhangchuchu-4](//images.ctfassets.net/04k2xg9gplcj/2jAIVoYOu0oymI2cqM4GCK/dc658d75a312d23815a3eadc9259afe2/zhangchuchu-4.jpg)\n\n比如说，我拿到LinkedIn的面试就是因为我去参加了Kafka Summit并且和LinkedIn的Recruiter聊了天。\n\n这些平时的积累在面试中发挥出来不但能够帮助System Design，而且**会让面试官觉得你对新的Technology很感兴趣，是一个很Passionate的工程师。**\n\n## 写在最后\n\n最后我想告诉大家的是，不要因为一时的挫折而放弃或者灰心。\n\n在我找到第一份工作之前，我也曾在面试中被人拒绝无数次。当时，身边的同学都拿到了大公司的Offer，而我却连工作也没有。\n\n我也会Depressed，会暴饮暴食长胖，会每天都觉得自己一事无成……\n\n可是，你看我现在，经过一年的学习也拿到了想要的Offer。\n\n所以，只要付出时间和努力，最后都会变好的。\n\n当然，这一切都少不了孙老师、闫老师和Jack老师对我的帮助，我真的非常感激。\n\n最后，希望大家都能找到自己喜欢的工作。\n\n![zhangchuchu-5](//images.ctfassets.net/04k2xg9gplcj/gHCYTwdq9imMuqMEMeIqO/197cccf7aa1e94fa1d100edaea50a09e/zhangchuchu-5.JPG)"}}}]}},"pageContext":{"isCreatedByStatefulCreatePages":false,"langKey":"zh","pagePath":"/zh/stories/2017-12-08-nine-offers/"}}}