首页 > 【Java】【准备】没有后端项目经验的我是如何进字节跳动的?
头像
Maxinxx
编辑于 2021-08-18 14:56
+ 关注

【Java】【准备】没有后端项目经验的我是如何进字节跳动的?

如果你会Java,但是没有大厂的后端实习经验,请仔细阅读本帖。在战略篇部分,相信会给你进入大厂的新思路。

写在前面

楼主去年拿了字节跳动客户端开发的offer,秋招的时候只准备了Java,没有任何客户端开发经验。由于字节的客户端零基础也可以,所以凭借Java和计算机基础进了字节,圆了自己的大厂梦。由于秋招在牛客上得到很多帮助,所以赶在秋招刚刚开始,特来详述Java岗位准备过程,回馈广大牛友~~

打个广告

心动客户端岗位的同学请看⬇️
字节跳动校招内推码: J2VQUUG
投递链接: https://people.bytedance.net/hire/referral/position/campus?job_post_id=6994430134783887629&type=2
或把简历发送到邮箱:maxin.0196@bytedance.com,标注你想投的岗位哦~
(熟悉Java投Android,熟悉c++投iOS)
无需客户端经验,计算机基础扎实就可以。大家可以试试看哦~

【战略篇】秋招回顾——我进字节跳动的缘由

楼主非计算机出身,学控制的(捂脸),实验室是做算法的,而且楼主是两年制专硕,研一暑假就开始找工作,所以完全没有实习时间。

楼主的Java也是自学的,秋招主要投的岗位是服务端,但是由于楼主没有实习经验,大厂的服务端又是神仙打架,所以楼主在这方面还是挺吃亏的。面了很多大厂,给我的反馈基本上就是基础挺好,但是实际经验欠缺,所以楼主有进池子的命,没有被捞出来的命(暴风哭泣)。

后来楼主在牛客上看到了客户端部门直推的帖子,看到没有客户端基础也可以投,只要Java/c++和计算机基础好就可以,所以楼主就投了客户端的内推。然后后面就是按部就班地约面试,一共三面。字节的优势真的是进度很快,面完的第二天,如果通过了,就会约下一场的面试时间。三面都通过之后,也是第二天就给了offer call,过了两三天hr就打电话告知薪资等信息了。等大家正式开始秋招之后,就会体验到面完等开奖,一等等一个月的痛苦。这方面字节真的做的挺好的,进度快真的很重要。去年某厂迟迟不给带薪offer,好多同学为了这个厂,拒了很多别的offer,结果这个厂开出来一个大白菜。

总而言之,楼主收到字节客户端的offer之后,又有几个厂开奖给了楼主后端offer,但是结合平台、薪资和以后的发展楼主还是选择了字节跳动。平台和薪资不用多说,其实很多同学纠结客户端以后的发展有天花板什么的,我觉得不用担心,如果你能触碰到这个行业天花板,那你已经成为很厉害很厉害很厉害的人了。来到这边发现,要学的东西真的非常多,而且可以学的方向也非常多,一个好的平台能提供更好的资源和发展方向,这也是我选择来到字节的原因。

【准备篇】客户端的重点在前三项,后端的同学就all了吧

Java
基础:包括面向对象、集合、IO、反射等等,这些东西比较多比较琐碎,但是都需要看到底层原理的程度。
并发:楼主看了《Java 并发编程的艺术》和《实战Java高并发程序设计》,并发这块很重要,好好看juc包,好好理解。
jvm:只推荐一本书《深入理解Java虚拟机》,涵盖了内存管理、gc、类加载、调优工具等等。
数据结构 & 算法
刷《剑指offer》和leetcode,楼主把《剑指offer》刷完了,leetcode刷了不到200题(捂脸)。大家leetcode可以按照类型刷,重点是排序、链表、树、字符串、数组、动态规划、回溯等。要会分析时间空间复杂度哦~字节还是挺看中算法的,大家一定要好好刷题呀~
计算机基础
计算机网络:重点是网络层和应用层,楼主看了一点《图解http》,这部分看博客之类的也可以。
数据库
mysql:crud是最基本的,推荐一本小书《mysql必知必会》,短小精悍。楼主还看了一本书,《MySQL技术内幕 InnoDB存储引擎 第2版》,对于理解索引、事务、锁、存储引擎、主从复制、分库分表、调优等很有帮助。
redis:基本的数据类型、持久化方式、缓存和数据库双写一致性问题、哨兵机制、分布式锁、缓存穿透、缓存雪崩等,后端的同学一定要看(客户端这些就不用看了~疯狂暗示~)
操作系统:楼主看的是视频,因为当初没选这门课,把操作系统整体过了一遍。Java中操作系统个人感觉不是那么重要(不意味着就不用学了嗷!),感觉对c++来说,操作系统相对重要一些。拉出来说一下Linux的常用指令一定要熟悉哦~
其他
设计模式:必看。推荐《大话设计模式》、菜鸟教程等,设计模式可以了解一些常用的,结合Java源码理解这些设计模式的应用,就足够了,没必要全部都看。
消息队列:mq有很多种,楼主的项目用的是rabbitmq,所以学习了rabbitmq的一些机制和原理。mq这部分大家可以了解一下市面上各种mq的特点,然后选择一个重点学习即可。
spring/spring mvc/spring boot & mybatis:这部分的内容就很多了,项目中用到哪个就重点学习哪个。想找后端的同学,要理解到原理那一层,包括AOP、IOC(Bean 的生命周期、作用域等)、事务等;核心组件、处理请求的流程、入口类等关键类的源码最好也能看下;MyBatis的一级和二级缓存机制、分页方式、延迟加载等。
热门技术
这部分楼主没怎么学,但是都是些很热门的技术,学有余力的同学,建议还是多学点,你不会,有人会呀(暴风哭泣)!包括zookeeper/Dubbo/Spring cloud/Elasticsearch等。

写在最后

我认为我的帖子最适合给谁看呢,那就是计算机基础不错,但是因为种种原因没有去大厂实习,但是又很想去大平台发展的(大家也都知道对第一份工作来说平台的重要性)。大厂的后端竞争真的激烈,说是神仙打架也不为过,每次后端都是简历爆炸,没有大厂实习经验真的不占优势,很容易像楼主去年一样,几乎每个厂都能进池子,但就是没有大厂捞。跟我情况比较相似的同学,可以尝试我的思路,试试看字节的客户端开发,比起后端来竞争小很多。

希望大家都有好的运气,考的全会,蒙的全对,冲鸭~~~

全部评论

(21) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