社内ISUCONを開催しました


ISUCON6まであと2週間となり気分が高まっているISUCON大好き伊藤です。
前回の記事 ISUCON社内勉強会はじめました で予告した通り、社内ISUCON (通称:ISHOCON) が開催されたので、その様子を紹介をしたいと思います。

概要

日程: 2016年8月26~31日 (6日間)
参加者: MMM のサーバーサイドエンジニア4人
問題: showwin/ISHOCON1
ポータルサイト: iwashi/private-isu-portal
参加形式: 個人戦

1日使って制限時間8時間で実施する予定でしたが、運悪く業務が忙しい時期と重なってしまい、営業日を丸々1日使うことが困難であったため、6日間の期間を設けて各自空き時間を見つけて取り組むことにしました。
Yahoo! JAPANさんの社内ISUCON では1週間の長期戦にして良かったと書かれていますし、社内ISUCON前に問題を予習してから取り組みたい(笑)という社員がいたこともあり、弊社も社内ISUCON長期戦に踏み切りました。

参加形式を個人戦としたのは、長期戦であるためにチームで連携して取り組むことが難しいことと、そもそも社員の人数が多くないためです。

結果


結果はこのようになりました。
1位と2位の緑色(Go実装)と青色(Ruby実装)は、改善した内容はほとんど同じだったのですが、ボトルネックを解消し切ってしまったために実装言語のパフォーマンスによる影響が強く出てスコアに1.8倍ぐらいの差が現れる結果となりました。
長期戦ではなく、制限時間を8時間にするといくつかのボトルネックが残ったままになり、実装言語差はあまり出なかったかもしれません。

反省会

競技終了後に1時間半程度の反省会を行い、各自どのように高速化をしたのか話し合いをしました。

スコア結果グラフのオレンジ色と赤色の人たちは、プロファイリングツールの使い方を忘れてしまい、どこがボトルネックなのかを頭の中で考えながら高速化をしていたようです。社内ISUCON前に行なった勉強会でプロファイリングツールの紹介は行なったのですが、もう少し詳しく丁寧に解説をしておくべきだったと反省しています。

青色の方はブログ記事 (社内ISUCONに参加した。) を書いてくれました!
過去2回ISUCONに参加されているだけあり、勉強になる改善方法がいくつもありました。

緑色はぼくです。出題者が負けることにならなくて良かったです…。
反省会で使用したスライドをアップロードしましたが、口頭で解説する時の補足資料として作ったのでスライドの説明が雑です。すみません。
今回はGo実装で挑みましたが、資料にはRuby実装の場合の改善方法/スコアが書かれています。

ISUCON6 に向けて

昨年のISUCON5は社内のメンバーで 独身リモートワーカーズ(38歳) というチーム名で参加しましたが、今年も同じメンバーで 今年も独身リモートワーカーズ(39歳) というチーム名で参戦します!チーム連携の練習のために catatsuy/private-isu を練習問題として来週あたりに取り組もうかと考えています。
今年こそISUCON決勝進出するぞ!!!

現在MMMではISUCONに興味があるエンジニアも興味がないエンジニアも大募集中です!フロントエンドからバックエンドまで幅広く採用活動を強化中ですので、興味がある方は是非ご連絡ください。独身の方でも既婚の方でも大丈夫です!!!
株式会社MMMの採用/求人一覧 - Wantedly

このエントリーをはてなブックマークに追加