兼ねてから社内ではアワードコンテストをはじめプロコン大会など技術イベントが開催されてきましたが、ISUCONのような業務でやっていることに近い内容のイベントを社内で開催できたら面白いだろなと思っていました。
そこで、ちょっとした賞金も出せるように企画し実施したので、運営として工夫したことや所感を書きたいと思います。
参加してもらえるようにはどうしたらいいか?
まず、コンセプトを練り、こういった趣旨は下記をかかげて、会社に企画プレゼンをしたら、
- 社内コミュニケーションの活性化
- 技術を使ったレクリエーション
- 切磋琢磨してモチベーションアップ
- 現状を知る機会を創出
「いいんじゃない」とふたつ返事で開催と賞金周りの予算調整を含め、協力と理解を得ることができました。
弊社の特徴としては、受託開発・実証実験向けのPoC・保守・開発チームビルディングを含んだアジャイルでの開発など、弊社の仕事の特性には多様性があって、普段なかなか交わらないメンバーもいたりします。
そういう中で、普段関わらないメンバーとチームを組んだり、以前に一緒のプロジェクトメンバーだった人とやるのは面白いんじゃないか?、といった、どのようなチームができあがるかを想像するのは、遠足や旅行の時のように当日までの楽しみの一つでした。
やったこと
参加申し込みのポスターを作った
お手製のポスターを通路口に貼り、参加チームを書き込んでもらうようにしました。
声かけ
開催日は半日ほど時間を使いますので、早めに仕事の調整をつけてもらえるように、ひとりひとり声かけしながら開催に向けて準備していきました。この地味な活動により想定以上の参加率となりました!
環境
Y!ISUCONを使わせていただき、AWS上に立てました。 参加者用のインスタンスはAMIを立ち上げたら実行できるようにし、ポータルとベンチマークはTerraformで構築できるようにしておきました。 GitBucketも用意しましたが、当日に認証系設定がうまくいっていないことがわかり、時間を少しロスさせてしまい、もったいないというか申し訳なかったです。
レギュレーション
事前にISUCONがどのようなものなのかといった説明は、社内のWikiにページをつくり展開し、質問はチャットや口頭で受付て、公平性を担保できるように、質問内容と回答は全チームにむけてチャットで展開しました。今回はけっこうローカルルールも運営判断で取り入れました。また、自前でISUCON問題や環境までは作成できなかったので、ネタバレしないように、「Y!ISUCONだけは参照しないでね」と伝えておきました。
当日を迎えて
レギュレーション説明とスケジュールをした後、チームに自由に時間を使ってもらいました。
ベンチマークを走らせてすぐに各チームの結果がわかるからか、楽しそうに戦略たて進めていました。
あるチームが、ベンチマークを短い間隔で定期的に走らすということをしたり、終盤は各チームがベンチマークを回しまくるので、ベンチマークサーバーを増やし並列実行できるようにしました。
スナップショット
結果
最後劇的な順位入れ替えはありませんでしたが、戦略がうまくいった1チームが更に飛び抜けて高得点を叩き出し、それ以外は激戦でした。少ない時間でしたので、まだまだやれることやりたいことはあったようで、競技が終わった後もチューニングを楽しんでスコアが伸びたことに満足して一日を終えていた方もいました。
まとめ
運営として一日を過ごしてみてみましたが、参加者としては事前準備も必要なく、始めからみなさん楽しそうにしていて、穏やかな一日を過ごすことができ、準備やチームを募るところはそれなりに労力がかかりましたが、やってよかったなと感じました。
今回は仕事の都合で参加できなかった方もいましたし、また次回も開いてくださいという声もあったので、普段の仕事とは違う楽しみとして、またこんな企画を定期的に開催していきたいです!