双非本科没有项目经历,如何进入BATJ等一线公司?

640

阅读本文大概需要 6 分钟。

没有项目经历,如何找到大厂实习?这个问题是有读者后台留言问过的,相信这个也是很多人的困惑,希望这篇内容能对你有所帮助。


“基础 + 算法 + 项目 + 进阶 = 好的一线互联网公司offer”

640

1.基础

计算机的基础指的是什么? 


操作系统(进程、线程、调度算法、slect、epoll、poll等) ,计算机网络(三次握手、四次挥手、tcp/ucp区别、为什么是三次握手和四次挥手、状态码、七层模型、https/http等) ,数据库(索引、索引原理、sql优化、B+树、mysql操作语法、数据库引擎区别等),linux(常用操作命令)、 设计模式(单例模式尤其重要、可能也会让你写个工厂模式、观察者模式,反正每个常用模式要自己学会准备一两个手写实例)。


安全方面的知识(DES、RSA、数字签名证书/对称加密、非对称加密) 除了这些通用的以外其它就是加一门语言基础,你投 Java 岗就是 Java 语言基础,C++ 岗就是 C++ 语言基础。


这里说一下Java 语言基础,Java 的话语言基础一般都很通用,之前也发过一些文章,【BATJ面试必会】Java 基础篇 (一)


除了这些就是Java 集合(hashmap hashtable ArrayList LinkedList ConcurrentMap等原理,插入删除更新扩容原理) Java 并发(锁、volatile、reentrantlock、synchronized这些原理以及之间的区别、消费者生存者实例书写)。


640?wx_fmt=jpeg

2.算法


算法的话《剑指offer》这上面的题一定得会做,牛客网有对应的Oj(Online Judge)训练,每一道题最后的目的是要自己5-10分钟内不看任何参考内容不使用任何搜索引擎可以直接手写出来,包括但不限于在纸上、IDE、记事本中等都要做到写出来,这里如果半小时没有思路,建议直接看看别人的题解,我之前也有过Java版的实现《剑指offer》,有需要的也可以参考下66道剑指offer题解附答案


这里《剑指offer》中复杂链表的复制这道题目我阅经无数(经:面经),但没见过这道题目出现在面经中,其它或多或少都出现过,所以如果时间不够,这道题目可以放一放。(PS:希望不要有面试官看到我这篇文章。。。) 


算法进阶:《剑指offer》熟练掌握的情况下,可以去刷leetcode,leetcode这个刷题数量,得自己安排时间了,根据自己的情况灵活投放时间再leetcode上,如果时间不充裕,那么刷完《剑指offer》也是可以应付绝大多数的面试算法。 


可能有些人会问互联网公司出的问题都是《剑指offer》上面的吗?部分公司会出原题,部分公司算法难度的低于《剑指offer》,不一定会出原题,但你要是能熟练掌握上面的算法,那么是举一反三的效果。


640?wx_fmt=jpeg

3.项目

项目的话,个人认为不要做一些烂大街的商城项目,如果实在是时间仓促、没有准备,那也是没有办法的办法,准不能空手上阵,对吧~ 


牛客网叶神的高级项目,向来口碑不错,可以做一下。还有如果你之前有过实习经历/工作经历,也可以当做自己的项目。做完以后对于里面涉及到的技术,比如说redis等,要去学习redis的原理,因为面试管一般喜欢从你的项目的某一个技术开始深入,各种姿势360°无死角追问你,直到你气喘吁吁,发出“嗯,啊,不知道”之类的连续词语之后,才会善罢甘休,所以为了你的体验良好,一定要对你项目中用到的技术做到心中有数。


上面说的redis只是举的一个例子,不要生搬硬套,对应你项目中涉及到的其它技术也是类似的。至于如何深入,可以看相关的技术书籍、可以去搜索涉及到的技术中在面试中出现过的问题,总之,就是自己用心去思考面试官会怎么问你。


我们做完的项目不是做完就完事了,这个是在整个面试过程以及整个求职月等都要不断完善的,哪里不好了及时去修改去完善去调整你在面试中的说辞,实在不会的技术你直接删除掉,灵活一点,活人还能让尿憋死?


这是我之前的一篇项目文章,希望能给各位一点启发。可以作为你面试的项目亮点的文章,不来看看吗?

如何学习JavaEE,项目又该如何做?

640?wx_fmt=jpeg

4.进阶

上面说的内容完全掌握,已经可以拿到一些比较好的互联网的公司的offer,进阶内容的话是在你有余力的情况下,去学习,上面的内容是你在时间不是很充裕的情况下,一定要搞定的东西。 


算法方面的话,如果你有余力,那么去刷个几百道leetcode,可以去深入学习红黑树、平衡树等内容,可以做到手撕红黑树,这个技能很多人没有,在其他情况相同的前提下,你如果会这个,那么你猜猜谁最后笑到最后? 


数据库方面,去学习nosql,也就是redis,了解redis数据结构底层原理等内容。 JavaWeb方面,去学习Spring,目前关于Sqring已经更了两篇,接下来还会更一篇。


去学习分布式、微服务、Spring源码、消息队列、Netty/RocketMQ/Tomcat源码解析等。


640?wx_fmt=jpeg

5.最后

除了上面这些,其它还有就是简历(要内推免简历筛选)、自我介绍(打磨出亮点和自己的熟悉点)、HR面试(求生欲强一些,当一时的舔狗又如何)等也需要上点心,但1-4的内容是主体,是你需要掌握的核心的内容,是内功,张无忌内功深厚,才可以决战光明顶,一人之力单挑七大派!


————  e n d ————

觉得文章不错的,欢迎点在看转发,长按下图关注公众号 程序员乔戈里,收看更多精彩。

640?

今日问题:你认为进入一线公司需要具备什么?欢迎留言

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值