ブログ

KDH CUP 第1回プログラミング大会を開催しました

こんにちは、データサイエンティストの須藤です。

先日、私たちフライウィールが所属する KDDI Digital Divergence Holdings (以下KDH) グループ全体を巻き込んだ交流イベントとして「KDH CUP 第1回プログラミングコンテスト」を開催いたしました。

今回の記事では、そのイベントの様子をご紹介します。

開催の経緯

フライウィールでは、社員同士の交流を図るため、隔週金曜にTGIF (Thanks God It’s Fridayの略) というイベントを開催し、様々な企画を行っています。その中で、CodinGame というオンライン上で様々なプログラミングを楽しめるプラットフォームの中の Clash of Code を舞台としたプログラミング大会を行った回がありました。この回が盛り上がりを見せ、KDHグループを巻き込んで大会をやりましょう!となりました。

準備

企画・運営はフライウィールが主幹となって行いました。フライウィールからは主に、TGIFに企画を持ち込んでくださったエンジニアチームの米山さん、KDHグループ内の各種調整役としてコーポレートチームの佐々木さん、そして協力者として私 (須藤) の3名が、当日の進行やルール決め、告知の用意などの準備を進めました。

また、出場者側でも、KDH CUPの初代王者の称号をかけて様々な準備が行われていました。例えば、社内で毎週行われている、ランチの時間に技術的な話題をエンジニア同士で共有する「ランチテックトーク」にて「コードゴルフ」の話題が取り上げられました。「コードゴルフ」とは、打数の少なさを競うゴルフと同じように、できるだけ文字数が少ないプログラムを書く競技のことで、大会で行われる3種目のうちの第2種目「Shortest」に該当するものです。テックトークでは、プログラムを短く実装するための様々なテクニックが共有されました。

当日の様子

大会はオンラインでの開催でした。出場者と観戦者あわせて60名を超える方にお集まりいただき、賑やかな会となりました。そのうち、出場者は4社からエントリーした24名で、フライウィールからは9名が出場しました。また、KDHの藤井社長も観戦にきてくださり、注目度の高さが感じられました。

運営メンバーは会議室に集まり、進行や大会中の実況・解説などを行いました。エンジニア以外の方でも観戦を楽しめるよう、大会で何が競われているかや、大会の内容と仕事との関係、参加者のレベルがどれくらい高いかといった、トークも盛り込みました。

運営ルームの様子

Google Meet のスクリーンショット

大会は以下の3種目で競いました。

  • Fastest: 与えられた問題を解くプログラムを素早く実装する
  • Shortest: 与えられた問題を解くプログラムを短く実装する (コードゴルフ)
  • Reverse: 入出力例のみから問題を推測し、プログラムを素早く実装する

例えば、第1種目の Fastest で出題された問題は以下のようなものです。

問題
与えられた1行の文に含まれる文字のASCIIコードの合計を求めなさい。

入力例
KDH CUP Programming Contest

出力例
2434

この種目でトップだった方は31秒での正解でした!「さていよいよ始まりましたね」などとオープニングトークを挟んでいる間に正解されてしまうくらいのスピード感でした。

大会では3種目の結果による総合順位で表彰も行いました。順位の集計は、業務上のデータ分析でも使っている BI ツールである Tableau を用いて行いました。CodinGame 上の各種目の順位表から、ブックマークレットを使って抽出した順位情報をスプレッドシートに貼り付けて Tableau から参照することで、最小限の開発工数・手作業での集計を可能にしました。順位発表も、フィルター機能で順位表の上位をマスクして順に行いました。

総合優勝は、フライウィールの大村さんでした!ランチテックトークでコードゴルフの対策会を行われた方で、コードゴルフでも見事1位を取っての優勝でした。種目単位では各社から参加したエンジニアが上位に入る混戦模様でしたが、総合順位はフライウィールの上位独占となりました。若手からベテランまでが活躍を見せ、層の厚さを示すことができました。

Tableauで作成した順位表(抜粋)

優勝者インタビュー

見事、優勝した大村さんにお話を伺ってみました。

Q:優勝おめでとうございます!優勝されてのお気持ちをお聞かせください。

A:まさか優勝できるとは思っていなかったので、とても嬉しいです!普段の業務におけるプログラミングとは少し違った頭の使い方が必要な問題形式でしたが、対策会などを通して準備できたのが功を奏しました。

Q:グループを巻き込んだ初めてのプログラミング大会でしたが、大会についての感想をお聞かせください。

A: ただ問題を解くだけでなく、普段なかなか関わる機会のないグループ内の他企業の方と一緒に盛り上がることができたのがとても良かったです!これを機に、会社を超えたグループ内コラボレーションがさらに加速すると良いなと思います。

Q:第2回に向けて、意気込みをお願いします!

A:今回の大会が大変盛り上がったこともあり、第2回はさらに出場者が増えるのではと想像しています。その中でもまた良い結果を残せるように、日々研鑽を重ねていきたいです。第2回の開催を楽しみにしています!

次回開催に向けて

出場者・観戦者を対象としたアンケートでは、満足度の平均が9.2点 (10点満点) とポジティブなフィードバックを多くいただき、第2回も開催される流れとなりそうです。大会に参加してくださった他社の方からは「打倒フライウィールを目指して内部大会を行う」などの声もいただき、次回はフライウィールが追われる立場になりそうですが、今後もこうしたイベントを通じて企業間の交流を楽しみつつ深めていきたいです。