Retty Tech Blog

実名口コミグルメサービスRettyのエンジニアによるTech Blogです。プロダクト開発にまつわるナレッジをアウトプットして、世の中がHappyになっていくようなコンテンツを発信します。

プログラミングコンテスト「Rettyグルメオープン」を開催しました

マネージャーの常松です。5月から7月にかけてプログラミングコンテスト"Rettyグルメオープン"を3回開催しました。 どのような背景で企画したのか、考えたコンテンツ、実施してみての学びを紹介したいと思います。

背景

f:id:tune:20210823101656p:plain

始まりは採用活動の悩みからです。Rettyでは新卒を会社の文化形成・成長を担う重要な役割と位置づけ、新卒採用を行なっておりますがもっと多くの学生に出会いたい、接点を持てていなかった多くの学生にRettyのことを知って欲しいと常々考えておりました。採用イベントへの参加や、サマーインターンの開催も行なっておりますが、コンテンツ作りはいつも悩んでいます。

インターン期間を短くすると多くの学生を受け入れることができ、接点を増やすことができますが、会社を一方的に説明して終わりになってしまいます。 数日にわたるインターンはRettyで働く実際のところをよく知ってもらえますが、学生側も参加ハードルが高くなり、受け入れる企業側もコンテンツの用意、サポート社員の工数など軽くはありません。結果としてたくさんの学生を受け入れることが難しくなります。

もっとRettyの開発を知る機会を増やせる、良い手立てはないものでしょうか。

プログラミングコンテンストを開催しよう!

そこで今年挑戦してみたのがプログラミングコンテストの開催です。

  • 半日で開催できる。
  • 参加者が増えても大丈夫。
  • リモートが当たり前となった今では、地方からも海外からも参加できる。

とメリットづくめです。

「Rettyの普段の業務で求められるスキルや知識が体験できる」ことを踏まえた結果、下記のルールとなりました。

f:id:tune:20210823094952p:plain
優勝ペアにはグルメギフトをプレゼント

  • 問題は3問で、解くとRettyのURLを構成する一部がわかるようにした。全て解いて特定のクチコミを指すURLを見つけることがゴール
  • Rettyらしく優勝者にはグルメギフトをプレゼント
  • 正解URLを見つけるのが第一。プログラミング以外の手段で解決しても良い。

競技プログラミングのようなアルゴリズムを問う問題ではなく、Rettyの業務で出会うような課題解決を出題しました。 過去の出題と模範解答はGitHubでも公開しています。

GitHub - RettyInc/RettyGourmetOpen: Retty Gourmet Openの過去出題・解説・模範解答など

参加した学生から難しかった(面白かった)とコメントがあった問題例をいくつか紹介しておきます。

開催で工夫したこと、開催しての学び

参加する全ての学生に楽しんでもらえるよう、実施にあたって下記の工夫を取り入れました。

f:id:tune:20210823094718p:plain
Discordチャンネルの様子

  • 運営はDiscordを使う。
    • テキストチャットと音声チャットが融合しており使いやすいため。
  • 学生にはペアを組ませて問題に取り組んでもらう。
    • 一人では解けなくても相談ができるようにした。
  • 参加者が楽しんでイベントに参加できること。
    • 問題難易度は難しければ良いのではなく、ちょっと背伸び・頑張れば解けるぐらいにしたい。
    • 一方で時間内に全問解けて手持ち無沙汰になられても困るので、追加問題を用意するなど対策を取る。
  • どのプログラミング言語を使っても解けるようにする。

結果として3回の開催で50名ほどの学生に参加してもらえました。中にはリピート参加者や、海外からの参加者もいます。また友人を誘って参加してくれる学生も少なからずいたのは予想外でした。

運営側の負担は少なく抑えることができ、回を重ねるごとに型ができて準備するものの多くが流用できるようになりました。問題をきちんと用意しておけば当日はわりと楽に運営ができます。

問題難易度の設定が難しく、問題に詰まっている時にどこまで助けてあげるかは3回開催した今でも悩んでいます。 「誰もがちょっと背伸び・頑張れば解けるぐらい」の難易度なので、学生も自力で解けると感じており、頑張りたいと思ってくれていました。 一方で3時間の競技時間で1問しか取り組んでもらえないのも開催側としては残念で、「営業時間は24時過ぎるケースがあるけど、プログラミング言語の日付処理ライブラリは24時以降の表記を扱えずエラーになることがあるよ」といった、ちょっとしたアドバイスで解決するつまづきが多いなと感じました。 「お助け券・お助けチャンス」のような仕組みも入れてみましたが使ってくれる学生が現れなかったため、運営側から制限時間を設けて強制的にアドバイスをしたり、ヒントを公開していくのが良いのではないかと思っています。

f:id:tune:20210823094830p:plain
第一回懇親会の様子

競技後は懇親会も開催しました。学生が興味を持てるトピックを探りながら改善を繰り返したところ、下記のトピックに行きつきました。

DiscordサーバーはRetty主催のイベント・勉強会で継続利用していければと考えていますが、うまく生かせている手応えはまだありません。 もう少し盛り上げ方や情報の伝え方を考えると良いのかなと考えています。

今後

学生からも好評のうちに終わったRettyグルメオープンですが、8月〜9月はサマーインターンを実施するためひとまずお休みとなります。

こういう取り組みは長く続けてこそ認知度が上げられると思いますので、次回以降も学生が楽しめるような問題とグルメギフトを用意しておこうと考えております。