前言
说说目前自己的情况,目前就是一个准大四的学生,因为大四的课程每周只有一天的课,所以就决定暑假开始实习,做一个打工人。
实习生真的要求基础掌握的要比较好,培训机构那些高大上的技术只是加分项(比如es/mq等等),算法和数据结构以及计算机相关的知识是进入大企业的必须项,小公司更多要求你能干活,大公司看中你的可塑性和学习能力。
我的技术基本都是在b站学那些培训机构的,敲过视频上的分布式项目,包括社交类的、电商类的、企业管理系统类的项目,在校自己也做过小程序,自己敲过vue等等,比不上真正的企业级开发,但是项目经历感觉还是有的,毕竟我只拿3k而已。
第一天情况
第一天,或者第一周,感觉都是比较轻松的;第一天早上就是办理入职,填写各种资料,签实习协议,签保密协议等等,然后去领了笔记本电脑,给我分配了ip,然后安排座位,跟我说了一些最基本的东西,上午大概就这样了。
下午的话就是让我装软件,什么idea、jdk等等,总之就是平时开发时用到的一些工具,装完了大概就看一些项目的介绍文档,大概一天就过去了。
根据带我的大佬描述,这第一周基本都是看文档,看项目,看代码,申请账户,了解业务,大概要下周才会让我去svn拉项目。
第一天还是轻松的,上班得到的钱是劳动所获,而摸鱼才是真正的赚钱。
未来目标
暑期实习的主要想法就是根据自身不足,继续在暑期学习,毕竟这只是一次跳板,是为了在秋招中更好地进入自己喜欢的企业。
在实习中,重点是项目的解决方案:
- 实习公司是如何对框架进行拓展和封装的
- 分布式数据库的分库分表,分片方案是怎么做的
- MQ的分布式系统是怎样的,对比自己敲电商项目时的削峰有什么不一样
- Redis除了做缓存,还有哪些比较具体的用途,是如何跟业务具体融合,如何利用分布式计算机提升服务器整体速度的
- 数据库和缓存的数据一致性是怎么做的,用了什么样的方案
- 分布式事务是怎么做的,用了什么样的方案
- 整体架构如果是我的话,会怎么做,如何在性能和事务提交之间协调
如果想在一个公司中长期发展,就重点熟悉业务,如果只是作为跳板,那么我会去重点熟悉项目内的解决方案。
因为实习生相对比较轻松,时间也比较自由,而且前期会有大量的时间是在培训、了解业务、熟悉文档和代码,所以这也是一段带薪学习的经历。
那么在晚上和周末,我大概会补充这些知识:
- 数据结构和算法(重点)
- 重刷一次JVM,整理好相关的知识点文档,了解这方面的面经
- 学习并发编程,这是跟大佬交流时推荐的
- 数据库性能优化,暑期实习面试时经常被问到,SQL调优,索引调优等等
大概就是这些,时间还是挺紧的,但是为了秋招,还是冲吧。
最后,我觉得吧,不要盲目的去追求新技术,不要掉到新技术的坑去了,也不要认为公司没有采用最新的项目就觉得不值得。要自己去发掘的你能学到什么,值不值的你花两个月、半年、长期呆在这家公司,如果你也是像我这样只是实习,作为一次跳板,自我感觉公司部分技术虽然比较老,但是还是有很多能学的,这样的可以选择继续呆下去。