所周知,简历上“了解=听过名字;熟悉=知道是啥;熟练=用过;精通=做过东西”。最近在面试,我现在十分后悔在简历上写了“精通”二字…
先给大家看看我简历上的技能清单:
- 有扎实的java基础,熟悉基于Web应用的Java编程,掌握MVC模式下的B/S开发;
- 熟练掌握Java EE、缓存、消息队列、索引等技术;
- 熟练掌握Dubbo分布式架构,Zookeeper注册中心,ActiveMQ服务中间件以及Nginx代理服务器的使用;
- 熟练掌握Redis非关系型数据库,shiro权限,activiti工作流技术;
- 熟悉主流的微服务框架,如Spring Cloud、Spring Boot等,并了解其原理;
- 精通性能调优。
面试官刚看完我的简历,就露出了诡异的笑容。(我当时就觉得不太妙)
面试官:“先简单介绍一下自己吧。”
我:“您好!我是工作时长达5年的Java开发者...”
面试官:“打断一下,可你才25岁?20岁就开始工作啦?”
我:“大学本科毕业,加班时长算两年。”
面试官:“行,你继续。”
我:“喜欢唱、跳、rap,写bug!之前在一家初创医疗互联网公司,老板立完新项目后1个月就要求见到上线成品!这种压迫下产品的体验可想而知,我无法忍受自己做出来的产品像一坨X一样?所以我选择了闪人…”
面试官点点头,问了我数据库、消息队列、Spring等等这些基础。
他突然笑了:“我看到你在简历中自称是’热门技术的钻研者’、’追求极致性能的偏执者’?”
我虎躯一震,接道:“我认为一款产品最重要、最直观的就是性能,诸如阿里、新浪微博等这样的大厂都时刻都面临着性能的挑战,所以这些年来对于性能优化这块研究了很多…”
面试官:“很棒!和我们公司的理念相合,既然你简历精通这一块,那我们就来聊聊吧!”
我,微微颔首,示意尽管放马过来。
面:“能不能分别说说Thread、BIO/NIO与OS的内核源码?”
我:“内核源码?”
面:“说不出来没事儿,
Redis一主多从的架构解决啥问题的?
Redis的持久化策略有哪些?区别是啥?
如果对Redis数据安全较高的场景,建议的主从持久化策略设置方式?”
我:“???不是说一步步来吗?”
面试官,微微一笑:“少年,这你简历上怎么敢写精通啊?”
我:“……”
面:“你有什么问题要问我吗?”
我:“我没什么问题了…”
面试官:“好,那你先回去等通知吧!”
性能优化在现在的开发中尤为重要,是体现你开发的核心竞争力~
关于性能调优的一些面试题
Redis
Memcached
ActiveMQ
Kafka
Nginx
RabbitMQ
等等...
有很多程序员没有自身的核心竞争力,就是因为他们只会写业务代码,代码写出来,有多少的承载量?有多大的并发量?就不管了。
而掌握性能优化,做到真正的精通,这才是体现自己核心竞争力的关键!