メモ

超一流プログラマーはどういう働き方をしているのか?

By Jefferson Santos

多くの社会人は決められた勤務時間に従って仕事をしているわけですが、フリーランスのプログラマーには「時間にとらわれることなく、フレキシブルに仕事をしているのでは?」という偏見がついてまわり、ましてや超一流プログラマーともなれば「起きている時間は常に働いているのでは?」という想像上の生き物的な扱いをされる場合もあります。そんな中、ブロガーのIvan Bessarabovさんが「超一流プログラマーの勤務時間」を明らかにしています。

At what time of day does famous programmers work?
https://ivan.bessarabov.com/blog/famous-programmers-work-time

At what time of day does famous programmers work? Part 2. Workweek vs Weekend.
https://ivan.bessarabov.com/blog/famous-programmers-work-time-part-2-workweek-vs-weekend

プログラマーの仕事とは、ソフトウェアやアプリケーションの設計図である「ソースコード」を自らの力で書くというものです。書き上げられたソースコードは、バージョン管理システム(VCS)を活用して、バックアップしたり他の人と共有したりします。VCSの中でも最も有名なものの1つである「Git」には、ソースコードを保存するときに「タイムスタンプを生成する」という仕様があります。Bessarabovさんはその仕様に目をつけ、「有名プログラマーが働く時間帯」を調査しました。

以下がGitにソースコードを保存したときに生成されるコミットと呼ばれる署名です。コミットにはソースコードの作者・作者のメールアドレス・保存時刻などが書き込まれており、「誰がいつ書いたソースコードなのか」が一目でわかりやすくなっています。以下の赤枠で囲まれた部分が「保存時刻」を表す部分。この例の保存時刻は「1563188141」と一見では意味不明ですが、これは1970年1月1日0時00分00秒からの秒数を示しており、人間語に翻訳すると、「2019年07月15日10時55分41秒」となるわけです。今回の調査は、超一流プログラマーのコミットの保存時刻を分析したものになります。


以下がオペレーティングシステムLinuxや今回の調査にも用いられたGitの産みの親リーナス・トーバルズ氏のLinux関係の仕事時間をまとめたもの。左端の「hour」が時刻を示し、中央の横向き棒グラフが「その時刻に働いた量」を示しています。横向き棒グラフは「Monday to Friday(月曜から金曜)」と「Saturday and Sunday(土曜日と日曜日)」の2種類あり、有名プログラマーの平日の仕事量と休日の仕事量がわかります。


トーバルズ氏の平日の仕事を見ると、7時頃から業務を開始し、10時頃に能率がピークに達し、20時頃にはだいたい業務を終了している模様。残業をする場合もあるようですが、22時頃以降はほぼ仕事をしないようです。もし平日と休日も同じように働くのならば平日の仕事量は全体の7分の5(71.4%)、休日の仕事量は7分の2(28.6%)となるはずですが、トーバルズ氏の平日の仕事量は全体の80.7%、休日の仕事量は19.3%。トーバルズ氏は休日にもLinuxのソースコードを書くようですが、平日と同じレベルで作業するわけではないようです。

トーバルズ氏のGit関係の仕事時間が以下。Linuxに関連する仕事と同様、9時から20時頃の仕事が主ですが、平日の仕事量が73.7%、休日は26.3%と休日にも働いているようです。ただし、Git関係の仕事量はLinuxに比べてケタ違いに少ないので、誤差の範囲なのかも。


有名ウェブアプリケーションフレームワークのCatalystMojoliciousを生み出したセバスチャン・リーデル氏の勤務時間は以下のようになっており、1日中まんべんなく働いていることがわかります。「おそらく4時から13時頃に寝ているんだろう」と予想できますが、作業している場合もあるようです。さらに、リーデル氏は休日にも平日と同じくらいの働きぶりを見せています。Bessarabovさんは「彼の勤務スケジュールは狂ってますが、その生産性は妬ましいです」と記しています。


クリス・ラトナー氏はコンパイラ基板LLVMやプログラミング言語Swiftを作り出して、Tesla、Apple、Googleなどの超有名企業から引っ張りだこな超有名プログラマーです。そんな彼は、16時に業務を開始して、2時から3時まで2時間休憩、4時からスパートをかけて6時に業務終了、7時から15時頃まで休むという夜型の人物のようです。ラトナー氏も休日にも平日と同じくらい働いています。


Go言語の開発者であるロブ・パイク氏の勤務時間が以下。0時から6時には寝ているのか、ほとんど働いていません。9時から17時には仕事をキッチリこなして、たまに残業することがものの、その勤務時間はごくごく一般的といえます。また、休日の仕事量は10%を割り込み、一般的な勤務時間に合わせて働いているようです。


SNS的ブログサービスLiveJournalを19才のときに生み出したブラッド・フィッツパトリック氏は、オープンソースのメモリキャッシュシステムMemcachedの作成中は朝8時頃に眠るという生活をしており、休日は休んでいました。


そんなフィッツパトリック氏は近年ではGoogleのGo言語開発チームの一員として働き出して、23時から7時に休むようになり、9時から19時まで働くという一般的な生活に戻ったようです。休日にしっかり休む点は変化なし。


プログラム言語PHPの産みの親ラスマス・ラードフ氏は1日中まんべんなく働く人物のようですが、仕事のピークは16時から23時のようです。


汎用プログラミング言語Pythonの発案者にしてそのリーダーシップから優しい終身の独裁者と呼ばれたグイド・ヴァンロッサム氏は平日は13時頃から23時頃まで働き、休日はゆっくり休むようです。


フリーソースのムービー・音声再生ソフトFFmpegや仮想マシンエミュレータQEMUを作り出したファブリス・ベラード氏は1時から8時までは寝ているのかほとんど働かない人物。彼は休日も平日と同じくらい働くようでした。超一流プログラマーの仕事時間は人によってさまざまだということがよくわかります。

この記事のタイトルとURLをコピーする

・関連記事
プログラマーを30年間やってきた経験から学んだことまとめ - GIGAZINE

ソフトウェア開発プロジェクトにはどうして遅延が生じてしまうのか - GIGAZINE

バージョン管理ツール「Git」は一体どういうものなのか? - GIGAZINE

睡眠時間と幸福度を2年以上も自力でトラッキングした結果を分析してわかったこととは? - GIGAZINE

有名作家の睡眠習慣と著書数や受賞歴をまとめて可視化、一体どんな傾向が明らかになるのか? - GIGAZINE

in メモ, Posted by darkhorse_log

You can read the machine translated English article here.