前言
文章标题我有点夸大,但是我要声明:不管最后能不能去阿里,如果我们的个人技术能力能达到阿里的面试水准,我相信大多数公司都会给你发offer。所以阿里面试是我的一个目标与进步的动力。所以这也是我为什么从写一些项目坑转到写一些Java的类,包,库的一些底层实现原理以及面试的原因。
文章最后我会写一些面试的技术思路,我知道关于面试一直都是热门话题,有非常多的人写甚至抄袭,不过我保证我都是原创,我相信聪明的小伙伴应该都发现了文章有一些词的表述都用到了江苏连云港的方言。今后我将持续努力,钻研技术的同时将自己的收获通过写博客文章分享给你们。
激励
程序员这个行业我知道是非常崩溃的,因为一个问题有可能搞一周甚至一个月都没有进展,比如我们公司的算法工程师!所以开始激励环节,让我们充满正能量!
- 你要去相信,现在你写下的每一字每一句,都是在勾画和描绘那个你所心驰神往的生活做准备和铺垫。
- 若自己不做出—点样子,人家想拉你—把都不知你的手在哪里。
- 永远都不要放弃自己,勇往直前,直至成功!
- 逆风的方向,更适合飞翔,我不怕千万人阻挡,只怕自己投降。
- 相信人生有挫折没有失败,相信生命的质量来自决不妥协的信念。
2020总结
- 1月初那会是大二的寒假因为疫情没有开学,因为我家里就是超市所以我独立开发了ERP超市系统+MySQL数据结构设计,使我对一个系统的设计以及框架部署进一步的理解,也让我明白了全局的重要性。
2. 2-5月份主要就是一个学校的网上教学课程。主要学习一些前端Vue,后端SpringMvc,MyBatis,自学了SpringBoot以及Linux部署,大一暑假的时候我就自己开发了一套个人学习资料库用于整理一些自己常用的工具,函数,资源等。当时所用到的技术栈是最基本的jsp开发,用的宝塔面板部署的服务。随着懂了一些Vue,SpringBoot,Mybatis,Linux的基础知识。我把网站全部推倒重构,采用当前热门的前后端分离技术,前端Vue,后端SpringBoot+Mybatis,利用xshell远程终端操作部署网站服务。
3. 6月份主要就是忙学校的各种提交材料,比如申请软件著作权。在申请软件著作权的时候优化升级了代码的质量与后台功能。
4. 7-8月份主要就是大二暑假实习历练。因为我意识到项目深度的问题,所以我在一家公司叫常州华岱科技有限公司实习。在这个地方也让我学会了一些知识用法以及设计思维。比如事件通知,委托触发,单例模式等等,还有一些和同事沟通的一些技术技巧。一共两个月,在第二个月的时候因为学校临时开学导致我不得不离职,最后被这个公司坑了1000块钱,因为绩效为0,在这里我已经不想说啥了过去就过去吧!好坑!
5. 9-11月份主要就是学校的毕业设计以及电子信息设计大赛的事情了。印象最让我深刻的是我的搭档还有工作室的老师熬夜搞代码的时候。我们做的是机器视觉,扫描面板,分析上面的图形,周长,面积数据等等。这个是比较简单的但是牵涉到了光线投影问题我们想了很多处理方式。也让我收获了很多,算法真的挺难的!下图就是我们通宵了一天一夜第二天早上赶到比赛现场的样子(比较劳累),最左面是我,最右面是我的下位机搭档,最中间是我们带的学弟负责测试工作。比赛结果比较理想!
- 11-12月主要就是忙着入职公司以及接单的事情。下图是我们公司的环境,几乎每天我都是第二个来的,因为我公司是C#工业控制,我比较喜欢Java并发流量这块所以我正在学习补一些Java基础底层。我接的是一个国外的项目,我负责整个项目的一切工作(线上超市订货系统)。一共四套系统 PC管理,Android,IOS,微信小程序。一天的流水大概7万多的人民币。目前还没有开发完!
- 12月底以及2021年1月主要就是忙:(CSDN广度深度基础,微信公众号主要更新基础底层知识)
- 公司的工作
- Java的基础底层学习
- Java学习的同时通过博客分享自己的收获
- 优化个人网站提高收录,
- 国外项目的开发
- 学习英语交流
- 考软件设计师证书
- 学车驾照
- 开创副业
2021展望
- 学习Java基础的底层知识,例如ARP协议,Dubbo,ZeroMQ,MyBatis,Redis,RabbitMQ,Zookeeper,SpringBoot,JVM,Netty,GC回收,MySQL性能调优,缓存等。
- 刷算法题
- 特斯拉model3
- 还助学贷款以及花呗(花呗不多)
- 订婚(可能)
面试技巧流程
自我介绍什么的我就不说了,只说一下技术,拿Socket举例。
常见的小白场景就是
面试官:简单的介绍一下Socket 应聘人:你好面试官,不好意思我没用过,好像是通信用的。
常见的初级场景就是。
面试官:简单的介绍一下Socket 应聘人:你好面试官,Socket是一个安全套接字,用于通信。一个发送点一个接收点,有多种通信协议比如UDP/TCP,TCP是三次握手,UDP是不用握手的。UDP比TCP更高效。如果需要交互判断的选择TCP,如果不需要交互判断的选择UDP。
以上没有加分项,或许你可以这样,中级场景
面试官:简单的介绍一下Socket 应聘人:你好面试官,Socket我了解的是: A=>安全套接字,要想聊Socket就要深入计算机底层我们可以从OSI7层模型说起,描述每一层的作用。 B=>TCP是什么,告诉面试官为什么是面向连接的可靠的传输协议。TCP三次握手都做了哪些事情比如Syn包,Ack包,Syn+Ack包。 C=> 通过交互流程可以展开ddos简单介绍一下表明你懂的比较多。你是个有干货的人,你是个对技术敏感的人。乐于学习的人
告诉面试官Socket在每一层都做了什么以及Socket通信的时候是如何和外界联系的【加分项】