こんにちは。コネクト支援チームの風穴(かざあな)です。
この度サイボウズでは、GMOメディア株式会社とコンサルティング業務委託契約を締結させていただき、MySQLエキスパートのyoku0825さんに、いろいろと相談に乗って頂けることになりました。
MySQLについて検索したことがあるエンジニアなら、yoku0825さんのブログ「日々の覚書」のお世話になったことがない人はいないでしょう。それぐらいポピュラーなブログで、日本語で読めるMySQLの技術情報を長年発信し続けているのがyoku0825さんです。
ということで、Garoonプログラマの杉山くんと一緒に、yoku0825さんにお話を伺ってみました。
yoku0825さんのお仕事
──(風穴):普段、どんなお仕事をされてるのですか?
yoku0825さん(以下、敬称略):GMOメディアという、BtoC向けのWebサービスを作っている会社で、いろんなサービスのデータベースの部分だけを専門に担当するチームに所属しています。サービスによって使っている技術が異なっていたりするのですが、データベースとしてMySQLを使っているものは私が担当しています。
──:ということは、結構お忙しそうですね。
yoku0825:何事も起こらなければ、そうでもないんですけどね(笑)。「ALTER TABLEを叩いてください」とか、それぐらいだったらいいんですけど。
杉山:分かります(しみじみ)。
──そんなお忙しい中で、あのブログも書かれていて……。
yoku0825:そういえば私のブログに、たまにリファラがサイボウズからのアクセスが集中的に来ることがあるんですけど、さっき社内システム(編注:kintone)の使い方を見せてもらって分かりました。なるほど、こういう仕組みでアクセスしてくるのね。
杉山:そうなんです。社内勉強会なんかがあると、社内のkintoneにそれ用の実況スレッドが用意され、そこにみんなで実況ツイートみたいに書き込んでいくというのをよくやります。そこに参考資料としてブログ記事のURLが共有されると、みんなこぞってアクセスしちゃうんですよ。Twitterでも「サイボウズから狙われてるらしい」みたいに呟かれることがあります。
──GMOメディアに入社されてからは、どれぐらいになります?
yoku0825:この12月で7年になります。入社するときから、MySQL以外はやらないぞ、と決めてました。私を採用した人も「そうは言っても、目の前にあったらOracleの面倒も見てくれるだろう」と考えたと思うんですけど、ホントにまったくやらなくて。
──すごいですね。
yoku0825:「OracleのBronzeとか取らないの?」と言われても、「取りません!(キッパリ)」と(笑)。
──yoku0825さんの働き方ですが、毎日通勤されてます?
yoku0825:そうですね。最近は毎日通勤してますね。週のうち1日はサイボウズさん、もう1日は別の会社さんに行ってまして、そのときには会社にも立ち寄るようにしてます。もともとは週2日ぐらい自宅からリモートでやってたりしたのですが。
──お仕事自体は、リモートからでもできるんですよね?
yoku0825:はい、そうです。私がいじるモノはデータセンターにあるので、会社に行こうがどこにいようが、そもそもがリモートというか。
──確かに!(笑) ちなみに、yoku0825さんご自身は、働く場所を選びたいタイプですか? サイボウズはかなり自由な働き方ができるのですが、「自宅だと集中できない」「オフィスが良い」と言って通勤する人も結構います。
yoku0825:どちらかというと場所は選ばないほうですね。自宅でも大丈夫です。子どもが夏休みのときはちょっと厳しいですが。ドタン、バタン、アー、みたいな感じなので(笑)。
──ご自宅でもお仕事されてると、その姿をお子さんも見てるんですよね?
yoku0825:仕事で「MySQLをしてる」というのは知ってるみたいで、黒い画面で何かしてる……と思ってるようです。何かあると緊急対応することもあるので、家族と出かけたりするときでも常にPCは担いで行ってます。子どもが物心つく頃からずっとそうなので、仕事の携帯電話が鳴って「あ、ごめん、アラート」って言うと、みんなスーッと波が引くように離れていきます。
──すごい、よく訓練されてる!(笑)
yoku0825:ここから父親は構ってくれなくなる、ここから夫は手伝わなくなる、というのを学習しちゃってるみたいです。
──趣味とか、仕事以外で何かされてることってありますか?
yoku0825:基本的に昼寝は大好きです。もちろん自分の布団がいいんですけど、床でも寝ますし、寝っ転がれればどこでも(笑)。
出会いはTwitter
──サイボウズから声がかかったのは、どういう経緯で?
yoku0825:ymmtさんからですね。
──それはTwitterのDMで?
yoku0825:そうです。
──お互いにフォローしてたんですね。
yoku0825:はい。ymmtさんは以前、新しめのDebianのGCCでMySQLをビルドするとセグメンテーション違反になるという、なかなか激しいバグを踏んでまして。私は最初、それをバグレポートで見たのですが、日本の人っぽいし、そのバグの件をツイートしてる人がいて、すごくコアなというかニッチなバグを踏み抜いてるし、その前後はGCCの話とかMySQLの話とかが続いてたので、面白そうな人だなぁと、ポチっとフォローしてたんです。
──なんと、そんな繋がりだったとは! その後、どこかで会ったりしてたんですか?
yoku0825:いえ、Twitterでメンションし合ったぐらいで、会ったことはなかったです。
──Twitter活動は大事ですね。それが巡り巡って、こんな形で一緒にお仕事できるようになるとは。素晴らしい。
杉山:Twitterすごい!
yoku0825:ホントに。
杉山:yoku0825さんに声をかけてみようとなったのも、Twitterじゃないんですけど社内SNS(編注:kintone)で、MySQLの強い人に相談したいみたいなことを書いたら、ymmtさんとか本部長とかがすぐに反応してくれて始まったので、それもちょっと似てますね。
──社内で呟いてからの展開が早かったですよね。サイボウズは、社内がフラットで話は早いほうだと思うけど、それでもこれはかなり早い展開で私もビックリしました。
yoku0825:そうなんですね。
──で、サイボウズでお願いすることは決まってる?
杉山:いや、具体的にはまだですね。いろいろお話を聞いて頂いて相談しているところです。
yoku0825:とりあえずガルーンを、1つずつでも今より良くしていくのをやりたいですね。
杉山:そうですね。ぜひ! いまはまだ何をどうするか相談しているフェーズなので、具体的に何からやっていくかは決まってませんが、とても楽しみでワクワクしてます。
MySQLエキスパートまでの道のり(長いよ)
yoku0825:実は昔、芝居のライティング、照明をやってまして。
──それは、劇団の舞台公演みたいなので?
yoku0825:そうです、そうです。それも、どこか特定の劇団に所属するんじゃなくて、あちこちでやってました。だいたい、裏方のスタッフって少ないので、インターネット掲示板で募集があるんですよ。「何月何日に本番、それまで月イチで稽古するので来られる人」みたいな感じで募集があるので、それを見て行ってました。そういうのをアルバイトみたいにしてやってたら、専門学校の出席日数が足りなくなり、ドロップアウトして、コンビニに勤め始める……と。
──えーっ、何ですかその波瀾万丈な展開は。
yoku0825:高校3年生のとき、クリスマスの前後の時期に昭和記念公園へ行ったらライトアップイベントをやっていまして、それがすごくキレイだったんですよ! その頃、すでに大学受験をする気満々だったんですが、それを見て家に帰ってすぐ父親に「ごめん、大学は受けずに照明の専門学校へ行っていい?」と言ってました(笑)。
──それまでは、そんなことをやりたいというのは微塵もなく?
yoku0825:はい。いま思うと「何で?」と自分でも思います。ライトアップは、確かにキレイなのはキレイでしたが。子どもが高校3年生のときに昭和記念公園(※1)に連れて行くのはやめたほうがいいかも(笑)。
──私も高1の息子がいるので、気をつけます(笑)。ちなみに、元々受験しようとしてた大学は、情報工学系だったんですか?
yoku0825:いえいえ、全然違います。化学をやりたかったので、そっち方面の大学でした。それも消極的な理由で、純粋な数学は好きじゃなかったんですよ。目に見えないから良く分からない(笑)。物理も苦手で。あと、父親も確か化学系だったんですよね。だから「化学やりたいな」とグーンと期待を上げたところで「ごめん、やっぱり……」だったので、2、3日は怒られましたね。
──お父さんのお気持ち、お察しします……。
yoku0825:結局、TV系列の専門学校で、アナウンサーや音響といった学部と並んで照明の学部があるところへ行きました。
──最終的には、本人の希望通りにさせてあげたお父さん、すごいですね。素晴らしい。
yoku0825:で、挙げ句の果てが、舞台照明のアルバイトに熱中しすぎて出席日数が足りなくなり……ですからね。そりゃ怒るよなぁ(笑)。いま思うと、ホントに悪いことをしたなと思います。
──お父さんに同情します……。結局、その専門学校は卒業せず?
yoku0825:はい、してないんです。フッフッフッ(笑)。
──えーと、すみません、これいつMySQLの話につながるんでしょうか? まだITに繋がる話が全然出てきてないんですが(笑)。
yoku0825:専門学校をやめたタイミングで、ちょうど話があってコンビニエンスストアの契約社員になったんです。副店長として。
──それは、元々アルバイトしていて声をかけられた?
yoku0825:そうです。社員募集があるから「受ける?」と言われて「受けます!」みたいな。
──えっ、というか、舞台照明のアルバイトが高じて専門学校をやめたのに、そちらの道には進まず、コンビニの副店長? どこまで予想外なんですか!
yoku0825:ええ、自分でも「どうしてそうなった?」感はあります(笑)。そのコンビニで、帳簿データをExcelに入力する仕事がありまして。そのとき、何かのはずみでマクロを使ってちょっとした自動化をやり始めてしまって、楽しくなっちゃったんですね。
杉山:お、やっとITの話が!
──MySQLエキスパートの原点が、まさかのExcelマクロにあったとは!(笑)
yoku0825:そこでFOR文、IF文、楽しい〜みたいな。で、そこに3年ぐらい勤めたんですが、そこでプログラミングをやりたくなってしまって、つい「未経験者歓迎」というフレーズに釣られて転職をすることになりました。
──「未経験者歓迎」は怪しい!(笑)
yoku0825:まさにそうでした。「プログラミングをやりたい!」と希望して実際に入ってみたら、プログラミングじゃなくて、単なるオペレーター業務でした。使ってたのはDECのAlphaワークステーションで、Tru64 UNIXとかでしたね。
──Alpha! Tru64! 懐かしい!
杉山:???
yoku0825:そこで、日々、マクロを書いてました。
──マクロ? m4?
yoku0825:いえ、TeraTermのマクロです!(笑) ターミナル側で、こういうプロンプト文字列が来たら、こういうコマンドを返す、みたいなのをたくさん作ってました。
──オペレーションを自動化してたんですね。
yoku0825:そうです。このホストに接続するには、踏み台としてこれを経由するとか、あとは、あのホストに接続するにはRASでダイヤルアップする必要があるけど、それには電話連絡で申請する必要があるので、それを「確認した?」というポップアップが出るようにしてたりとか。
──面白い! 面白いんですけど、まだまだMySQLには遠い気もするんですが……。
yoku0825:その後、その会社の保守窓口のチームで仕事をするようになり、そこはイントラネットで使っているシステムも担当してたんです。それは、Visual BasicとMS Access、それとIIS(※2)で作られてまして、MS Accessがボトルネックなので何とかしようと。もちろん予算はないので、そのときライセンスが余ってた「SQL Server 2000」か、PostgreSQL、そしてMySQLのどれにするかという話になって、「じゃあMySQLで」と。
──やっとMySQLにつながった!(笑)
yoku0825:これがMySQLとの最初の接点でした。
──お話を伺ってると、MySQLのほうを目指してきてたどり着いたというよりも、偶然というか、まったく関係ない選択をしてきたら、MySQLに出会っちゃった、みたいな感じですよね?
yoku0825:はい、まったくの偶然です。
──でも、もしかすると、PostgreSQLのほうに行ってた可能性もあったんですよね?
yoku0825:そうですね。ただ当時PostgreSQLにはレプリケーションがなくて、それを実現するためにはpgpool-IIを使って二重に書き込まないといけなかったのですが、当時pgpool-IIはWindowsで動かなかったんですよ。ということで、レプリケーションができるということでMySQLになりました。
──ExcelマクロやTeraTermマクロからの飛躍がすごいんですが(笑)、そういうのは全部、そのイントラネットの部署に来てから独学で?
yoku0825:そうですね。調べるのは苦じゃなかったし、英語は読めたというか、少なくともアレルギーはなかったので気にならなかったですね。英語では大量にドキュメントがあったので、それをひたすら読んだりしてましたね。
──いやぁ、すごいですね。まさか、昭和記念公園のライトアップがMySQLに繋がっているとは。
杉山:こんなキャリアもあるんだ……と衝撃を受けてます(笑)。
yoku0825:この会社には30歳直前まで勤めました。やってるうちにMySQLのほうが楽しくなって、これを専門にやろうと思って、MySQLの代理店をやっていた前職に転職し、そして7年前に今のGMOメディアに入社しました。
杉山:7年前というと……
yoku0825:MySQLが5.5.23の頃ですね。
──即答するし!(笑)
(了)
文責・写真:風穴 江(@windhole)
※1:昭和記念公園は、東京立川市、昭島市にある国営公園。180haもある広大な敷地に様々な施設が設置されています。
※2:「IIS」は、MicrosoftがWindows Server用に提供しているWebサーバ「Internet Information Services」の略。
【変更履歴】
2019年11月19日:「『日々の覚書』のお世話になったことがないひといないでしょう。」を「『日々の覚書』のお世話になったことがない人はいないでしょう。」に修正しました。