Interview with Adam Donnison, web developer at MySQL.com
Hi Adam, thanks for allowing me to ask you some questions. Please tell us a bit about yourself, what is your background? Where are you located?
Adam: I've been in IT now for more than a quarter of a century, variously as a programmer, systems analyst, database admin and consultant. The first job I had was writing software for cash registers in assembler, and back end software in C and COBOL on UNIX. I'm active in a number of open source projects and am the admin of dotProject. I now work in the web team which is responsible for maintaining the mysql.com web sites.
I currently live in a rural area in Victoria, Australia, about 200km north west from the state capital, Melbourne.
How and when did you join the MySQL team (aka the Sun Database Group)?
Adam: I joined MySQL as a web developer in October 2005, just before the GA release of MySQL 5.0. Arjen Lentz, who was then in the Community Team, had posted an ad on an open source list I was subscribed to. I thought it sounded like a great job and applied.
What team are you in and what is your role? What tasks are you responsible for?
Adam: I'm in the Web Team, which is part of the Marketing department. Although my job title is "Web Developer" I also do most of the system administration on the two dozen or so servers our team uses. My main role is developing new core code and tools to assist our team in managing and deploying the mysql.com websites.
How does it feel like working for a virtual organization? Do you see any advantages/disadvantages in this working environment?
Adam: To be honest, I took the job because it was a virtual organization. I live a long way from the business centre of my state, and have since moved further out. The virtual nature means as long as I have a decent internet connection I can work. I've resolved issues on our sites from some very interesting places, like the Green Room at the Melbourne Writers Festival, the carpark of Lake Tahoe, and countless coffee shops. I often have to apologise for the rooster crowing in the background when I'm on conference calls. Gets people talking though!
What does your workplace look like? What do you seen when you look out the window?
Adam: As I mentioned I've recently moved out to a rural area, so my window faces out to the paddock to the north of the house. In the distance I can see the neighbour's sheep and some cows. On the other side I can see a vineyard which is currently in full leaf (November is spring time in Australia). There are parrots in the gum trees that shade the house, and superb wrens trying to get insects closer to the ground. I can hear the cry of ravens, the warbling song of magpies and the occasional duck, plover and egret out on the dam.
While I can't see Jackie (the rooster), I can certainly hear him. When we first got him as a chick we thought it was going to be a hen, but when it became clear it was a rooster we called him "Auntie Jack" or Jackie for short. You have to be Australian to understand that I think.
Please tell us a bit about your work. What are your currently working on?
Adam: Currently I'm working on closer integration between our (MySQL) systems and the main Sun systems. This includes user accounts and the like, marketing systems, and all of the other "glue" that holds a website together.
Have you been involved in the creation of the MySQL 5.1 release? How did you contribute to it?
Adam: The mysql.com website runs on 5.1, and we provide quality feedback to the engineers. We have found at least two serious bugs in the product over the last 18 months and provided information to allow them to be fixed.
We made a decision very early on that the mysql.com website was an excellent test bed for our products, and as soon as products reach a level of maturity we are comfortable with we deploy on the website. That tipping point is usually when the product comes out of alpha and is in beta or in some cases release candidate.
How long have you been using 5.1 on the mysql.com web sites? How easy was the migration and was there anything notable?
Adam: We started using MySQL in full production in mid June 2007, so it is almost 18 months. We had been running a staging server on 5.1 since 5.1.11.
There were very few problems in the migration, considering we were using beta software. In fact I don't recall having to change any of the queries we were using specifically for the 5.0 to 5.1 migration. It was a very clean cutover.
What other technologies do you use on the mysql.com web sites? What are your "hidden ingredients" for scaling?
Adam: One of the main things we did was write a database abstraction layer that allows us to load balance across multiple slaves. Even after going to Zend Framework for our main code base, we kept our own db layer. The layer provides us with the multi-slave code as well as supporting memcached for operations that are replication sensitive. In fact we make use of memcached a lot as it allows us to get around replication lag issues as well as providing high-performance caching.
We have recently started trialling the Query Analyzer and I must say I'm really impressed. In fact I really love it. It is the best thing to come out of MySQL since, well, MySQL! Within minutes of installing it I had identified queries that were under-performing and fixed them. This is important to us, as better performing queries means lower load on the database which in turn means a better performing site that can handle higher hit counts.
What do you enjoy most about your job?
Adam: It is hard to limit that to just one thing. Probably the people I work with. We have a very talented and motivated team that constantly comes up with amazing results. And that is just the web team! There are some really great people in all teams, and I'm constantly amazed at what we have achieved in MySQL and now within Sun.
If I could have another bite at the cherry, the other thing I really enjoy is getting to trial some really exciting software before most other people. You really can't beat that.
I must admit that I have to agree to your last point - it's really exciting to learn more about all the great products that Sun is working on. Thanks a lot for your time, Adam! Keep up the good work.
This interview was performed in November, 2008