September 16, 2014

Percona is looking for a Perl and Python expert

If you’re a Perl and/or Python expert (preferably both), Percona may have a job for you.

We’re looking to either hire or sponsor significant development efforts for some open-source tools for MySQL, including but not limited to Maatkit and the Master-Master Replication Manager. This could be full-time or part-time, depending on the person and what seems to make the most sense. You can work remotely.

You must already be an expert coder. You don’t have to be a MySQL expert, though it will help if you are at least at an intermediate level with it. You must have proven experience in test-driven development. You will be writing clean, efficient, well-tested code. Your work will be open-source and transparent to the world, and open-source experience is a plus. You can expect expert guidance and help (especially with the MySQL-specific parts), but a significant amount of freedom and autonomy as well.

Send your resume and samples of your work to ‘jobmysql’ at our blog’s domain name.

About Baron Schwartz

Baron is the lead author of High Performance MySQL.
He is a former Percona employee.

Comments

  1. Sent you a message.

  2. Zer4tul says:

    As I know, both of Maatkit and Mmm are writen only in perl. why need a python expert? i think there are a lot of people want to know about this.

  3. Perl’s threading has been problematic for some tools. A lot of the more useful stuff I’ve done has used threading or multi-processing. I am sure a lot of people will disagree with me right away, but I think threading in Perl is pretty bad. Just the fact that it’s been ripped out and redone a couple times is bad enough — it means there’s no backwards compatibility.

  4. Koa McCullough says:

    Baron,

    You may already be aware of this but, just a heads Python also its issues w/ threading. These are mainly due the the fact that there is no native mysql interface and the python interpreter is not truly threaded. Once it drops into a c function python loses all ability to kill a thread. This is partially addressed in python 2.6 with multiprocess which is a module with almost the same api as threading but uses subprocess to run the threads. To me this seems like a very hacked approach to fix the problem since subprocess forks a new process for each thread. This is fine for a small number of threads but, if you are trying to load test or run nagios checks for hundreds of mysql instances you could easily kernel panic the box with that many forks. Until python has a native mysql interface Jython may be a better option.

    Just a few random thoughts on the subject. I hope it saves you guys some of the pain we have experienced.

    That being said there are a number of other good reasons to switch. The biggest is that it is far harder to write unmaintainable code in python. Before all the perl guy get mad at me for this I am not saying that you can’t write maintainable perl, you can, but, you don’t have to. For our environment where a large number of people, many of them being sys admins rather than coders, contribute to the code base this is a very good thing.

    –Koa

  5. Koa, thanks. And now prepare for the flame-war about Perl ;-)

  6. Koa McCullough says:

    *Koa braces for impact*

Speak Your Mind

*