MoneyForward Developers Blog

株式会社マネーフォワード公式開発者向けブログです。技術や開発手法、イベント登壇などを発信します。サービスに関するご質問は、各サービス窓口までご連絡ください。

dev

Goがつなぐコミュニティーの輪を広げるために大事なたった1つの方法

TL;DR

この記事は、Money Forward Engineering Advent Calendar 2021 10日目の投稿です。 9日目は tnandate さんで クラウド給与の1stリリース時のコードを読む会を開催しました でした。

皆さん、お疲れさまです。きっと大量のアドベントカレンダーを読まなくては!となってきっと疲れてらっしゃると思うので箸休め的な文章をご用意しました。 ぜひ読んで感想などをTwitterやブログなどに書いてもらえればと思います。

対象読者

  • コミュニティ運営で悩んでいるかた
  • 気になるコミュニティが休止してしまって残念に思っているかた
  • テックコミュニティが好きなかた

ゴール

  • コミュニティ運営の悩みを解消する手がかりが得られる
  • コミュニティの運営に手を上げてくれる人が増える
  • 地方コミュニティが活性化する
  • Motto Go Forwardできる

これはなに?

本日はマネーフォワードで技術広報をしている luccafort がGoのいち地方コミュニティを立ち上げてからGoCon 2021 Autumn Onlineの運営することになった経緯といままでの行いをふりかえろうと思います。 そこで感じたこと、考えたことを通してアフターコロナ後のコミュニティや文化についてどうあってほしいかを考えるきっかけになれば幸いです。

地方コミュニティ立ち上げからGoCon運営までの道のり

まずは起ち上げ期からGoCon運営まで…を書き出すと長いのでサマリーだけご紹介します。 もし興味があるかたは去年もコミュニティ運営の記事を書いているのでご覧いただければと思います。

1年間地方コミュニティーを運営して感じた成長の軌跡と未来の課題

Road to GoCon 2021 Autumn Online

2020年1月にKyoto.goは発足しています、キックオフMTGを行ったのがもうだいぶ昔のことのよう…。 ともあれ、発足後すぐにコロナ禍に突入したことで大きな方針の転換を余儀なくされました。

Kyoto.goは発起人であるぼくが「平日夜にフラッと立ち寄ってGoに関する勉強や相談ができるPlaygroundがほしい」ということで誕生しました。 当時すでにUmeda.goがあり、そちらに出向いていたのですが平日夜に京都〜大阪間を移動するのがしんどかったので、もっと気軽に参加したい!ということで誕生した流れになります。

上記の「勉強や相談ができる」というあたりが発足時からかなり重要視していた点でキックオフMTGで「オンラインでの開催はしないのですか?」という質問に対して「少なくとも自分はする気がない。やってもいいけど運営メンバーになって一緒に企画してほしい」という発言をした記憶があります。 Goに限らないと思うのですが、東京に比べてどうしてもイベント量で劣る地方コミュニティの起ち上げであったので以下の点を重視していました。

  • 参加するメンバーによる活発なコミュニケーションを重視
  • 運営メンバーが疲弊しない持続可能な運営であること
  • 金銭は揉める元なので企業によるスポンサードは絶対にしない
  • 型にはめるのではなく、参加しているメンバーが望む型に変化していくこと
  • 情報の量と質を高めるためオフラインであることを重視

悩みはしたのですが、一番最後の項目であるオフライン重視は早々に諦めることとなりました。

オフラインを重視したかったので、オンライン化に踏み込むかどうかは非常に葛藤しました。 オンラインであるならばご当地コミュニティというアイデンティティが揺らいでしまうからです。 最終的に「生まれたばかりのコミュニティであること」「変化を恐れないこと」「継続することが大事」の理由からオフラインであることを捨て、コミュニティが継続することを重視する方向にピボットしました。

いまからなれる!カンファレンス運営者

結果としてですが、継続的に活動していたことが日本最大級のGoイベントであるGoConの運営メンバーとしてお誘いいただくきっかけにつながったと考えています。 GoCon運営にお誘いいただいた理由は推測する形になってしまうのですが、おそらく以下の要件があったのではないかと考えています。

  • 継続的にGoのイベントを開催している、開催していた実績がある
  • 複数人で運営をしている
  • Goのコミュニティに対してポジティブである
  • カンファレンス開催までやり抜いてくれる人物であること

概ね「複数人でGoのコミュニティを運営している、コミュニティ貢献度が高い信頼できるかた」ではないかと思います。 なぜならぼくが他の方をお誘いするとしたらやはり同じ理由になると思うので。

