Aivenのオープンソースプログラムオフィス：1年後

<font color="Grey">*[Open Source Program Office at Aiven: A year later](https://aiven.io/blog/open-source-program-office-at-aiven-a-year-later)の翻訳です。*</font>

2022年4月13日

# Aivenのオープンソースプログラムオフィス1年後

AivenのOSPOは1年を迎えました。OSエンジニアリング・マネージャーのジョセップ・プラット氏と彼のチームが、この機能の立ち上げと運営について学んだことをご紹介します。

## Aivenのオープンソースプログラムオフィス：1年後


1年前、Aivenは[シリーズC投資ラウンドで1億ドル](https://aiven.io/press/aiven-raises-usd100m-series-c-to-expand-global-open-source-innovation)を調達し、会社の評価額を約8億ドルとしました。そして最近、総額2億1000万ドルの資金を調達し、20億ドルのユニコーン評価を達成しました。このラウンドの重要な理由の1つは、オープンソースコミュニティにおける当社の影響力を高めることでした。


オープン・ソース・プログラム・オフィス（略してOSPO）は、オープン・ソース・プロジェクトへの貢献に特化した部署です。チームは、わずか2人組から数回の倍増を経て、常に持続可能なペースで成長している。


## なぜOSPOなのか？


AivenのOSPOの使命はシンプルだ：



>[](/build/_assets/shape-quote-WGSAHX4E.svg)
> Aivenが使用するオープンソースソフトウェア・インフラストラクチャの持続可能性を確保し、将来を保証する。
>
>
>


Aivenは4人の創業者だけで構成されていた非常に初期の頃から、常にオープンソースに貢献してきました。上流のOSSプロジェクトに貢献することはごく普通のことで、特別なことでも議論することでもなく、パッチは常に貢献し返すものでした。Aivenが成長し続けるにつれ、このような文化は残り続けましたが、同時に、製品を成功させながら上流プロジェクトへの貢献を絶え間なく続けることは難しいことであることが明らかになりました。


専門チームを設立することで、当社のインフラにおける主要なOSSプロジェクトにふさわしいレベルで、当社のコミットメントを維持できるようにしたいと考えました。


## OSPO は何をするのか？


例えば、Apache Kafka®、Apache Flink®、PostgreSQL®、M3、OpenSearch®などです。しかし、OSPOのメンバーだけがアップストリームに貢献しているわけではなく、Aivenのすべての人が歓迎され、そうすることを推奨されています。


AivenのOSPOチームは主に3つの分野を担当しています：


* OSSプロジェクトへの貢献
* 社内のOSS文化の醸成
* 法令遵守の徹底


### サードパーティのOSSプロジェクトへの貢献


これは、チームがほとんどの時間を費やす場所である。各チームメンバーがタスクとフォーカスエリアを決めることができ、唯一の基準はコミュニティへの影響です。彼らの貢献はコア製品に限らず、エコシステム内のあらゆるプロジェクト（プラグイン、コネクター、基礎ライブラリ...）に及びます。各チームメンバーはコミュニティのメンバーでもあるので、内部を見ることができ、自分が取り組んでいるタスクの潜在的な影響を評価することができます。


私たちは特に技術的負債を取り除くことに重点を置いています。これらのタスクは通常、自由な時間にOSSに取り組んでいる人々には取り上げられないからです。この種のタスクは、保守性の領域において、投資した時間とリターンの比率が良い。


サードパーティのOSSプロジェクトにおける私たちの仕事は、新機能の貢献やバグ修正、技術的負債のクリーニングにとどまりません。重要な役割のひとつは、コミュニティから提出された既存のコードをレビューすることです。私たちは、メンテナーの作業負荷が通常一人で取り組むよりも数桁高いことを理解しています。


私たちは、Aivenが依存するOSSプロジェクトには十分な人員がいることを保証したいと考えています。これがプロジェクトの安定性を確保する最善の方法です。これを実行する企業が増えれば増えるほど、OSSのエコシステムはより良いものになり、その存在が一個人や一企業に依存しなくなります。


この領域における私たちの活動は、以下の原則に導かれています：


* 地域第一主義：私たちが選ぶ仕事は、地域社会に利益をもたらすものでなければならない。
* 私たちは、信頼性、有用性、熱意、専門性、可用性において高い評価を得るよう努めます。
* 透明であること：私たちの仕事の背後に隠された意図はなく、私たちは所属について透明である。
* 私たちの仕事は、単にパッチを提出するだけでなく、パッチのレビュー、質問への回答、ブログ記事の執筆、カンファレンスでの発表、そして利用可能なあらゆる手段を使って知識を共有することです。


### Aiven 社内に OSS 文化を醸成する。


AivenはOSSの消費者であり貢献者であるだけでなく、生産者でもあります。OSPOチームは、各チームがあるプロジェクトをオープンソース化したいと決めた瞬間から始まり、プロジェクトのライフサイクル全体を通して、そのプロセスに欠かせない存在です。


OSPOチームは、組織の各メンバーにOSSのパワーと重要性を認識させます。私たちは、エンジニアリング、プロダクト、デベロッパーリレーションの各チームと密接に連携し、Aivenプラットフォームのユーザーだけでなく、OSSの基盤技術を利用するすべての人のコミュニティにとって有益な社内プロジェクトのオープンソース化の機会を特定します。


OSS文化やメンタリティの醸成に役立つAivenの重要な取り組みのひとつに、プランクトン・プログラムがあります。自由な時間をオープンソースプロジェクトに費やすことを決めたAivenの全社員に対して、金銭的な報酬を提供しています。[Common Voice](https://commonvoice.mozilla.org/en)のようなプログラムへの貢献から、ウィキペディアの記事執筆、既存のオープンソースのプロジェクト管理まで、オープンソースで行われるあらゆる種類の仕事です。


OSPOチームは、「Aivenでオープンソースをやるチーム」*ではありません。私たちはAivenでオープンソースを増殖させるチームなのです。


さらに、製品チームとともに、Aiven傘下のオープンソースプロジェクトをメンテナンスしています。私たちは、これらのプロジェクトがコミュニティにフレンドリーであることを確認します。私たちの仕事はコードを提供するだけではありません。私たちは、ガバナンス、プロジェクト管理、ライセンシング、コミュニティ・エンゲージメントに関するガイダンスと仕組みを提供します。


### 法令遵守の確保


オープンソースの消費者であり生産者であるAivenは、すべてのソフトウェアがライセンス、商標、コントリビューター契約を含むすべての法的側面に準拠していることを確認する必要があります。そのために、Aivenは経験豊富な弁護士を擁しています。  

この分野で成功するためには、依存関係ツリーを完全に把握する必要があります。ソフトウェア部品表（SBOM）は、与えられたソフトウェアの依存関係ツリーを分析・監査するのに役立つ、非常に便利なツールである。


この情報を持つことは、どのプロジェクトが私たちのサプライチェーンにあり、どのプロジェクトに支援が必要かを判断するために非常に重要である。


## 教訓


OSPOでの1年目、私たちはいくつかの重要なことを学んだ。他の人々が私たちの足跡をたどるのを助けるために、私たちはそれらを世界と分かち合いたい。


### 採用情報


企業は長い間、製品開発職の採用を行ってきた。OSPOのためのチームを作るのは、もう少し複雑なことだと思うかもしれない。しかし、私たちはサードパーティのOSSプロジェクトにフォーカスしたOSPOを構築するため、異なるタイプの開発者を必要としていました。


現在のソフトウェア開発は、ターンアラウンドタイムに最適化されている。つまり、私たちの業界は、インクリメンタル開発、継続的インテグレーションと継続的デプロイメント、早期フィードバック、ユーザーの声に耳を傾けるといった側面に重点を置いているのです。


私たちは、これが製品開発の素晴らしい方法だと信じていますが（Aivenは、私たちの製品について、これらと同じ用語に焦点を当てています）、サードパーティのOSS開発にこれを適用しても、納品はコミュニティ・レベルで行われるため（プロジェクト管理委員会を通じて、またはコミュニティ内のコンセンサスを得るための別の手段を通じて）、期待される結果は得られません。私たちは、タイミングや変更を取り入れるかどうかの決定さえもチームや会社の外で行われるという事実に対応する仕事のやり方（そしてその下で効果的な開発者）を見つける必要がある。


その代わりに、私たちは次のような開発者を探す必要がある：


* OSSのタイミングを理解している
* 変更要求の中には却下されるものもあるだろうし、組み込むのに時間がかかるものも多いだろう。
* コミュニティのニーズを理解している
* 仕事の優先順位の付け方を知っている


また、完全なリモート化が必要だったことは言うまでもない。人材が自分たちのところに来てくれることを期待するのではなく、人材がいるところに行きたいのだ。


### 経営スタイル


様々なマネジメントスタイルがあるが、サードパーティOSSで成功するために必要なマネジメントのタイプは、主流とは異なる。私たちは、サードパーティOSSに取り組む際、プロジェクトのガバナンスはマネジャーの手の届かない社外で推進されるため、デリバリーはマネジャーの責任ではありえないことを学んだ。つまり、イネイブラー、つまり従業員の能力を最大限に発揮させる真の乗数に焦点を当てる必要があるということだ。


もうひとつの重要な側面は、その場にいる専門家でないことにまったく違和感のないマネジャーを見つけることだ。多くの場合、マネージャーはチームが取り組んでいるテクノロジーの表面的な部分しか知らない。PostgreSQL®、Apache Kafka®、OpenSearch®に取り組んでいるチームのマネージャーである場合、彼らがこれらすべての分野の専門家になることは決してなく、もしかしたらユーザーの視点からしか知らない分野もあるかもしれないことは明らかだ。


### パフォーマンス・レビュー


永遠の疑問は、どうやって成功を測定するかということだ。これはソフトウェアエンジニアリング全般においてすでに複雑な問題だが、成功を評価する必要のあるチームがサードパーティのOSSに貢献する場合、さらに複雑になる。


まず認識しなければならないのは、開発プロセスの時間スケールは私たちのものではなく、コミュニティ全体のものだということだ。それでは、「リリースされた機能の数」や「デプロイまでの時間」のような指標をどうやって使えばいいのでしょうか？要するに、使えないのだ。そのような測定基準から離れ、自分たちが完全にコントロールできるものを測定することに集中する必要がある。例えば、私たちにとって有用なメトリクスは以下のようなものです：


* 取り組んだ課題の数
* パッチのレビュー数
* 共有された知識（ブログ、カンファレンスでの講演、メーリングリストへの参加...）


## 来年


今年は素晴らしい年だった。私たちはチームを一から作り上げ、携わったプロジェクトに大きな影響を与えた。自分たちにこれができることを証明できたので、来年はさらに力をつけたい。


規模を倍増し、チームの範囲と幅を広げたい（プロジェクトを増やし、プロジェクトあたりの人数を増やす）。製品チームとの相乗効果で、予想以上に多くのOSSプロジェクトが生まれたので、この分野にも力を入れたい。私たちは、OSSプロジェクトの大半が外部からの貢献者を歓迎し、その周りに人々がコミュニティを形成するための安全な場所を育てるようにしたいと考えています。


しかし、これらはすべて、エンジニアリング・チームとデベロッパー・リレーション・チームの大きな助けなしには実現できません。オープンポジションのチェックもお忘れなく[こちら](https://aiven.io/careers)！


今年もまた、オープンソースへの貢献が成功する年になりますように！