The HIRO Says

If you smell what The HIRO is cooking!!!

中国のカンファレンスで自社プロダクトを英語で発信してきた

2020/12/20(日)に、中国の「TOP 100 Summit 2020」というカンファレンスで、私たちのチームの新プロダクト「Testable Infra」についてお話させていただきました。

こちらが、カンファレンスの情報になります。 同カンファレンスは、プロダクトマネジメント・テスト・DevOps・SREなど、ソフトウェア開発の幅広い領域の事例を100個集め、それらを4日間かけて発表し合うという、なかなか大規模でガチ幻想をかき立てられるものです。

私のセッションの情報はこちらです。
(バナーは上と同じに見えますが、きちんと個別ページにジャンプします)

こちらが、私の発表資料になります。

今回は、登壇の経緯と、登壇に際して工夫した点を、今後海外で英語でプレゼンしたい!という日本の方むけに説明させていただきます。
加えて、今回発表させていただいた「Testable Infra」のポイントを、アジャイル・テスト自動化・Kubernetesのいずれかに興味ある方むけに説明させていただきます。

1. 登壇の経緯

過去に同カンファレンスに登壇したことのある、台湾の同僚からの紹介がきっかけでした。カンファレンス主催者から彼のもとに「スピーカー候補いませんか?」という打診があり、ちょうど登壇予定だったアメリカのAgile2020がキャンセルになって力を持て余していた私に白羽の矢が立ちました。

※ちなみにAgile2020についての詳細はコチラです

今回は、以下の要因が組み合わさって、登壇の機会を得ることができました。

  • 私自身、社内外・国内外での登壇経験があること
  • カンファレンスでの登壇経験のある、外国籍の同僚が身近にいたこと
  • 登壇に関心がある者同士として、「類友」の関係を築けていたこと



2. 登壇に際して工夫した点

今回は、特に以下の3点を工夫しました。

1) 英語のプレゼン動画での反復練習

特にカンファレンスでのプレゼンならではの英語の言い回しのレベルを高めようと、Youtubeなどにあがっているプレゼン動画を何度も観て、そこで気がついた点を反復練習して、自身の発表に取り入れました。加えて、今回の発表はKubernetesの比率が高かったため、KubeConKubernetesのグローバルカンファレンス)の動画を特に観ました。

2) 関連トピックの会話に慣れる

プレゼンだけではなく、関連トピックのカジュアルな会話や語彙にも慣れようと、特にこちらのPodcastを頻繁に聴いていました。

3) 社内で素振り

本番前に、社内の所属部署で「事例紹介」と称して、発表練習をさせてもらいました。素振りなので失敗しても安心ですし、発表経験自体も積めるので、メリットが非常に大きいです。
また、機会をくれた同僚に対して、お礼と準備万端であることの両方を伝える意図も兼ねました。


3. 「Testable Infra」のポイント

ここでは、発表させていただいた「Testable Infra」のポイントを、3つ紹介させていただきます。

1) テストのし辛さを生み出す3つの要素

これまで長年、様々な会社・プロダクトで、「テストがし辛くてバグを見逃して障害を起こしてしまった」事例と向き合ってきました。それらを整理・分析すると、大体次の3つのいずれか/どれもが原因であることが多いです。

  1. テスト環境:環境自体がない、準備が面倒、環境ごとの差分が大きすぎてテストを信頼できなくなる
  2. テストデータ:他の人と共有するとテストを壊す/壊される恐れが高い
  3. 外部システム:準備しづらい、環境ごとの接続設定の変更が面倒


2) 「Immutable Infrastructure」をCloud-nativeに実現

様々な試行錯誤を繰り返した結果、「Immutable Infrastructure」の考え方を、Docker・Kubernetes・Istioなどを組み合わせることで、上記の問題を解決できるのでは?との考えに至り、「Testable Infra」を構築してみました。

具体的には、Pull Requestが作成されたら、それをテストするために必要なDockerコンテナを作成し、それらをテスト用に作成したKubernetesのnamespace上にdeployし、そこに対してE2E Testを実行する仕組みをまず構築しました。

3) 構築・運用の際の工夫

新規の試みだったことから、以下の手法を組み合わせることで、構築・運用をより「効果的」にしました。

  1. 開発初期からDevOpsの仕組みを構築し、必要な時に最新の動作するソフトウェアを見せられるようにした
  2. 「Product Discovery」「Design Sprint」を活用して、仮説設定・検証を繰り返した
  3. 失敗を学習機会として積極活用し、プロダクト・プロセスの改善につなげた


※「Testable Infra」の概要については、こちらもご覧ください。

さいごに

日本での登壇も工夫する点や面白いことは多いですが、海外で母国語以外で登壇するとなると、その国の文化や言語ならではの言い回しなどにも工夫の余地が出て面白いです。
また、昨今はコロナの影響もあって、「Zoomなどのビデオ会議システムで時差さえ埋められれば国籍を超えて登壇しやすい」という状況でもあります。
コロナには最新の注意を払っていく必要がありますが、一方で新たに生まれた機会は、積極的に利用しても良いと思います。