カンファレンス運営ってどんなことするの?と気になった方向けにGoCon運営でやってきたことを羅列してみました。 主にやったことです、他のメンバーはまた違うことをやってたりしますのであくまで一例程度にどうぞ。

  • Track Aの司会進行担当メンバー
  • よければみてください。 Go Conference 2021 Autumn Track A
  • GoCon 2021 Autumnのイベントマネジメント&ファシリテーション担当メンバー
  • 配信チームのTrack A配信担当メンバー
  • Call for Proposalの選定メンバー
  • スポンサー企業の窓口担当メンバー
  • のちに回らなくなって他のメンバーと分担
  • スピーカーの担当窓口メンバー
  • 後に回らなくなって他のメンバーに移譲

一覧すると多くみえると思いますが、これはタスク分割にミスったのと周りに頼れなかった雑魚リーダーとしての能力が遺憾なく発揮されただけなので、適切なタスク分割とメンバーへのタスク割り振りができていれば、やらないといけないことは半分くらいになると思います。 運営する上で意識していたのは「いちばん大変なタスクを取る」というものでしたが、結局それもいろいろなメンバーに助けてもらったので「できた」とはあまり言えないですね…。 とはいえ大きな問題やトラブルは起こらず、無事開催までやりきれたのは「カンファレンス運営未経験でやったったぞ!」と自慢できるんじゃないかと思ってます。

余談ですが、GoCon2021 Autumnではそういったボランティアで働いてくれた仲間になにかできないか?と思って「スタッフページを作らない?」と提案してみたところ、素晴らしいスタッフ一覧ページが公開されました。 たちょっとしたことですが、メンバーに報いるなにかを用意することが大事なのだと感じました。 これはプロダクト開発でもコミュニティ運営でも変わらないソフトスキルだなと改めて実感しましたし、ソフトスキルを磨くよい機会になったように思います。

Go縁をForwardするコミュニティを作る

運営コストを当初からできるだけ抑える設計にしたこともあり、数ヶ月ほどは問題なく運営ができていました。 転機はGWに起こります…というか起こしたんだけど、ぼくが。 なにをしたかというと、主催者であるぼくがイベントを忘れてすっぽかしました。 参加希望をしてくれたかたには本当に申し訳なく思っています。

  • コロナ禍でどこにもいけないのでGW働いたこと
  • 裁量労働制だったのでGW働いて別の日休もうと考えていました
  • カレンダーに勉強会の登録を忘れていたこと
  • イベント当日、体調が芳しくなく特に予定もなかった(と思ってた)のでゆっくりしようと休んでいたこと

上記3つの要素が重なってしまい、事前連絡することなくすっぽかすというやらかしをしました。 そこで個人的な反省会を行い、「今後も何かしらのトラブルで開催できないということは起こり得る」と考え、運営メンバーを増やす必要があると結論を出します。

スケールする組織であることが持続可能なコミュニティ活動でも必要だとわかったので、さっそくGophers Slackの #kyoto チャンネルで手伝ってほしいことをリストアップし、手伝ってくれるかたを募集しました。

「そのうちやれるといいな」という構想は持っていたのですが、1年くらい運営を経験し、型ができてからでいいかと思っていたら自身のミスによって早まってしまいました。 これは後々のことを考えると大変良かったと思っています。まさに災い転じて福となす、でした。

幸い、よく参加してくれていたuji_rbさんとyebis0942さんが快く手を上げてくれたことでコミュニティ活動における「運営メンバーになってくれる人がなかなか見つからない」問題は早期解決をしました。 運の要素もあったとは思いますが、当時Goに限らずさまざまなテックコミュニティが活動を休止していたこと、運営コストが比較的低く設計されていたことで手伝えそうかも…と思っていただけたのではないかと思います。

なぜ地方コミュニティを大事にするのか?

なぜここまでして地方でコミュニティを運営するのだろうか?と考えたことがあるでしょうか?ぼくはあります。 ぼくが考えた答えは「地方で暮らすことを選択したときにソフトウェアエンジニアとしての成長にテックコミュニティの存在が必要だったから」です。 お伝えしたい内容が長くなってしまったので

テックコミュニティがなぜ必要なのか?

いまの日本ではテックコミュニティやイベントの開催は圧倒的な東京の一人勝ち状態です。 開発拠点としては大阪や福岡が賑わいをみせていますが、いまだに圧倒的人数比によって東京に一極集中している状態であることに変わりはないです。

そして、地方でコミュニティを運営していて耳にするものとして「東京に行かないと成長できない」「東京にいかないと給与が上がらない」があります。 給与に関してはコロナ前でも地方拠点が福岡や大阪にできるなどにわかに分散の兆しがありました。 そして、コロナ禍になったことで今までは踏み切れなかったフルリモートへ踏み切った企業もあり、改善傾向に向かっていると感じています。

では、成長という意味ではどうでしょうか?これはいまだに難しい課題として残っています。 東京では毎日のようにさまざまなテックイベントが開催されています。 コロナ禍になり、減ったとはいえそれでもまだまだ多くのイベントが開催されています。

