LIVESENSE ENGINEER BLOG

リブセンスエンジニアの活動や注目していることを発信しています

Livesense式 開発合宿マニュアル part1

Analyticsグループの大政です。
普段はデータ分析基盤や、レコメンド・エンジンの開発をしています。

開発合宿、やっていますか?
Livesenseでは、仕事の一環で開発合宿をすることもあれば、有志で集まって週末に開発合宿をすることもあります。
これまで5回ほど有志で開発合宿を行ってきた経験を元に、開発合宿を成功させるためのノウハウをお話したいと思います。

今回は、(1)なぜ開発合宿をやるのか、(2)どんなスタイルがあるのか、(3)おすすめの施設はどこかについてご紹介したいと思います。

なぜ開発合宿をやるのか

そもそも、なぜ私たちは開発合宿を行っているのでしょうか。
会社で開発合宿の予算をもらいたい、となった時に「はて、どんな意義があるんだっけな」と考えてみたり、偉い人に伝わる言葉で説明するにはどうしたらいいだろうか、と悩むことがあるかもしれません。

開発合宿を実施する目的によって多少の違いはあると思いますが、私は以下の5つの意義があると思います。

  • エンジニア同士の横のつながり
  • ノウハウの共有
  • まとまった開発時間の確保
  • 環境を変えて、発想を変える
  • 楽しい

エンジニア同士の横のつながり

会社が一定の規模になると、同じ部署なのに他のチームのエンジニアと関わりが薄く、 ほとんど話したことがない人がいるというケースがあると思います。
困ったときに相談をしたり協力をお願いしたりする場合、知らない人よりも知っている人のほうが心理的なハードルが下がります。
この横つながりを開発合宿で作ることができます。 新しいつながりだけでなく、もともと知っている人でも、合宿を通して意外な一面が見えたり、価値観を深く理解する切っ掛けにもなります。 また、こうしたつながりが組織を超えたノウハウの共有につながります。

ノウハウの共有 (弱い紐帯の強み)

複雑ネットワークの分野で、社会学者のマーク・グラノヴェッターが「弱い紐帯の強み」という性質を提唱しています。
普段親しい人々のつながり(強い紐帯)よりも、あまり関わりのない人々のつながり(弱い紐帯)のほうが、 情報の冗長性が低く、新しい有益な情報を得られやすいというものです。

小難しいことを書きましたが、要するに異文化交流で新しい学びを得よう、ということです。 チームが違うだけで文化や共有されている情報も違うので、あなたの知らないノウハウが眠っている可能性があります。 チームを超えた活動は、新しい有益なノウハウを共有するつながりを構築している、ということになるのです。

ここまでは、組織的な視点でしたが、有志の合宿でメンバーが集まる理由ももちろんあります。

まとまった開発時間の確保

私が開発合宿を開催した時によく聞く参加理由は、「まとまった時間が確保できる」というものです。 新しい技術を試そう、いつかやりたいリストに溜まっているアレをやろう、と思いつつ、 なかなか行動にうつせないのが人情です。
1泊2日の開発合宿で、大体10~15時間ほど開発できます。 開発に集中できる環境で、周りに相談できる人もいるため、合宿を上手に利用していらっしゃる方が多いです。

環境を変えて、発想を変える

また、普段とは違う環境で作業したり、接点の少なかった人と相談することで、 いつもとは異なる感性を刺激されたり、新しい発想を得られたりといったこともあるようです。 開発合宿をサポートしてくれる宿やレンタル・スペースは、温泉地であったり海の近くであることも多く、気分転換にもなります。

楽しい

最後に、エンジニアが集まれば技術の話題に花が咲き、共通の話題で盛り上がります。
お酒が好きな方はお酒を片手に、ボードゲームが好きな方はワイワイともりあがり、夜も開発したい方はずっと開発していられる。自分の好きなことを一緒にできる仲間がいると楽しいですよね。
参加者のみんなで楽しい合宿にしようとするので、私は楽しかった開発合宿しか経験したことがないです。

