众所周知,简历上“了解=听过名字;熟悉=知道是啥;熟练=用过;精通=做过东西;
前两天一个关系比较密切的粉丝问我,为什么自己身为中山大学计算机专业硕士,投出简历却如石沉大海,没有人邀他面试?我让他把简历发来看看。
他发来简历后让我大跌眼镜,好家伙,10个技术,8个“精通”???
大家看看他的简历是怎么写的:
熟练掌握计算机网络、数据结构、算法、操作系统等课内基础知识;
熟悉Linux系统;
精通Java 基础知识;
精通JVM 虚拟机(Java内存区域、虚拟机垃圾算法、虚拟垃圾收集器、JVM内存管理)
精通高并发、高可用、高性能系统开发;
精通Spring、Hibernate、Ajax、Mybatis等;
精通SSH 整合、SSM 整合、 SOA 架构;
精通Dubbo;
精通Zookeeper;
精通常见消息队列;
精通MySQL常见优化手段;
精通Spring Boot +Spring Cloud +Docker:;
熟练掌握Hadoop 生态相关技术;
我有点哭笑不得:“你简历是认真的吗?”
他说:“肯定是啊,这些技术我都用过啊。”
我:“用过不能叫精通啊。你知道啥是精通吗?”
他:“我感觉我确实精通呀…同学遇到问题都是我帮他们解决的。”
我:“你可能对精通有误解…那我就问问你MySQL,你知道在MySQL 5.6中,对索引做了哪些优化吗?”
他:“???我们在学校用的是5.5啊。”
我:“行吧…你能说说B+树和B树在查询上的区别吗?”
他:“B+tree更快点儿?”
我:“还有呢?”
他:“没了呀…”
我:“这你怎么敢在简历上写“精通”啊???”
大厂面试都会问什么?大家都知道要问Redis、并发编程、JVM、源码等等,很容易被忽略的一个点就是MySQL优化。对于程序员来说,去任何一家公司面试,数据库是避不开的。开发人员对MySQL掌握的越深入,你能做的事情就越多。
完成业务功能,要懂基本的Sql语句。
做性能优化,要懂索引,懂引擎。
做分库分表,要懂主从,懂读写分离。
做安全,要懂权限,懂备份,懂日志。
做云数据库,要懂源码,懂瓶颈。很多同学,被问到sql优化,张口就是索引、执行计划、分表分库,这就有点小题大做。你首先要知道哪些地方需要优化?优化就是要找出运行最慢的地方,搞定;把最慢的sql语句找到,搞定!如何找到最慢的sql语句?可以从慢查询日志入手。很多程序员没做过数据库调优,或者sql调优。如果你不熟MySQL,大公司你肯定进不了,小公司你进去了也吃不开。
MySQL查询过程
阿里等大厂很看重底层知识,为了让大家可以熟练掌握甚至“精通”MySQL优化,我特意将自己这些年对MySQL的总结整理了出来(学习笔记及面试专题)
大厂必问--索引底层详剖
1、索引的本质是什么?
2、MySQL中索引使用哪些数据结构?
3、索引使用B+Tree的数据结构,如何存放在磁盘中?
4、如何通过离散性,最左匹配,回表等原则分析优秀的索引?
如何全盘的考虑MySQL性能优化?
1、什么是MySQL慢查询?
2、执行计划我们要看什么?如何与原理结合了解
3、实战演示:如何系统的优化SQL的执行速度
学完这些,你将会获得什么?
1、各种MySQL优化技巧及实战经验
让你在日常工作效率事半功倍,面试时薪资轻松翻倍
2、MySQL优化技巧及2020年Java最新最全的大厂面试真题