そもそもなぜテックイベントは開催されるのでしょう? 人によって答えはさまざまだと思います。

  • 発表したい内容があるが発表の場がない
  • セルフ・ブランディングの向上のため
  • アウトプットを通して成長したい

などなど理由は千差万別だと思いますが、なにかしらイベントで発表すること、参加することにポジティブな理由があるはずです。 そして、そのためには継続的に開催されていることが重要になってきます。

「会場は用意したのであとはご自由に…」とやってもほとんどの場合利用されません。 そこで誰かがなにかをやり続ける必要があります、たとえそれが周りからみたときに バカバカしいものであっても継続することが最も重要なメッセージ になります。

コミュニティ運営者はボンジョビおじさん

次の動画はとある男性がBon Joviという有名なバンドの曲を一人で歌っていたものを紹介するYouTubeの動画です。日本ではボンジョビおじさんで調べるとさまざまな紹介記事が見つかると思います。 (あまりに有名でさまざまな動画で紹介されすぎているため、元動画かどうか自信がありませんがご容赦ください。)

ご存じの方もいらっしゃるのではないかと思うのですが、簡単に説明すると…。 最初は「一人で大声で歌っている変な男性」が毎日電車や町中で楽しそうに歌っていることで、周りも巻き込んだ大合唱になっていくストーリーを紹介したものになります。

日本でやったらめちゃくちゃ怒られそうな話ですが、それはさておき重要なのは「楽しそうにしていること」「継続しておこなっていたこと」です。 最初の一歩を誰かが踏み出してくれていれば、次に続く人の心理的負担はものすごく下がります。いわゆるファーストペンギンというやつですね。

コミュニティ運営も同じです。 「ここであなたが楽しいと感じていることをぼくたちに共有してくれていいんだよ!」という場を作ることで「誰かの楽しい」を「みんなの楽しい」へ昇華していくお手伝いをする場として機能すると考えています。

コミュニティの役目は教師ではなく伴走者

「コミュニティの勉強会に出ても成長しない」や「質の低い勉強会に参加しても意味がない」などの理由をフィードバックとして受け取ることもあります。 その意見も間違いではないと思います、では彼ら、彼女らがいう質を高めることはできないのでしょうか? これに対してコミュニティはフィードバックを通して成長することができます、結果として最初は質が微妙だったとしても1つ1つ改善を重ねていくことでより良いものにしていくことができると考えています。 これはプロダクト開発でも同じではないでしょうか?完璧だと思われる状態になってからリリースするよりも足りない機能はあるが必要最小限な状態でリリースするほうが結果としてよくなるケースがあるのはご存知だろうと思います。

0に何かをかけても0のままです、まずはこれを0から1へ増やす必要があります。 そのためには1に増やすためのきっかけとしての場としてコミュニティが重要で、誰かの最初の一歩を後押しする、なにかで困っているところに違う観点から情報を追加してあげる…そういうことができるのがコミュニティの強みではないかなと考えました。

さすがに電車で大声で歌うのは公共の迷惑になるのでおこなうつもりも推奨するつもりもありませんが、「楽しさ」を伝える場としてテックコミュニティはさまざまな立場のかた(年齢、性別、国籍などなど)が参加するので最適だと考えています。

コミュニティにさまざまなエンジニアのかたが増えることで、自分にはない新しい知識や刺激をもらえることで楽しさはより加速すると考えています。

ぼくはより多くのひとに参加してほしいですし、そのためには裾野を広げる活動が必要になります。 それはよりコミュニティの数が少ない、地方だからこそより重要性を増すと考えています。

これがぼくが地方コミュニティを運営する理由であり、大事に思っている理由でもあります。 なによりぼく自身がいろんなひとの登壇や会話を楽しみたいですし、それがエンジニアとしての成長につながっていくと感じています。

GoCon運営を経験したBefore/Afterで変わったこと

ここまでは、コミュニティに対する想いの話ばかりになってしまいました。 ここからは実際にGoConを運営してきて、その前後でどのような変化が生まれたか?感じかたが変わったのかなどを書いてみようと思います。

まず大きな点として他のテックコミュニティやご当地コミュニティと合同でイベントをおこなう心理的ハードルが下がりました。 1コミュニティではできないことも、複数のコミュニティの力を合わせることで実現することができるようになります。 いままでは自分たちだけでやろうと考える傾向が強かったです、これは相手のことを知らないこと、知らない相手との調整タスクが億劫だったことが原因です。 いやだって面倒じゃないです、面倒なことはやりたくないですし機械的に自動化できるものでもないので極力増やしたくなかったというのが本音です。 ところが、今回運営を経験しておもったことは「想定しているよりも調整タスクのコストが大きくはない」ということです。 これによって心理的なハードルがだいぶ下がりました。