ここまでは開発合宿の意義についてお話してきました。
いざ開発合宿をしてみようと思ったときに、合宿会場を探す必要があります。
会場の選び方で随分合宿のスタイルが変わります。続いて開発合宿のスタイルについて比較していきます。

合宿のスタイル比較

開発合宿にはいくつかのスタイルがあると考えています。

  1. 初心者向け
  2. こだわり派
  3. 自由度重視

初心者向け

◎ 開発合宿プランを提供する宿

初めて開発合宿を行なう場合は、開発合宿プランを提供する宿泊施設で実施することをおすすめします。
宿によってはWi-Fiが提供されていなかったり、合宿参加者全員で集まれるような会議室がなかったり、PCの充電アダプタが全部させるような延長コードが準備されていなかったりします。
その点、開発合宿プランを提供してくださる宿泊施設は、必要な物は一通りそろっています。
PCと充電アダプタさえ持っていけば困りません。

プロジェクタやホワイトボードも完備しているところもあるので、 事前に比較して宿泊施設を選ぶとよいでしょう。

こだわり派

◎ レンタルスペース + 近場の宿

開発時はコワーキング・スペースやレンタルスペースを使って、夜は別の宿に泊まるという方法もあります。
開発合宿プランを提供していない地域でも実施できるため、 「景色の綺麗な場所で開発合宿をしたい」など、こだわりが強い場合に向いています。 宿泊施設では飲食をしたり、ボードゲーム等で遊ぶなど、昼夜に切り替えたい場合は良いかもしれません。

自由度重視

◎ 一軒家

人数や期間にも寄りますが、一軒家で開発合宿をするという選択肢もあります。 同僚の自宅や知人の家や、Airbnb等を利用することもできるかもしれません。 一軒家で実施する場合は、食事やアメニティーグッズなどは全て自前で準備することになると思いますが、 他の宿泊客への遠慮は必要なく、皆でリビングに集まってのびのびと開発することができるでしょう。
ホワイトボードなどの設備や、人数の上限が低めなので、条件は厳しいかもしれません。

おすすめの開発合宿施設

これまでの経験を踏まえておすすめの開発合宿施設を4つご紹介します。

  1. 伊豆伊東 山喜旅館

    開発合宿といえば山喜旅館と言っても過言ではないほど利用されています。
    開発合宿プランを提供しているため必要なものは大体揃っており、会議室も借りることができます。 昔ながらの温泉旅館で、海も近くて気分転換もできます。

  2. 湯河原 おんやど恵

    昨年から開発合宿プランを提供を始めた温泉旅館です。 充実したアメニティ、豪華な料理、足湯、高音質なスピーカーやボードゲームも完備しており、 最高の環境で開発合宿ができます。 開発合宿モニタープランを利用すると、宿泊料金が最大50%OFFになりお財布にも優しいです。(2016/11現在)

  3. 金谷 まるも

    昨年にオープンしたばかりのコミュニティスペースです。
    大きなスピーカーに、いつでも飲める挽きたてのコーヒー、屋外のテーブルやソファーなど、 普段とはちょっと違う、でも心地よい空間です。 山と海に囲まれており、新鮮な魚介類が食べられるのも魅力的です。 夜は古民家ゲストハウス「しへえどん」を利用しましたが、一軒家のためのびのびと過すことができます。

  4. 日光 はじめのいっぽ

    山喜とならんで、よく利用されているペンションです。
    囲炉裏で食べるご飯がとても美味しく、食堂を会議室のように使うことができます。 秋には近隣の山の紅葉も楽しむことができ、時間が許せば日光東照宮で気分転換しても良いと思います。

まとめ

part1は以上です。 いかがでしたでしょうか。少しでもみなさんの参考になれば幸いです。 part2では、結果の残る開発合宿にするノウハウや、持ち物リストなど、より実践的な内容をご紹介したいと思います。