crossoverJie / JCSprout

👨‍🎓 Java Core Sprout : basic, concurrent, algorithm
https://crossoverjie.top/JCSprout
MIT License
27.07k stars 7.09k forks source link

从 JCSprout 中获得帮助甚至拿到 offer 的同学请留下相关信息或者是建议 #109

Open crossoverJie opened 5 years ago

crossoverJie commented 5 years ago

建议:多来点干货。

happy1yu commented 5 years ago

crackh 目前拿到了小红书、华为的Offer,感谢阿杰的这个项目,其实算法主要还是刷一下leetcode,基础知识看阿杰的JCSprout查漏补缺,当然牛客也是一个很好的去处,这些面经可以帮助你快速入门。仅仅看会这些是远远不够的,主要还是自己的理解,不然面试官会一眼看穿你只是死记硬背哦。

rebornyp commented 5 years ago

杰神的JCSprout陪伴了我找工作的前前后后两个多月,并助我最终顺利拿下阿里和头条两个offer,在此表示衷心的感激~~

本来对大厂真的是望而生畏的,但杰哥的那篇“一个渣硕的阿里之路”的博客极大的鼓舞了我这个渣硕,于是最后得以如愿。非科班java后台开发岗,虽然要面的知识点有很多,但就我的经历来说,首先最重要的就是你的算法底子得过得去,就是刷够了题,能做到碰到一般的面试题你都马上可以有思路,知道该用什么算法解决,触类旁通,这就差不多了。leetcode刷了200多道吧,直到后面付费就不刷了,我觉得足够了。剑指offer刷完(牛客网),我还去刷了PAT的100多道题,因为有了春季pat考试的经历让我侥幸一次就过了头条的在线笔试,我周围的人算法好的不少,但临场做题调bug的能力他们都是在秋招的时候才慢慢具备,这就慢了些,而且他们只在leetcode上是体会不到在PAT上写输入输出时优化做出的挣扎和痛苦(捡回了大一学的c语言也是件好事,更关键是秋招笔试都要求自己写输入输出....)。相信你刷完了这么多题(其实用不了这么多,可以就不会的专门去练习),你肯定也会有自己的心得和体会,再碰到面试题肯定能得心应手了(我身边至今还有不少因为刷题不够而仍在补算法的,这个真的不是速成的,如果你理解力够好的话当我没说)。我想很多人一看到要刷这么多题都望而却步了,说句不负责任的话,我真正开始对刷过的题有融会贯通的感觉是从刷完剑指offer开始的,我个人觉得那里的所有题型思想什么的都领会了以后,应付国内大厂不成问题,所以不想那么耗费时间的刷题,只需要刷这个就够了(不负责任是因为自己是最后才刷的剑指这套题,所以很多拓展的题型在leetcode已经熟稔于心了,所以...)。

再就是java知识的积累,这个不多说,相信从业者都知道怎么去学习(善用浏览器)。日积月累以后,当要面试时,无非抓一下重点,比如大厂爱问的主要是那几样:jvm并发框架(结合你的项目)。我春招实习因为投过阿里(都一面悲剧),所以对于面试官一上来要问哪些问题基本摸得算是比较透彻了,真的是千篇一律的套路,基本都是在考察你在你会的知识点的掌握程度,当然你有这样的经历多去和面试官打交道,每一次电话都是一次宝贵的学习机会。比如我一般都会录音,不会的及时后面会再去搞明白,这样你每次都会有所成长。这里我真的想再三强调一下,有一个和你一起准备面试的小伙伴是如何的重要,你可以每天和他讨论算法,java知识点,不会的或者会的都互相出题,这样不了解的知识了解了再讲出来不仅学到了,讲的人也记忆的更牢固也可以查漏补缺,用古人的话说就是学然后知不足,教然后知困。然后就是提前多看面经,牛客网上的很多热乎乎的帖子,CSDN上的博客等,再有比如杰哥这个的repo总结的这么好,当时一看到我就赶紧fork掉,觉得只要搞明白80%,自己也可以像大佬那样有资格爽拒阿里,真的都很不错,基本面试常考的点都覆盖了。有时候我看书有其他更复杂知识点考虑要不要记住时,看到这个项目没有,我也就安心的跳过(因为时间有限,不可能面面俱到都掌握),当时比较系统的fork的两个repo一个是杰神的这个java-interview(逢人安利,也就是现在的JCSprout),还一个就是cyc2018的一个repo,里面的算法思想总结的非常不错。我至今都记得为了应付头条视频面可能会要手撕LRU,把杰神的那个那篇lru的博文反复咀嚼,虽然最后让我手撕哈夫曼树而并不会只凭记忆写出其中的贪心建树部分。

除了掌握这些知识点外,最后一个,就是一个不需要多高级专业但拿得出手的项目,我真的是5月份才开始接触spring的,边学边用,所以对于内部很多东西我也没那么懂(比如看源码之类的不现实也没时间),但我只是把这些技术如SpringMVCSpringbootDruidRabbitMQRedis什么的,学会了怎么用以后,快速应用到我那个传统的(servlet,jsp,javabean...)的CRUD小项目里,去实现一点小需求,然后在简历上用我们实验室的一个大项目包装一下,顺便也把这些技术都吹嘘一遍,仅此而已。面试官不可能面面俱到的问你所有的技术细节,你只要能把这个项目说清楚喽,然后说一两点技术上比较出彩的地方,基本上时间也就差不多了。

说了这么多好像内容很多,但可能对于科班来说,这些可能都是不值一提的,比自己付出多的也大有人在。还有面试真的特别看运气,所以没去到心仪公司的,还是佛性看待的好,凡事有一利必有一弊,古人云塞翁失马诚不我欺(这个暑假秋招踏坑起就一直在印证这句至理哲言)。而自己真的很幸运,能够赶上自己心仪阿里的末班车,其中的幸运之由在此不表了。所思所想暂时就这些,也许现在秋招已经快结束,但春招以及以后的所有机会,相信只要做好了准备,你一定可以得偿所愿的。

祝每个看过这个repo的人都拿到自己满意的offer!