頼まれてたアプリケーションのマスター・アップを済ませ、今日はちょっと機嫌がよろしい。
フィリピンからトレーニングを兼ねて手伝いに来てくれたdomくんとannaちゃん、二人とも入社数年のJava屋さん。チーム・メンバは僕が仕切り屋に入ってたった三人。
とあるフローティングライセンスのコマンドラインツールがありましてね、ライセンス・キー数本を多数のユーザが奪い合うというもの。
キーが獲得できないと"実行できません。しばらくしたらまた試してね"で終了するもんだからユーザは端末に貼り付いて何度もキーを叩かにゃならん。
なんとかならんかって相談を持ちかけられまして、「キーの使用権をスケジューリングするサーバー立てて、各クライアントが定期的にサーバーにお伺いをたてればいぃんじゃなくて」とか答えたところ「んじゃ作って! 納期は一週間で」てことになりました。「えー? 僕一人でその工数じゃ無理よー」つったらdomくんとannaちゃんを使ってくれとのこと。
トレーニングを兼ねてるということやったんで、会議室占拠してまずは二人にオリエンテーション。「何をしたいか(目的)」と「こんなカラクリで実現できんじゃないか(戦略)」を語り、「私達ならこう作る(戦術)」を二人に提示してもらって構想を練りました。
次の日は彼らのアイデアを基にクライアント/サーバー間インタフェースを書き上げて作業開始。極めて短期のプロジェクトだし二人の見積りでは千行かそこらで作れそうってことだったので「仕様書は書かんでええ。ただしテストケースは本日中に出せ」てな約束で。
それから数日せっせと実装してくれました。僕はコードについてはヒトコトも口を挟まず、かわりに毎日「みせておはなし(Show and Tell)」をやりました。二人がそれぞれ何の実現のためどんなコードを書いてるかを5分でプレゼンしてくれと。僕の状況把握のため、それと二人の認識に食い違いがないかを確認するためね。彼らのお仕事中、僕はテスト用なんちゃってサーバ/クライアントをこしらえたり、テストケースの漏れ/抜けを埋めたり、実機の手配にうろついたり。
で、結合テスト/実機テストをつつがなく完了してパッケージングとマニュアル(彼らの英文メモから僕が和訳)を整えて放流。二人を地下のTully'sに連れてってコーヒーで乾杯/ぷち打ち上げ。
二人の感想によると「いきなりテストケース書けって言われた時は面食らったけど、実装しててその意味がわかった」「こんなに軽いフットワークの仕事は初めて」とのこと。かなりウケが良かったようです。途中で何度となく仕様変更をお願いしたけどなんなくこなしてくれたし。
...いつもこんなだといいのにね。大きなプロジェクトではなかなか、ね。