アメリカは余裕があるなと思った働き始めて2週間経ちました。個人的な嗜好でいうと、働くのは別に好きでも何でも無いというか寧ろ嫌いなんですけど、環境が新しい事だらけなのもあって今のところ毎日楽しいです。それで実際働いてみてすげー思ったのが、アメリカはやたら余裕があるなという事です。僕の所属してるチームの労働時間。フレックスなので一定しませんが、皆さん平均すると10:30前後に出社して18:00前後に帰って行きます。ランチもゆったりで作業してるのは6時間位です。僕は今張り切っている事もあって、9:00頃から19:30頃まで働いているのですが、その程度で僕が一番長い時間働いています(全社で)。それなのに、就活記録のエントリでも書きましたが、給料は日本の相場の2倍は楽勝です。すると、働く時間半分で給料2倍なら、単位時間辺りのパフォーマンス4倍必要なはずなので、どんなけバケモノぞろいやねんと戦々恐々としていましたが、別に僕とそんな違いはありません。張り切っている分、僕の方がパフォーマンスが高いくらいです。プライベートな時間にもコード書いてる日本の普通のプログラマなら、普通に戦えるんじゃないのと思います。これで何で回ってんの?何なんその余裕?先週末は月曜日が祝日で3連休だったのですが、祝日の前日(この場合は金曜日)は13:00にオフィスが閉まります。皆家から仕事するとかいって出社しません(僕はしましたけど)。当然?家からも仕事してません。ノリが良く解りません。何なんその余裕?スケジュールを管理するプロジェクトマネージャと、ウチのチームのリーダーはいつもスケジュールについて言い争いをしています。スラングもバンバン飛び交うような激しいやつです。「もう言い訳は聞き飽きた!一体いつリリース出来るんだ!今日こそはこのスケジュールにコミットしてもらうぞ!」「そんな糞スケジュールは到底受け入れられない!俺たちはベストを尽くしている!Appleのアップデートについて行くのがどれだけ大変なのかも分からない素人がゴチャゴチャ言ってんじゃねぇ!」というような感じです。日本だったらデスマーチ確定です。ところがそんな言い争いをしていても18:00くらいになると、その二人がまた明日とか言いながら一緒に帰って行きます。チームの皆もゾロゾロ帰って行きます。何なんその余裕?他にも色々あるんですけど、とにかく皆切羽詰まってない。仕事に追われてる感じが全然しないんですよね。最初はたまたまiHeartが超優良企業で、凄い運が良かっただけなのかと思ったのですけど、社内の皆さんの勤続年数を聞くと結構短くて、割と頻繁に社員が入れ替わっているのを見ると、どうもそうでもなさそうです。この余裕はどこから来るのかな、と考えていて思い当たった事があって、それはアメリカではみんな、如何に重要なタスクに集中するかという事に全力を注いでるという事です。Centerで開発者や開発端末等を登録・管理する必要があり、チームリーダー辺りがその管理業務を行うのが日本だと通例です。ところがiHeartでは特定の管理者はおらず、開発者全員が管理者権限を持っています。必要な端末やらを登録してもらう等の作業でやり取りが発生しません。開発用端末も開発者個人に割り当てられ、チーム内で端末管理業務が発生しません。リポジトリはgithubを使っていて当然リポジトリ管理作業は発生しません(ちなみにリポジトリに関しては僕がインタビューを受けた会社は全てgithubを使っていました)。大きな話だと、アメリカでは社員は労働時間に対して対価をもらう訳ではないので、残業代等はありません。タイムカードがなく、当然タイムカードの集計作業等は発生しません。経理的な面から見るとかなりタスクが省略出来てるんじゃないのと思います。タイムカードが無い事と関係あるかは分かりませんが、始業時間は死守する時間じゃなくて、あくまで目安の時間なので、社会全体として通勤時の混雑もある程度緩和されていますし、日本の満員電車や交通機関が遅れた時に遅延証明書を貰う為に長蛇の列というのは滑稽な話です。終業時間は一定しないのに、数分の始業時間に対する遅刻なんかでぎゃあぎゃあ騒いでるのは日本くらいじゃないの?と思います。先日、日本の鉄道の運賃計算システムを如何にデバッグするかという記事を読みました。ソフトウェア工学やら数学を駆使して如何に効率的に膨大な数のテストケースをこなすかという話です。優秀な人たちが工夫を重ねて日本の運賃システムが構築されているのが分かるかと思います。一方でマンハッタンの地下鉄は一回一律2.5ドルです。端から端とかだと30-40位の駅があって時間にすると2時間くらい乗車してるんですけど1回2.5ドルです。これは想像なんですけど、運賃を距離ベースにしてよりユーザーに対しての公平性を高めても売り上げとか利益に繋がらないんじゃ無いかという事です。いう事が社会レベルで比べると凄く沢山ありそうだなと感じています。今100の売り上げがある製品があったとして、やったら売上が101になるような、もしくは少しだけユーザの満足度があがるような、確かにやった方が良いんだけど、影響は小さいようなタスクをアメリカ人はやりません。別の言い方をするとアメリカ人は100点を目指しません。すれば一番楽に80点を取れるのかというのを真剣に考えています。日本人は100点を目指しがちで、100点を取るとなると、タスクの優先順位付けはあまり意味を持ちません。全部やらないといけないので、先にやるか後にやるかと言った程度の差しかないのです。社会レベルでタスクの優先順位付けが下手なんじゃないのと思い始めました。(100点を目指すやり方が合ってそうな分野も沢山あって、自動車なんかは好例だと思います。)日本人のホワイトカラーの生産性が低いと言われて久しいですが、それは日本人の作業能率が低いわけではなく、まして怠けている等というわけでもなく、費用対効果の高いタスクに集中できていないんだなという事です。日本人が100を101にする為に、身を削りながら難易度の高いタスクに取り組んでいる間に、アメリカ人は遊びながら、どうしたら100を200とか1000に出来るかを考えている訳ですね。その結果、社会全体としてあちこちに余裕が生まれている、そんな気がします。チーム内のチケット管理システムを見ているとこれが色濃く現れていて、iHeartのiOSアプリは今バージョン4.6がリリースされているのですが、以前の4.0とか4.3とかそういうバージョンでやるはずだったチケットが普通に未処理で残っています。それも1個とか2個とかそういうレベルではありません。全体の20-30%位は塩漬けになっていっています(次のバージョンにキャリーオーバーもしてない)。日本だったらよっぽどじゃない限り、作業者の「頑張り(残業)」で全チケット消化が基本なので、かなり雰囲気が違います。それでもバージョンアップ毎に着実にユーザを獲得して行っているのを見ると、ひたすら「やった方が良い」レベルのタスクを頑張っているだけじゃ日本のチームは勝てないなと思いました。同時に、日本人は凄いポテンシャルを秘めているなとも思います。日本ほど勤勉で厳しい労働倫理観を持った文化圏は恐らく他にはありません(韓国人も似た気質を持っている気はしますけど)。優秀な日本人チームがアメリカ人並みに重要なタスクに集中出来たら、きっと日本はもっと豊かで余裕のある国になるんじゃないの?とそんな事を考えている今日この頃です。