合同で行なう例として、RustのコミュニテイとGoのコミュニティが合同でチュートリアルのハンズオンをおこなう。 あるいはそれぞれのメリット・デメリット、どういうユースケースでそれぞれの強みを出せるのか?を議論してみると面白いかもしれません。

また、関連するものとしてGoConという大規模カンファレンスを運営したことで、他のコミュニティと合同企画をする際にKyoto.goの運営メンバーがどういうことをやったかを説明しやすくなりました。 これは今後他のGo当地コミュニティと連携してなにかをおこなうときに活きてくるんじゃないかと考えています。

次に、Go当地コミュニティの各地域ごとの特色を知るよい機会になりました。 特に自身も参加していたUmeda.goの特色、強みをちゃんと理解していなかったということは少なくない衝撃を受けました。

Kyoto.goではどういう特色があるだろうか、出せていけるだろうか?ということがいま現在の悩みですが、これは参加するメンバーの傾向や運営メンバーの得意な方面などによって固まっていくものだと思うのでまだ時間がかかるのかなと思っています。 できるならば、京都は優秀な学生や留学生が多く住んでいるのでそういった多種多様なエンジニアが集まるテックコミュニティになってくれると嬉しいと考えています。 (こうやって書くと採用のための青田刈りのように見えるかもしれませんが、そういう意図はありません。コミュニティ活動は完全に個人の趣味でおこなってます。)

最後に、大型カンファレンスの運営メンバーになるには「ネームバリューがある優れたエンジニア」というイメージを持っていましたが、やってみるとあまり関係なかったなと感じました。 たまたま、そういうかたが積極的にカンファレンスやコミュニティ運営をされるケースが多いだけで、それよりは 途中で投げ出さない、しっかりと最後までやり抜くことができる かたが大事なのだと実感しました。 これは普段のチーム開発でも同じだと思うので、プロダクト開発もイベントプロジェクトも本質的な面では同じなのだなと思いました。 (余談ですが、タスク管理やスケジュール、MTGや進捗確認、タスク分割など開発の仕事で学んだことがそのまま活きたのでエンジニアのかたは比較的やりやすいと思います。)

まとめ

だいぶコミュニティやそれが大事にする文化に対する想いが爆裂してしまいました。 きっとここまでたどり着いたかたはレアキャラなのではないかと思います、ですが、偽らざる本当の思いを書いたつもりです。

お伝えしたかった内容としては、「一度途絶えてしまったテックコミュニティの文化は二度と元通りにならない。そのためには誰かではなく、コミュニティのみんなで文化を守り、必要であれば変えていってほしい」ということです。 休止しているコミュニティの復活するきっかけやきっかけを起こすための一言につながると嬉しいです。

昨今テックコミュニティが休止、解散してしまっており、せっかく芽生えたテックコミュニティの文化が失われています。 これは日本のソフトウェアエンジニアにとって大きな損失であると感じています。 いろいろと難しいこともあると思いますが、いままでと同じ方法が取れないのであれば変わることを恐れずに新たな形へ挑戦してもらえればと思います。 なぜ変えるのか、変えた先になにを望むのかをコミュニティのみんなで会話して、より良いものに変わっていければなと考えています。

最後にぼくが好きな有名なアフリカのことわざをご紹介して〆たいと思います。

「早く行きたければ一人で進め、遠くまで行きたければ皆で進め」

一人ではなく目指すべき遠い未来に向かって、Goコミュニティのみんなで進んでいきましょう! (タイトルにある「大事なたった1つの方法」はこれを紹介するためだったんですが、思ったよりも文章量がひどいことになってしまいました)

もしご興味があればKyoto.goにも遊びに来てください。最近は月イチペースで土曜の朝9時〜11時の間で開催しています :) https://kyotogo.connpass.com/

明日はMoney Forward Engineering Advent Calendar 2021 11日目、kenさんの 「ONNX形式のモデルを使ってみる」です。MLゴリゴリのお話と聞いてるので楽しみです。乞うご期待!

【宣伝】 今年もマネーフォワードの各種アドベントカレンダーに参加してます。 よければ見ていってください。


マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。

【サイトのご案内】 ■マネーフォワード採用サイトWantedly京都開発拠点

【プロダクトのご紹介】 ■お金の見える化サービス 『マネーフォワード ME』 iPhone,iPad Android

ビジネス向けバックオフィス向け業務効率化ソリューション 『マネーフォワード クラウド』

おつり貯金アプリ 『しらたま』

お金の悩みを無料で相談 『マネーフォワード お金の相談』

だれでも貯まって増える お金の体質改善サービス 『マネーフォワード おかねせんせい』

金融商品の比較・申し込みサイト 『Money Forward Mall』

くらしの経済メディア 『MONEY PLUS』