ちょっと遅いですが、明けましておめでとうございます。
2015年が始まりました。
去年から新卒のエンジニアも採用するようになり、徐々に開発部(ベーシックでのエンジニアがいる部署名)のメンバーは増えてきているのですが、メンバーそれぞれはやっていることが結構違うので、去年は普段の業務の中ではほぼ関わり合いがなく、横のつながりを作る事があまりできませんでした。
これからさらにエンジニアが増えていく中、このままの状態で人が増えてもチームとして力が発揮できないし、メンバーそれぞれの状況は全然変わらないっていうことになりかねないので、今年はもう少しチーム感をだしていきたいと思っています。
そんな思いもありまして、年始に開発部メンバーでオフサイトミーティングをしました。
オフサイトミーティングといっても、どこかの会議室を借りてやるといったそんなに大げさなものではなく会社内にあるセミナールームに半日缶詰になってのディスカッションです。
ミーティングのお題としては2つ
- 理想の開発部とは
- エンジニアを増やすためには
です。
なぜこの2つにしたのかといいますと、、、
まずベーシックでは理想をイメージすることが大事とよくいってます。このイメージは明確であればあるほどいいです。
ただ理想を描いただけではもちろん意味はないです。現実を考えると、理想を実現するのにいろいろ問題があると思います。
これが理想とのギャップです。
このギャップを埋めるためにどうするのか、、、というのがはっきりすれば初めて意味のある行動をとれるようになります。
ちゃんとゴールをイメージできてないと、ただがむしゃらに頑張っても結果がでないよ、ということですね。
この理想と現実の話については弊社代表のブログや弊社の人事ブログにのってますので、そちらも是非見てみてください。
みんなでディスカッション
まずは「理想の開発部」についてディスカッションしました。
やり方としては、4人〜5人のチームを3つ作りそこであーだ、こーだ言い合って、最後にそれぞれのチームから発表という形です。やっぱり大勢のなかだとどうしても発言者が限られてしまうので、それは避けるため最初は少人数制で議論できるようにしました。
それぞれのチーム内での進め方は自由だったのですが、どこのチームも似たような進め方になりましたね。
まず現状の問題点を出す(現状理解)→理想の状態を描く
という進め方です。
白熱した議論が・・・!?
それぞれのチーム発表を聞いて
現状の問題を出す過程で、やっぱりなんだかんだで不満に思っていることはありますね。(^^;)
- ペアプロやりたい
- 属人化してしまっている
- 差し込み多くて集中できない
- 早く帰りたい
- ぼっちやだ
- 仕様変更したけどスケジュールは守ってね♡っていわれる
これ以上書くとちょっとあれなので、この辺りで・・・
結構全体的にあがっていたなーと思ったのが
「開発に対する理解があまりない」
というものでした。
じゃあ理想って?
開発に対する理解ってなんだ
ベーシックはエンジニア以外の人もたくさんいて、仕事上ではむしろエンジニアと関わるよりも、ディレクターや営業と関わって進めていく事が多いです。
エンジニア以外の人にはエンジニアが何やっているのかよくわからない、というのはよくある話でして、でもやっぱりここが問題となってしまっているのでは、という意見が多くでました。
なのでもっと「エンジニアの仕事ってこういうことなんですよ」というのを発信をしてエンジニア以外の人と共有していかないといけないなと思っています。これは別に「俺たちこんなにすごいことやっているんだぜ」的なのはいう必要はないのですが、お互いの意識があわせられるようにするのが目的です。
意識がずれていると↓のようなことに・・・
ディレクター
「さっきテスト環境にあげてもらったのを確認してみたんだけど、
やっぱりなんかわかりずらいから、ここに○○を追加したいね」
エンジニア
「いや、ここに追加すると他の箇所にも影響がでるので、うんたらかんたら・・・で、
スケジュール的には厳しいですね」
ディレクター
「え、でもこれ増やすだけならすぐいけない?」
エンジニア
「いや、増やすのはすぐできると思うんですが、テストと影響範囲の確認が・・・」
ディレクター
「でも、なんか追加しないと機能的に意味ないんで、よろしく!」
エンジニア
「はい」
<リリース後>
ディレクター
「この前追加してもらったやつ、バグでてるみたいなんで、至急対応お願い!」
エンジニア
「あー・・・」
※このやりとりはフィクションです。
っていう感じのやりとりをしていると、なんだかお互いに不幸にしかならないので、みんなにやっぱり理解をしてほしいわけです。
さっそく今月から非エンジニア向けに社内勉強会を開催する予定です。こうした勉強会を通してもっとエンジニアのことを知ってもらえたらいいな、と思っています。
相互理解でないとだめ
でもここで大事なのは一方的に理解してくれー!って押し付けてもそれは単なるエゴになってしまうわけで、ちゃんとわかりやすいように伝えるべきですし、逆にディレクターや営業が普段どんなことをしているのか、どんなことで苦労をしているのかは知るべきだと思います。
自分が所属している事業部は営業に近い部署なので、取引先とのやりとりで営業さんがいろいろ苦労しているのはよくわかっています。もちろん現場にいったことがあるわけではないので、完全に理解できているわけではないのですが。
ディレクターもディレクターで売上げやその他KPIを達成させるために、毎日必死に考えています。普通にエンジニアリングをしていると、作るものに集中してしまい、この辺の間隔はうっかりなくなってしまうので要注意です。
いずれにしても、他の職種の人にも大変なところはあるわけで、そうした状況を完全に無視するのはダメ人間です。
エンジニアを増やしたい
オフサイトミーティングの第二部としてエンジニアを増やす方法について、みんなでアイデア出しをしました。
ここは具体的な手段の話になってしまいますので、割愛しますが今ベーシックの開発環境はこんなんですよーというのをのせておきます。
今までベーシックはPHPをメインに制作をしていたのですが、これから新規で作成するサービスは基本全部Ruby(Ruby On Rails)で作成していきます。
- Vagrant+Chefを使って開発環境を構築
- 開発言語はRuby On Rails
- Gitでのバージョン管理
- GitHub+CircleCIを使ってCIを実行
- Rspecを使ったテスト駆動開発
- Capistranoを使ったデプロイ
- AWSを使ったインフラ構成
等々、、、まだまだやりきれていないところはあるのですが今のトレンドに乗っかった開発体制になっています。
むりやりまとめ
今回初めて1つのテーマにそってみんなでディスカッションをしました。正直あんまり司会進行とか得意ではないので、結構ぐだぐだ感もあったかなと思うので、いろいろ反省点もありメンバーには申し訳なかったのですが、やってよかったなーと思っています。
開発部の一員だという当事者意識ももてるようになったと思いますし、なんとなくもやもやと普段思っていたことを出す事で、全体の意識が少し統一されたと思います。
という訳でなんかチーム感が最近ないなと感じましたら、是非理想のチームについて議論してみてください。いろいろ発見があると思いますよ。
エンジニア採用に関しては、ベーシックは残念ながら、まだ世の中に名前が通っているようなメジャーなWebサービスを運営しているわけではないのでなにやっているのかよくわからないという人もいると思いますし、そもそも見つけることができない、という人も大勢いることかと思います。
なので、これからはもっと積極的にQiitaやブログなどを通して「ベーシックのエンジニアはこんな人たちだよー」というのを発信していければと思っております。
そんなこんなで、今年も宜しくお願いします!