fbpx

万の道、万のプロを訪ねて Vol.3

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。


今回お話を聞きに行ったのはサイバーエージェントのソフトウェアエンジニアである青山真也さん。Kubernetes界隈で色々な活躍をされているので有名である。

Kubernetesコミュニティへの貢献や普及活動の他に、オープンソースに関わる事のメリットや、会社としてOSSに関わるエンジニアリング文化を奨励することについても発信されている

僕自身も今の自分があるのはオープンソースのお陰なので、このあたりは色々思い入れのあるテーマである。意見を交換したら面白いだろうなと思って対談したら、案の定とても面白かった。

OSSコミュニティに飛び込む


OSSコミュニティに参加するというのは、多くの人にとっては結構敷居の高いことである。青山さんにとってのスタート地点は大学生の時で、OpenStackのコミュニティに参加して勉強をしたのだそうだ。OpenStackは、オンプレでクラウド的な環境を作るための一群のOSSプロジェクトで、HPやIBMなどがAWSに対抗するために一時期非常に力を入れていた。そういうプロジェクトだから、作る側も使う側も大きな組織の人が多かっただろう。そういう環境に学生が混じるのはアウェイ感があったと言っていた。

OSSコミュニティも人間の集まりだから、中の人には特に排斥する意思はなくても、マイノリティに属する人にはどことなく居心地の悪さがどうしても出来てしまう。この違和感を中の人が感じるのは難しいので、積極的に探し求めて改善していくというのが、プロジェクトに新しい視点を入れるためにも、また時代の変化に合わせてプロジェクトが進化していくためにも大事だというのが、Jenkinsから学んだ事の1つである。

OSSコミュニティに深く関わる


青山さんは業務でKubernetesを使っているので、上流で何が起こっているのか積極的に関与できる事が、業務上も大きなメリットになる。

Kubernetesは整った巨大プロジェクトだから、どこで誰が何をしていて、という地図は比較的クリアであるようだった。これは実は結構凄いことで、典型的なコミュニティは目に見えない人間関係と各々の守備範囲で成り立っているので、新しい人が深いところに関与していくのは結構難しいものである。これは何もOSSに限った話ではないが。

しかし、これほどコミュニティ歴が長い青山さんでも、Kubernetesの総本山の、KEPを書いて変更を提唱して...みたいな形で貢献をするのは難しいのだそうだ。あれほど多くのユーザーがいて多くの企業が開発に取り組んでいる大規模プロジェクトなら、さもありなん。そこでKubernetes開発の参加への間口を広げているのが、拡張性のレイヤの存在である。青山さんが貢献しているのも、そういう拡張性のレイヤの上に乗ったプロジェクトであるらしい。

これはJenkinsでもプラグインという仕組みを用いて意図的に活用したことだ。多くの人が、独立して自分のやりたいことを人に邪魔されずに出来、その結果を寄せ集めて一体感のあるシステムを構築できる...という状態になると、OSSコミュニティはとても上手く回るのである。WordPressだってSpringだってそうだ。

会社人としてOSSに関わる


会社の業務の一環としてOSSに関われると、出来ることが増える。しかし、そのためには、会社にとって、自分がOSSに関わる事がプラスになるんですよという物語を作らないといけない。ユーザー会などで色々な人と話していると、多くの人がこの部分で辛さを感じているようだった。

僕はそういうのが面倒くさくて、最初は業務の外でOSSに関わっていた。青山さんが凄いのは、こういう事について最初からきちんと考えていることだ。

例えば、青山さんは、カンファレンスやコミュニティで学んだことを積極的に社内向けに発信していると言っていた。得たものが社内で見えるようにする。OSSに参加できる技術組織に居るという事が、社内のエンジニアの士気を上げる。コミュニティでの会社でのビジビリティが上がることが、会社のエンジニア採用にとってプラスになる。Kubernetesのように新しい取り組みが色々と行われていて混沌としていると、コミュニティの中に入っていくことで、どのプロジェクトに目があってどれが見掛け倒しなのか、分かるようになる。その知識が、失敗しない技術選定に活きる。

そういう様々なメリット、認識を、上司を始め、社内の人に見える形で言語化し、説得していく事で、自分が、そして後進がOSSに関わりやすくなっていく。そういう作業を労を厭わずやっているのは本当にいいなと思った。

OSSとの関わり方


会社にとっての価値をクリアにすることで、自然とOSSとどのような関わり方をすべきなのかが明確になっていく。

例えば、失敗しない技術選定のためには、他の会社で同じような取り組みをしている人がどのような関連技術を選択しているのかを知ることに価値がある。だから、国内で交流会やミートアップなどの企画や運営に携わるのが合理的になる。運営に入っていると参加者の方から話し掛けてもらえるので、人間関係を作りやすいと言っていた。なるほど。

登壇して発表するのだって、一見すると純粋なアウトプットのように思えるかもしれないが、実は発表すると参加者の方から話し掛けてもらいやすくなるのである。これは僕もよく利用する手口。
逆に、セミナーみたいなものをやると、お金稼ぎにはなるかもしれないが、ゴールと合致しないのでやるべきではない、という事になる。

ゴールを明確にすると作業が正当化しやすい。

会社の枠を越えていく

「自分がOSSに関わる事が会社にとってプラスになる」というストーリーを出来るだけ明確にするのは大事なのだが、しかし、OSSの世界での活動が評価されていくと、やはりどうしてもその枠をはみ出ていく。それはやってもいいけど、社内では評価はされないよ、という事がどうしても出来てくる。


自分にも、OSSプロジェクト自体に情熱や愛着が生まれていく。それによって、会社における自分の立ち位置、会社に対する気持ちが変化していく。これは、僕自身の経験である。

幸いな事に、社外での評価というのは、社内の評価を自然と押し上げていく。「世の中の人が凄いと言っているのなら、この人は凄いんだろうな」と周りの人が思ってくれる。自分の時間をより自由にコントロール出来るようになっていく。

一方で、会社の組織だった取り組みからは少しずつ外れていく事が多い。そこには寂しさもある。別な会社に移籍して、同じプロジェクトに携わり続ける人も、周りに何人も見た。

青山さんもこの旅路を辿るのか。それとも、社内に向かってちゃんと意義を発信してきた青山さんの事だから、会社の中によりしっかりした居場所を作っていくのか。

前者の道を歩むとしたら、OSSによって会社という枠に囚われない生き方が出来るという生きた事例になるだろう。僕は、もっと多くの技術者が積極的に転職していくべきだと思っているので、拍手喝采である。

後者の道を歩むとしたら、青山さんの作る道は、みなさんが自分の会社の発展とOSSの発展を不可分に結びつける素晴らしい事例になるのではないか。そうしたら、OSSはもっと活発になるはずだ。

どっちになるとしても、とても楽しみだ。


◆万の道、万のプロを訪ねてのバックナンバーはこちらからご覧いただけます

新規CTA