読者です 読者をやめる 読者になる 読者になる

LocoPartners 開発ブログ

LocoPartners 開発者達によるブログです

はじめての開発合宿

こんにちは。Loco Partners が運営する relux でサーバサイドエンジニアを担当している山口です。 最近は slither.io にハマっており、最高記録は 27,000 台 です。スルメイカみたいなゲームなので帰宅後に挑戦されることをお勧めします。

弊社では、先日 4/15 (金) - 4/16 (土) にかけて、箱根湯本の旅館 ホテルおかだ 様ではじめての開発合宿を開催してみました。 とても楽しい合宿になったこと、組織としても個人としても多くの学びがあったことから、今回はそのことについて報告と振り返りを兼ねた記事として纏めたいとおもいます。

f:id:loco-dev:20160421170745j:plain

事前準備

はじめての開発合宿を開催するにあたり、そもそも何を決めておく必要があるか分からなかったので、最初は開発メンバーに対し どんなことがやりたいか?, どこに泊まりたいか?, 都合は何時がよいか? など漠然とした状態でヒアリングを行ってみましたが、「あんなこといいな。できたらいいな。」状態になり纏まるものも纏まらず。イキナリ失敗をしました。。。

上記の失敗を踏まえて下記のことを実施しました。

開発合宿の目的をハッキリさせる

弊社では、緊急度が低いタスク、不具合については手が空いた時に行なうということになり後回しになりがちです。 しかし、手が空いた時という状態は中々訪れず、気付くと緊急度の低いタスクや不具合が山積みになっているという課題が発生していました。 この課題を、纏めた時間を確保することで一気に集中して片付けることを、今回の合宿の第一目的としました。

目的の決定後、relux 本体, アプリ, デザイン, バックヤードのシステム といったようにカテゴリを分け、誰がどのカテゴリを担当するかを設定。 次に、山積みになっているタスクの中から優先度が高いタスクを合宿用に抽出し、課題の候補が出揃ったところでメンバーへ目標として妥当かを話し内容を調整しました。

並行して、開催場所、開催日、当日スケジュール については主導する自分のほうでブワっと決めてしまいました。

宿泊施設について

限られた予算で良い宿に泊まりたい!という思いから時間をかけて必死に探していたのですが、中々良いところが見つからず苦労していました。 しかし、弊社が運営するサービス relux の魅力のひとつ コンシェルジュ機能をささえる コンシェルジュチーム の折笠さんに相談を行ったところ、半日もしないうちに我々が求めていた施設について纏められた立派な資料が返送されてきました。コンシェルジュ凄いです!

開発合宿にかぎらず合宿を検討されている読者の皆様は一度弊社のコンシェルジュまで御相談頂ければと思います。

さらに、関東ITソフトウェア健康保険組合に加盟されている方は同組合内の保養施設 を利用することで、よりコストを抑えつつ良い施設に宿泊できる可能性があるようです。合宿を検討されている方はこちらも是非検討してみてはいかがでしょうか。

差し込みタスクについて

開発チームと運用保守チームが分かれているような会社の場合は別なのかもしれませんが、弊社の技術部では基本的に開発/保守/運用を全て 1 つの技術部が行います。 例えば新規不具合が見つかると、不具合報告用のチャンネルにエンジニア宛へ報告が入り、 優先度が高いもの工数が少ないもの であれば直ぐに対応してしまうといった形をとっています。

しかし、これを合宿中については緊急度が高いものだけに抑えてもらう。かつ、合宿中の問い合わせ窓口担当も技術責任者の古田さんと自分で担当する。 という策を用いることでメンバーが当日の課題に集中して向き合えるようにしました。

もちもの

プロジェクター等は施設によっては追加費用が発生することもあるので、もし利用を検討する場合は事前に確認をとり追加費用が予算的に許容出来ない場合は自前で持っていくと良いかもしれません。電源コンセントについても施設側に確認をとり、コンセントが足りない場合は自前で蛸足コンセントを持って行きましょう。また、開発中の飲食物に関しては現地で買うことで移動中少しだけ楽が出来てオススメです。

