ISUCON社内勉強会はじめました

ISUCON まであと6週間となり徐々に気分が高まっている ISUCON 大好き伊藤です。
昨年の ISUCON5 で初めて ISUCON に参加したのですが、目標の決勝進出が果たせずに悔しい思いをしました。詳しくは ISUCON5予選と自作ISUCON をご覧ください。

今年ももちろん継続して決勝進出を目標にしているのですが、それだけではなく社内の多くの方にも ISUCON の楽しさを知ってもらうことも目標としていて、今年は (自称) ISUCON 普及委員長を担当しています!
昨年の ISUCON 事前勉強を通じてプロファイリングの能力やミドルウェアの知識が身に付き、それが業務に役立つことも多々あり大変価値のある経験だったと感じたため、社内全体の技術力底上げの意味も含めて普及活動をしています。(というと聞こえが良いですが、実際は単純に趣味の強要です!笑)

勉強会の進め方

勉強会は ISUCON の本番までの6週間、週に1回1時間行いスケジュールは以下のように考えています。

日程 内容
8/4 ISUCON 基本戦術
8/18 1日使って社内 ISUCON
8/25 ISUCON5 の高速化方法を語り合う
9/1 未定
9/15 ISUCON 予選直前打ち合わせ
9/17,18 ISUCON 予選本番

勉強会には ISUCON 経験者4人、未経験者3人が参加して頂けることになったため、第1回の勉強会は未経験者向けに ISUCON の戦い方の基礎知識を伝えることを中心とした内容にしました。具体的には、事前にマシンイメージが用意されていて、それを使ってインスタンスを立ち上げますよというルールの基本的な部分も含め、高速化のためにはプロファイリングツールを使用してログをしっかり読みボトルネックを発見することが大切ですというような話もしました。(資料をあげられると良かったのですが、内部者向けのURLをたくさん書いてしまって失敗しました。)

1時間の勉強会では細かな高速化の手法まで話をすることは難しいため、社内の情報共有ツール esa に蓄積されている去年の勉強成果を各自で読んでおいてもらうことにしました。

社内ISUCON

基礎体力を付けてもらった後で 8/18 に業務時間を1日頂いて社内 ISUCON を実施することにしました。実施の目的としては、頭で理解するだけではなくて、実際に手を動かして高速化してみることで知識を自分のものにして頂きたいということと、もう一つは単純に他人とスコアを競い合って楽しんで欲しいという2点です。
社内 ISUCON の問題は昨年ぼくが自作した showwin/ISHOCON1 を社内向けに少し改良したものを使用し、スコアを表示するポータルサイトは iwashi/private-isu-portal を利用させてもらいました。(2時間ぐらいでポータルサイトの準備ができて大変感謝です。)

普段インフラやバックエンドを触らないフロントエンドエンジニアの方も参加予定なので、AWS でのインスタンスの立ち上げ方なども手厚くサポートして、普段の業務では関わらないような分野の作業も経験して頂きたいと考えています。
また、本番の ISUCON と異なる点として、大会中にはリアルタイムで高速化のヒントを出す予定です。「社内 ISUCON に参加してみたけど、ほとんど高速化できずに全然楽しくなかった。。」で終わってしまっては時間の無駄になってしまうため「なるほど!この変更を加えるとこれぐらい速くなるのか!」と実感していただいで、少しでも得るものが多くなるような社内 ISUCON にしたいと考えています。

次回の記事では社内 ISUCON の実施レポートをお届けできればと思っていますので、ご期待ください!

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