今回はエクサウィザーズのDevOpsチームで働くマイケルさん (写真左) 、パトリックさん (写真中央) 、ジンチェンさん (写真右) からお話を伺いました。DevOpsチームの役割や、今後エクサウィザーズで成し遂げたいことは何か、熱く語っていただきました!
(以下、M:マイケルさん P:パトリックさん J:ジンチェンさんと略。)
これまでのご経歴を教えていただけますか。
M:私は8年前に米国コロラド州のデンバーから日本に来ました。英語教師として働いた後、ソフトウェアエンジニアに転身し、東京大学のイノベーション研究室でi.schoolという教育プログラムに携わり、松尾研究室で研究を行っていました。その後、SRE (Site Reliability Engineering)* としてスタートアップの会社に入社し、分散データベースについて学びました。
P:私はイギリス出身で、来日して2年ほどになります。ウェブやシステム開発に10年ほど携わる中で、社内の開発のプロセスの効率化・自動化に興味を持ちました。ちょうどそのころ、DevOpsという考え方が世に出始め、夢中になりました。その後、ある会社のDevOpsのグローバル・リードとして8年ほど働きました。
J:8年前に中国から来日し、最初のキャリアでは大企業向けのソフトウェア開発に携わりました。その後Indeed Japanに入社し、2年間にわたり社内のサービスやプロダクトの開発を担当しました。当時、Indeed JapanがSREを導入し始めたため、オンラインでのプロダクトの運用や、プロダクトの信用性を支えるためのプラットフォームの整備を担当していました。
*SRE...Googleが提唱した言葉で、サイトの信頼性向上のために、自動化、障害対応、パフォーマンス管理、可用性担保などを通じて収益・ブランドを支える役割のこと。
マイケルさん
なぜエクサウィザーズに入社しようと思いましたか。
M:決め手となったのは、エクサウィザーズが「AIを利活用したサービスによる産業革新と社会課題解決」をミッションに掲げていたことです。開発者として成長しながら、仕事を通してAIについて学べる環境を探していたところ、エクサウィザーズに出会いました。エクサウィザーズの人は皆、将来のプロダクトに心を躍らせていて、とても魅力的な環境だと思いました。
P:自分の思うDevOpsの概念を新たな環境で導入したいと考えていた時に、社長の石山さんと取締役の坂根さんに出会いました。世の中に貢献できるような仕事がしたいと思っていたときに、この会社でなら自分の想いを実現できると思ったんです。
J:私の場合は、ゼロから開発環境を作ることのできる会社を探していました。また、AIにも興味があったため、エクサウィザーズは自分が関心のある仕事に取り組める会社だと思い、入社を決めました。
DevOpsチームについて伺う前に、そもそもDevOpsとは何か教えていただけますか。
P:DevOpsは、何か形のある技術というよりは、ある種の哲学だと思います。自動化という目的を中心として、開発や運用に関わる全てのプロセスをいかに効率化しスピーディーにしていくか。それを突き詰める方法が、DevOpsです。
J:私もDevOpsとは、エンジニアリングへの向き合い方であり、全てのエンジニアが意識して持つべきスキルのようなものだと考えています。例えば、コードを書く際に、コードを作成する段階のことのみを考えるのでは不十分です。完成したソフトウェア全体の中で、コードがどのように機能するのかなど、実際にプロダクトへと実装された後のことも考える必要があります。
ジンチェンさん
DevOpsにはいろいろな定義があるんですね。次に、エクサウィザーズのDevOpsチームのミッションを教えていただけますか。
M:DevOpsには様々な定義があるので、エクサウィザーズにとってのDevOpsとは何かを定義するのが私たちの役割だと思っています。これを社内で広めることが私たちの使命ではないでしょうか。
P:マイケルさんが言っている通りだと思います。DevOpsというと、コードの運用と展開を担当するチームだと誤解されることがあります。でも、私たちのチームは、あくまでもそのサポート役です。すなわち、DevOpsの考え方やスキルをエンジニアに教え、自分自身でDevOpsを開発段階から導入できるような素地を作ることを目的としています。
J:もし、全てのエンジニアがDevOpsの考え方にもとづいて開発や運用を行えるのであれば、DevOpsを担当するチームは会社に必要ないかもしれません。しかし、実際にはこの考え方を意識してプロダクト開発に携わっているエンジニアは少ないです。だからこそ、私たちが働きかけることで、DevOpsの考え方を持つ人を増やす必要があるのだと思います。
皆さんのミッションはDevOpsの考えを広めることだということですが、実際に仕事をしていて、難しいと感じる場面はありますか?
J:DevOpsを担当するエンジニアは、コードを書くだけではなく、コードが書かれた後の運用もこなさなくてはなりません。ただでさえ、ソフトウェアエンジニアなどの他のエンジニアよりは広範な知識が必要とされるわけです。それに加えて、AIのためのDevOpsとなると、参照できる前例がない状態で、自分たちの手で開発の基盤を作ることが必要になります。これが難しさであると同時にやりがいでもあると思っています。
M:広範な知識が必要とされるというのはまさしくそうだと思います。特にエクサウィザーズにはたくさんの事業領域があるため、それぞれのチームの開発環境や現状を全て把握するのは大変です。2~3のプログラミング言語や、AWS、GCP cloud、Azureなどの異なるプラットフォームを行ったり来たりすることは日常茶飯事です。おかげで、開発者としての成長を日々感じることができています。
P:入社後に、ゼロからDevOpsを導入する必要があったのは、難しくもあり面白くもありました。もともと私が入社した当初は、プロダクトの開発というよりはプロジェクトに注力している段階でした。自分の手でDevOpsを導入し、だんだんとその考え方を広めてきました。今では、プロダクト開発をスムーズに行うことのできる環境が整い始めており、成果を実感しています。
パトリックさん
今後、エクサウィザーズで成し遂げたいことは何ですか?
M:私は、機械学習エンジニアに受け入れてもらえるようなDevOpsの方法論をデザインしたいです。機械学習は比較的新しい領域で、研究活動は行われてきたものの、社会実装はまだ始まったばかりです。だからこそ、今後いろいろな方法を試して、機械学習エンジニアにも受け入れられるDevOpsのあり方を探っていきたいと思っています。
P:ただ全てを自動化するのではなく、エクサウィザーズらしいDevOpsを実現していきたいですね。エクサウィザーズには多様なバックグラウンドを持った面白い人が集まっています。しかも、そのメンバーが立ち向かうミッションは社会課題解決です。前例のないことに取り組む会社だからこそ、伝統に捉われず、持ち合わせているスキルや豊富な事業領域を活かすための開発体制を築くことができたらなと思っています。
J:私は開発側に携わっていたこともあり、エクサウィザーズの開発チームが全てのプロセスを自分たちでできる状態を実現したいです。 エンジニアがアイディアを考え始めてから、それを形にして、そしてリリースするまで、この一連のプロセスを彼ら自身で行えるようになること。これこそが、私たちのチームが理想とするところだと思います。
最後に、エクサウィザーズに興味のある方々にメッセージをお願い致します。
J:幅広い知識を持ちつつも、ある一つの分野にとても優れているような、T字型スキルを持っている方と一緒に働きたいですね。例えば、DevOpsの方法論もわかりつつ、それでいて機械学習の専門的な知識も持っていたりするといったような方です。
M:そうですね。良いDevOpsエンジニアというのは、ジェネラリストでもあります。つまり全てにおいて優れているということです。私たちのチームは、様々な専門分野に触れますし、何個も先のプロセスの見通しを持ちながら仕事をする必要があります。
P:DevOpsチームではT字型スキルの要素と、ジェネラリストの要素をどちらも持ち合わせた人が必要とされています。豊富な知識と、そして特に優れた専門性を兼ね備えた方、ぜひ一緒にエクサで働きましょう!!
エクサウィザーズでは、他にも多くのエンジニアが活躍しています。お気軽にこちらからご連絡ください。