railsワークショップにいってきました。

CA380005.JPG
 Railsワークショップ@新橋というのに行って来ました。
Kantaさんと、Kantaさんの会社の人と、あと参加者は自分を入れて二人だけという贅沢な環境です。


テキスト:『RailsによるアジャイルWebアプリケーション開発』



 今回は、あえて講義形式ではなくて、各自勝手に本を読んで勉強する、という形にしていただきました。

参加者のレベルが異なると、講義している人は何にも得るものがなくなってしまって面白くないだろうし、なにより、自分で手を動かすほうが覚えやすいと思うので。



やってみてわかったのですが、このやり方、非常にいい (・∀・)イイ!



本を読んで勉強するだけだったら自宅でもできるじゃないか、と思われるかもしれないのですが、実際に自宅に帰ると、人がいたり鳥がいたりするし、ゲームもやりたくなるし。
強制的に場所を確保して勉強時間に当ててしまうことで、集中した時間を確保することができます。



主催して会場を押さえておやつまで用意していただいて、Kantaさん、どうもありがとうございました。ぜひぜひ今後も参加させてください!

スケジュール意識の違い

住みたいところに住める俺: 仕事は7.5時間で終わらせるというエントリが話題になっているみたいです。



自分はカナダで仕事をしたことはないですが、海外のエンジニアさんと仕事をさせていただいたことは何度もあるので、同じようなことは自分も経験しております。
スウェーデン人なんて、朝6時に出社してPM3時に帰るぞ。


素朴な疑問ですが、マイルストーン、リリースなど守らねばならないポイントが守れない場合も、あくまでも7.5時間?
そういう場合は、チームの責任者が責任とった上で(評価が下がる)リスケする、とかで根性論は入らないということでしょうか?



やはり根性論は入らないです。単発の残業はあるものの、基本的にはリソースの投入を行い、それでも無理なら、リスケを行ないます。





そもそもスケジュールに対する考え方が日本と海外で違うような気がします。海外では、リスケが当たり前に行われます。



例:一週間と見積もった作業が金曜日に終わらなかった場合:

 日本:金曜日は残業したり、土曜日に出てくるのが当たり前

 スウェーデン:余裕で月曜日に持ち越します。一日遅れたところで何があるわけじゃなし。次の作業が一日早く終わればいいことです。



例:一年の開発で3ヶ月目に設計を終わらせる、と決まっていたとして。終わっていなかったら、どうなるでしょう?

 日本:3日間かかる対策会議でリーダーがつるし上げられます(でも大した対策が打たれるわけでもなく…)

 スウェーデン:3分程度の(立ったまま)対策会議が行われて、マイルストーンが一週間とか二週間後ろにずれます。



一回スケジュールを守れなかったくらいで悪い評価をされることはなくて、それは単なる事故くらいの扱いです。もちろん、毎回どんなチームを率いても遅れてしまうリーダーさんがいたら、普通にクビになりますが。



例えば金曜日に終わらせるはずの作業が月曜日までかかったとして、その成果物を使う予定だった同僚は月曜日にどうしているかというと。

そもそもそんな小さな締め切りが守られるとは思っていないので、月曜日から次の作業をスタートさせる予定は組んでいなくて、そこから一週間もすれば出てくるでしょ、というスケジュールになっています。

また、日本人みたいに仕事を小さく切らないで担当者にどーんと任せてしまうので、そもそもそんな小さな引き継ぎが発生すること自体がレアケースです。



大行程で一週間遅れたプロジェクトがどうなるかというと。

べつに何も起きません。たいていの場合、次のフェイズでキャッチアップするので最終的な納期は守られます。守れそうになければ機能を落とすとか、人員を投入するとか、普通の対策が打たれます。



工場の生産開始とかそういう厳密なスケジュールだとどうするのでしょう?後ろにずれて困るスケジュールは、最初から後ろにバッファが用意されています。
日本のスケジュールにおけるバッファは本音と建て前だったりしますが、海外だとちゃんと本来の意味のバッファとして使われます。



まとめると

・そもそも無理な物は残業したって無理。

・ちょっとくらいの納期ずれは残業して解消しなくても、そのうち解消する。

・解消しないのなら適切な対策を打って解消する

という普通の対応でも、案外、物は作れるのだ、ということじゃないかと思います。