我在MySQL原厂的那些年都经历了什么?
文章插图
作者介绍
赖铮(Allen Lai) , 前MySQL官方团队成员 , 专注数据库内核开发近二十年 , 先后就职于达梦、Teradata、北大方正以及MySQL InnoDB存储引擎团队 。 是达梦数据库内核 , 方正XML数据库 , 以及MySQL InnoDB的GIS支持 , 透明加密功能的主要开发者 。 现任腾讯TEG云架构平台部数据库团队专家工程师 , 负责腾讯云CDB数据库内核的研发 。
面试
2012年的春天 , 阳光明媚 , 鸟语花香 。 我正在张江一栋橙黄色的大楼里跟我的小伙伴们一起奋力敲打着键盘 , 随着一阵轻柔的电话铃声响起 , 手机屏幕上显示出一个陌生的号码 。
是不是又是骚扰电话?没管它 , 我接着敲自己的键盘 。 但手机一直震动着 , 好像在催促着我 , 我拿起它 。
电话接通了 , 那头传来一个非常轻柔而且职业化的女声 , “你好 , 我是Oracle的招聘顾问Amy , 请问您现在方便吗?…” 。
从此 , 我的职业生涯与MySQL发生了交集 。
Amy告诉我MySQL InnoDB团队有意在中国招聘合适的数据库内核工程师 , 问我有没有兴趣加入 。
我去 , MySQL , the world’s most popular open source database , 邀请我加入?
我想都没想就回答她 , 当然有 , 而且兴趣很大 。
Amy是个非常专业的HR , 她很有效率地安排了我后面的面试事宜 。 怀着一丝忐忑和兴奋 , 我开始了进入MySQL团队的面试 。
- 面试第一轮:InnoDB团队manager Calvin , 是数据库领域的专家 , 早年中科大毕业出国的那批牛人之一(后续的文章我会专门介绍MySQL的牛人们);
- 面试第二轮:InnoDB性能优化专家Innam , 是缓冲池性能优化的作者;
- 面试第三轮:InnoDB大神Marko , 他是InnoDB创始团队成员之一 , 存储引擎技术的大神级专家;
- 面试第四轮:InnoDB架构师Jimmy , 也是数据库内核的全能型专家 , 而且是之前是sybase内核团队的老大 。
印象比较深的有三件事 ,
一个是Innam的口音实在太重 , 加上从遥远的加拿大打过来 , 我英语听力的水平也的确不高 。 所以 , 好多问题都没听懂 , 当时是慌得一批;
另外一个是Marko用google talk问了一个如何发现事务死锁的问题 , 而且打字速度超级快 , 以至于我认为对面是个打字机器 。 直到见到他真人才发现 , 他真的就是一台没有感情的程序机器(其实 , Marko还是很有意思的一个人 , 后面的连载会介绍他的一些趣事);
Jimmy的面试是在一个南京西路的咖啡厅里面进行的 , 两个人似曾相识一般聊了蛮久 。 Jimmy是特别赞的一个人 , 很有亲和力 , 所以整个面试的流程总体感觉比较轻松 , 我也没有刻意准备 , 或许真的是幸运 。
团队
就传统的软件企业来说 , MySQL的团队架构相对比较扁平化 , 层级很少 。 像我这样的基础员工 , 离Oracle的老板Larry Ellison也就隔了五层 。
其中的原因主要是Oracle收购MySQL之后的很长一段时间里 , 基本保留了MySQL团队的原本架构和人员 , 只做了一些简单的接入 。
整个MySQL分成了好几个大的团队 , 有MySQL kernel、MySQL replication、MySQL NDB等等 。 这些大团队里 , 又细分了若干小的团队 , 比如:MySQL kernel团队里面又分优化器、server层、InnoDB、QA等 。
当时 , 我所在的InnoDB团队当时有base在美国的Calvin、Kevin、Jimmy , 芬兰的Marko , 澳大利亚的Sunny , 加拿大的Innam、Michael , 瑞典的Mattias , 印度的Satya , 保加利亚的Vasil , 再加上中国的我 , 总共才十一个人却来自八个不同的国家 , 是一个完全全球化的研发团队 。
团队里的每一个人都是经验丰富的数据库内核程序员 , 比如:Marko是2003年就加入InnoDB的资历最深的大神 , Sunny是日后的InnoDB manager , Kevin也是曾经参与过Falcon存储引擎开发的老将 , Jimmy曾经领导过Sybase的研发团队等等 。
可以跟那么多大佬一起工作 , 实在是一件幸运的事情 。
文章插图
2013 Team meeting in Shanghai
*右起:Jimmy , Yasufumi, Allen, Kevin, Marko, Shaohua, Mattias, Satya, Sunny, Vasil , Aditya, ??, Annamalai, Bin, Michael, ??, Krunal…
工作
在InnoDB工作 , 是一件非常开心的事情 , 因为可以在家上班 。 这对于一个每天需要接送孩子的家长来说 , 是非常难得的福利 。
- pymysql 连接 MySQL 实现简单登录
- mysql 8.0.21 安装配置方法图文教程
- SpringBoot+MyBatis+MySQL读写分离实现
- Mysql不止CRUD,聊聊索引
- 详解mysql执行计划
- 什么是MySQL的执行计划(Explain关键字)?
- LG原厂4K屏,65W反向充电,飞利浦这款显示器适合你吗?
- 设计|MySQL数据克隆的用户权限设计
- 3D打印技术|我在智能制造大会现场丨这位院士的发言,让台下的观众不断举起手机
- MySQL死锁系列-线上死锁问题排查思路