合宿について全部署に知らせる

当然ですが、開発合宿で何日から何日まで開発一同が現場から居なくなる旨をきちんと伝えましょう。

合宿当日

新宿駅に集合

新宿駅から箱根湯本駅まではロマンスカーで移動。事前予約を行っていたのでメンバーへ座席についてアナウンス。 ちなみに、ロマンスカーは事前に特急券についてネット予約を用いて購入することが出来ます。便利!

f:id:loco-dev:20160421174305j:plain

f:id:loco-dev:20160421173206j:plain

朝早かったですがわりと皆元気でした。 f:id:loco-dev:20160421180711j:plain

富士山だ!

f:id:loco-dev:20160421172622j:plain

箱根湯本駅到着

f:id:loco-dev:20160421173131j:plain

90 分ほどすると無事に箱根湯本駅へ到着することが出来ました。 空気が綺麗なような気がする。

合宿中につまむお菓子を最寄りのコンビニで調達し、旅館までタクシーで移動 目の前には川が流れており凄く気持ちがいい。

チェックインが 14:00 からだったので、まずは荷物を持ったまま会議室へ移動 話しに伺っていた全面ホワイトボード会議室に喜ぶ。

合宿開始

はじめに、事前に共有していた開発合宿中に行なう課題について再度共有を行いました。 その後、release ブランチから gsk(合宿の略) という合宿用のブランチを作成し、合宿中の作業についてはそこからブランチを作成、マージしてもらうようにしました。

説明が終わったあとはもくもくと作業開始。

昼食は、旅館最寄りの蕎麦屋 箱根 暁庵(はこね あかつきあん) に伺いました。 門構えから美味しさが伝わってきたので、力をつけるために大盛り + 天麩羅盛り を注文して 1 食 ¥2,970 になりました。ちょっと調子に乗り過ぎました。

f:id:loco-dev:20160421172713j:plain

蕎麦 * 天麩羅盛り f:id:loco-dev:20160421183125j:plain f:id:loco-dev:20160420203350j:plain

昼食後は辺りを散策して 箱根ベーカリー 箱根湯本本店 へ。 おみやげのジャムと午後のおやつにパンを買いました。こちらもとても美味しかった。

f:id:loco-dev:20160421171551j:plain

その後、玉簾(たまだれ)の滝へ向かいました。 この玉簾の滝にはアヒルが住んでいて、我々が訪れた時はちょうど日向ぼっこをしていてとても可愛かったです。 可愛かったので触ってみましたが、凄く嫌がられクチバシで噛み付こうとされました。

アヒル君達。かわいい f:id:loco-dev:20160421171040j:plain

f:id:loco-dev:20160421171125j:plain

滝の前でドヤる f:id:loco-dev:20160421171204j:plain

神社 f:id:loco-dev:20160421171419j:plain

作業再開

お昼休み後に作業を再開。

館内は WIFI が行き届いているので、好きな場所で作業をすることが出来ました。

風呂あがりに室内茶屋のような場所で食べ放題の漬物を食べながら作業したり、足湯しながら作業を行なったりかなり快適でした。

f:id:loco-dev:20160421172416j:plain f:id:loco-dev:20160421172144j:plain

ちなみに、足湯は夜になると利用できなくなりますがイルミネーションで彩られて綺麗です。

f:id:loco-dev:20160421172129j:plain

夕食

夕食は和食が用意されておりこれも美味かったです。

一通り飲んで食べて落ち着いたあと、tomorrow never knows をリクエストされて歌う古田さん。

f:id:loco-dev:20160421172003j:plain

とても楽しい夕食だったのですが、失敗した点としては楽しくなって自分が勝手にビール +8 本, 烏龍茶を +1 本を頼んでしまいました。篠塚社長すいません(あんまり思ってないけど...)真面目な話をすると、事前に計画した予算以外のお金になるので、当たり前ですが会社へきちんと確認をとるべきでした。これで激怒する人間は弊社にはいないのですが、皆で頑張って作った利益を消費することになるので予算意識は大切です。

夕食後

