Fbには書いたけど、Fbだともう見つからなくなるからこっちにも。

一年前の9月27日、自分にとって初めての東京生活が始まった。あれからもう一年が経ちます。仕事、生活、色んな意味で辛いことの方が多かったけどいい経験をしたのかな。

当たり前のことが当たり前にある、と言うことがどんなに大切で幸せかということを思い知った3ヶ月間でした。あの時の想いを忘れたらアカンなと思った次第。

そうしたら今日、偶然Twitterで「当たり前のことって何?当たり前のことなんて無いんじゃ?」ってTweetがあったので、「当たり前のことってそれが無くなった時に気付くんですよ」と返信した自分。そうか実は当たり前のことなんて無いんだな、とも思った。周りのおかげで当たり前だと思っているだけだということなのかもしれない。

photo credit: Darwin Bell via photopin cc

つい最近(でもないかも、最近時間の経つのが速いので)、Facebookで0型新幹線の話題が出てました。当時は「夢の超特急」だったと。

アニメや特撮でも、ガンダムに仮面ライダーに、最近はやってないけどウルトラマンの延長。ワンピースだって始まったのは20年近く前らしい。

新しいものが全く無いわけではないけれど、僕らが子どもの頃に夢だったものが今もあまり変わりなく存在している、っていうのは僕らの世代が新しい夢や未来を生み出せてないということか…

先人の作ったものをただ消費するだけにはなりたくないなぁと思う今日この頃です。

photo credit: jox. via photo pin cc

思うところあって、今まで自分がやってきた仕事を棚卸ししてみました。26年以上会社勤めをしてきて、そのうちの20年以上がソフトウェアの開発に携わってきた、それは分かっていました。

その中でも自分は”アプリケーション・ソフトウェア・エンジニア”だと思っていました、その部分だけ少し思い違いがあったようです。確かにアプリケーション開発に携わったことが多いのですが、その中でも特に”API”と呼ばれるインターフェイスの開発が多いのです。もちろんどれも仕様設計からの開発です。

自分が設計した”API”が良いものだったのか、そうでなかったのかはわからないし、ここでそこに触れるつもりはありませんが、”API”を開発する上で常に気をつけていたのは、役割分担です。どこまでを”API”がサポートし、どこからをアプリケーションが実現するのか。”API”で多くを実装すればアプリケーションは楽になりますが、融通の利かないものが多くなるし仕様が増えるごとに”API”の追加が必要です。

“API”が簡素だとアプリケーションの負担が大きくなる、難しいところです。

この役割分担を見極め、バランスの良いところを見つけるために、自分は自分の作ったAPIを使ったサンプルアプリケーションを作ることをしてきました。もっとも、アプリケーションは外注のことが多くて、”API”の使い方を指導するためにも必要だったという事情もあってのことですが…

サンプルを作ってみると、色々な問題点が見えてきます、どこに分担のポイントを置くかでも悩みます。でも、そうやって相手の領域に踏み込むことで見えてくるものなのです。でもこれじゃダメだなぁと思った時は、コーディングのし直しもしました。場合によっては、既に外注さんが作っていたアプリケーションのコードを私が書き直したことすらあります。

もちろん、ソースコードの書き直しはリスクを伴うのでそれはそれで褒められたことではないですが、将来的に不備のある”API”のまま開発を進めるのも、それはそれで不具合の元ですし…

ここまでは”API”開発の場合の話ですが、”API”の開発に限らず私たちの周りには役割分担をどう決めるのか?が重要なことがたくさんあると思います。役割分担のポイントをどこにおいてバランスを取るのか?がとても大切なケースは多いです。

そんな時、自分のゾーンの中にいたままでは適切な役割分担を決めることは難しい、どうしても自分の都合の良いようにしてしまうから。なので、すべての役割分担を決める局面において、どれだけ相手のゾーンに入れるかが適切なバランスを確保するためには必要かなと思います。

相手のゾーンにどれだけ踏み込めるか?相手の気持ちにどこまでなれれるか?そして自分が負うべき役割は何か?相手に求めるものは何か?そこにお互い合意できるか?そして最終的に合意するか?ここまで出来れば、適切なバランスが出来、最適なパフォーマンスが得られると思います。

これからも役割分担を意識して、balanceを意識していかないと、その考え方は自分に備わっているはず、そう思いました。ここを活かしていかなければ!!