SonicGardenの1プログラマから見た「納品のない受託開発」 #sgadvent
「納品のない受託開発」とは
@JunichiIto77や@mah_labのブログを経由してここをご覧になられているような方は既にSonicGardenのことはご存知かと思いますが、SonicGardenはyouRoomやKEEPinTOUCHなどの自社サービスの他に受託開発も行っています。詳しくはSonicGardenのHPに記載されていますので、その概要は省略してあくまで僕個人の視点から見てどうなのかということを書いてみます。あまりの放置っぷりに自分でも驚きのおよそ1年半ぶりのエントリとなってしまいましたが、何事もなかったかのように書いていきますよと。
ヨーロッパに居ながらでも(日本の)受託開発担当プログラマが出来てしまう
僕はほんの半年前くらいまでSonicGardenのプログラマでありながら1年間アイルランドのダブリンで生活していました。『国境なきプログラマ』を目指す〜ノマドワークの究極のかたちの記事が詳しいです。誰かに言われて行ったわけではなく、自分が行きたいから行ったのですが、普通はこんなことをしようと思うと仕事をやめて貯金を切り崩しながら生活するスタイルを取るしかないと思います。それがなんと僕の場合は完全に日本のお客様を相手に受託開発をしながら安定を収入を得たまま1年間一度も日本に戻らずに過ごしていたんです。なぜそんなことが出来たかというと「納品のない受託開発」の以下のような特徴からです。
- 運用環境がクラウド上に存在するのでネットワークさえあればどこからでもメンテナンス出来る
- 開発やコミュニケーションに利用するサービスが全てオンライン(youRoom, Skype, Github, PivotalTracker等)
当然時差があるので日本と全く同じ時間にというわけにはいきませんでしたが、僕が早起きして日本時間の午後から始動することで週に一度のお客様との打ち合わせも問題なくこなしていました。来年くらいに再び日本を出ていこうかということを画策していたりしますがそれについてはまた別の機会に。
納品しないことによる精神的余裕
勘違いしないで頂きたいのは納品しない=納期がないということではないです。全ての機能を作り終えた完成品の納期がないというだけで、個別の機能に関して小さな納期がいくつもあるようなイメージです。具体的には例えば、「今週はまずログイン機能を作ってログイン出来るところはやります。」などという小さな目標を決めて現実的な納期を毎週定めていくような感じです。100機能を3ヶ月後に完成させることが出来るかどうかは、はっきりいってわからないし必要以上にバッファを積むしかないですが、5個くらいの機能追加や修正ならばかなり正確に見積もれますし、確実に終わらせることを約束するわけでもないので(大抵の場合は終わりますが)変なプレッシャーもなく凄く気が楽なのです。さらに完成したプログラムを次々とリリースしていくため、お客様をお待たせすることなく次々と動くものを提供していくことが出来るのです。
直接対話をする方=ヘビーユーザー
必ずしもそうとは言いきれないですが、僕が現在担当している案件の大半は毎週の打ち合わせをする方自体が一番のヘビーユーザーです。これが意味するところは色々ありますが、何よりお互いによりよいものにしていこうという気持ちが強くなるように感じます。誤解を招く表現かもしれませんが、どこかの誰かが使う(かもしれない)何かを作ろうとしても最低限動けばそれだけで満足してしまいがちですが、目の前にいるこの人が使うものだと思うと自然と力も入るというものです。間に何人も人がいるような伝言ゲームも発生しないですし、やりやすいことこの上ないと実感しています。
受託は面白いと思う
僕は元々IntecというSIerに所属していました。配属されたチームに恵まれたため新卒の頃から色々な経験をさせて頂くことが出来ましたが、やはりかなりの残業や休日出勤を強いられるようなこともありました。受託開発というのは普通に生活していると絶対知り得ないような様々なことに触れる機会でもあるため、開発自体は楽しいんです。ただ、超巨大システムのサブシステムのさらに一部分だけの開発などをしても、最終的にそれがどのように運用されたり、どのような人にどのように使われるかなどといった部分は全くわからないまま運用のチームに引き継がれていてそれが当たり前だと思っていましたが、最後まで面倒を見ることが出来ないというのは残念なことでした。
自分一人では絶対に作らないけれどそれを必要とする人がいて、そのために試行錯誤を繰り返すということは受託開発の醍醐味だと思います。僕はそこまで自分自身がどうしても欲しい、作りたいプログラムというものがあまりないようで、どちらかというと誰かの必要とするプログラムを作る方が向いているようだ、という事情もあるのですが。
受託開発というと悪いイメージばかりが先行することが多いですが、僕は受託開発が面白いし、やりがいを感じます。面白くないと感じるならば、それはただやり方が間違っているだけだ!と、思います。
さて、明日は現時点ではSonicGarden最年少にしてCTOの@mat_akiが登場する予定です。引き続き「SonicGardenアドベンドカレンダー」をお楽しみに!
お知らせ
「Keep in touchグリーティングカード」をリリースしました!
先日ソニックガーデンではネット上でお客様に年賀状が送れる「Keep in touchグリーティングカード」をリリースしました。
下記ページから簡単にユーザ登録が出来ます。ぜひお気軽に使ってみて下さい。
ビジネスでもネットで年賀状を送ろう!〜もっと手軽に、もっと心を込めて〜Keep in touchグリーティングカード – SonicGarden 株式会社ソニックガーデン