お風呂後に合宿再開。課題を集中して片付け早目の就寝で明日に備えるメンバーもいれば、布団に横になり深夜まで緩い感じで作業をするメンバーがいたり様々なスタイルがありました。

f:id:loco-dev:20160421173854j:plain

大抵の人が一度アルコールが入ると結構緩くなってしまうので、この辺についても事前に「何時まではアルコール無しでやりましょう!」という決めを作っておくことも必要だったかなと思います

合宿 2 日目

起床、作業内容のデバッグ

f:id:loco-dev:20160421175824j:plain

バイキング形式の朝食を頂いたあと、ダッシュで朝風呂を浴びて 2 日目をスタート。 2 日目は前日までの作業内容をリリース用のブランチにマージしてデバッグを行い、問題が見つかったものについては除外しました。本来は各チームからの作業内容の共有までを行いたかったのですが、この辺のタイムスケジュールを計画として詰め切れていなかったこと、自身もデバッグを行うことに夢中になり運用を上手く行えていなかったことから、最後はかなりバタバタしてメンバーに迷惑をかけてしまいました。申し訳ない!

会社へのお土産を購入しチェックアウト。 最後は皆で記念撮影。ホテルおかだ の皆さん!本当にお世話になりました!

f:id:loco-dev:20160421174532j:plain

アクティビティ

合宿終了後、箱根湯本最寄りの BBQ 施設 Wimpy へ行きました。雨天決行も可能でネット予約も出来ます! ワイルドな調理器具を利用して本格的な BBQ 体験を行なうことが出来ます。

f:id:loco-dev:20160421174108j:plain f:id:loco-dev:20160421174212j:plain

本当に美味い!焼きそばとかもあるよ!

f:id:loco-dev:20160421180218j:plain f:id:loco-dev:20160421180202j:plain

BBQ 終了後も、時間に余裕があったため改札前集合にして自由行動にしました。 大体のメンバーが河原まで散歩をして楽しんでいました。 f:id:loco-dev:20160421180047j:plain

僕は何人かでルノアールで将棋をしていました。 f:id:loco-dev:20160421173923j:plain f:id:loco-dev:20160421180033j:plain

一通り自由行動を満喫したあと集合し、行き同様にメンバーへ座席についてアナウンスを行いました。 帰りのロマンスカーに乗車後爆睡するメンバー。

f:id:loco-dev:20160421174453j:plain

新宿駅に到着後、最後に改札前の邪魔にならないところへ集合。 主催者である私と技術責任者の古田さんからメンバーへ〆の一言をのべて解散。

主催者側の準備が未だまだ不足しているところ多かったですが、一生懸命盛り上げに協力してくれたメンバーには本当に感謝です。

合宿の報告

翌週の月曜日。開発合宿でどれ程の成果を出すことが出来たかを、開催に協力頂いた会社の皆さんを集めて各チームの代表から共有しました。1 日技術部全員が現場から居なくなるということを事前に説明を行っていたとはいえ、かなりの不便を強いただろうなと思います。本当に感謝です。

f:id:loco-dev:20160421175910j:plain f:id:loco-dev:20160421175925j:plain f:id:loco-dev:20160421175940j:plain f:id:loco-dev:20160421180001j:plain

さいごに

いつもと違う場所で精神的な面でも楽しく作業ができたことは勿論ですが、やはり差しこみタスクによるコミュニケーション量を調整したことがメンバーの集中力と日当たりの成果を向上させた一番の要因だったのではと思います。コミュニケーション量の調整は日常の開発にも取り入れることが可能なので、このことについて改善を行えば合宿に近似した効果を日常でも出すことが出来るようになかもしれません。

また、何事もそうですが事前にきちんと計画を行なえたか、イレギュラーを想定できているか、計画を正確に運用できたかで効果に差が生まれると思います。読者の皆様で合宿を検討されている方は、是非当記事も参考にして頂きながら楽しい合宿を開催して頂けたらと思います!

そして、弊社では技術者採用を積極的に行っています。興味を持たれた方は是非一度オフィス見学にでもお越しください!