職場での「20%時間」の導入[終了]


30

20%の時間は、それはそれの従業員は、彼らが面白いことをプロジェクトに取り組んで自分の時間の20%を費やすことができ、雇用主の文化だ-それは新しいアプリを発明、または既存のプロセスを向上することができる、などの一部の人々がありスカンクのようにこれを知っています動作しますが、その用語はあなたにとって何も意味しないかもしれません(またはまったく異なるもの)。

会社で20%/スカンクの仕事から生まれた素晴らしい製品の多くの文書化された事例があります。勝ち負けの状況のようです。会社は素晴らしい新製品やアプリケーションを獲得する可能性があり、開発者は自分の創造力を曲げて革新する機会があります。

私は以前の雇用主で働いていた20%/ Skunkを何らかの形で紹介しようと何度も試みましたが、成功しませんでした。

どうすれば経営陣にそれを正当化できますか?この種のワークアレンジメントにアプローチする「正しい」方法は何ですか?


11
スカンク作業?これは誰もが強力な大麻を吸って、本当のファンキーなコードを書くところですか?
ダンディプロ

@Dan theregister.co.uk/1999/10/27/what_the_hell ;)これは、同社の「非計画、開発開始の仕事」を記述するために使用される用語です。通常、パートタイム。一部の企業では、スタッフが自分の時間の一部を好きなものに費やすことを許可しています-時には、その仕事が会社が使用できる仕事、またはリリースする製品に変わることがあります。
dannywartnaby

2
@dannyそれは私がこの用語を理解する方法ではありません。あなたはGoogleの「20%時間」を説明しているのです。ロッキードのスカンクワークスが計画外のことをしているとは思わない。むしろ、「高度な自律性を与えられ、官僚主義に妨げられず、高度なプロジェクトまたは秘密のプロジェクトに取り組むことを任された組織内のグループ」です。(WPのスカンクワークスページからの引用)
フランクシェラー

1
@SteveBennett:20%の時間の極端に論理的な反対は、100%の使用率、機能的なサイロでの作業、高度な専門化、各機能で費やされた時間、およびロット、ロット、および大量の無駄です。
アジェグロフ

1
これは、より多くの職場のための質問であるが、それはすでにそこに頼まれました- workplace.stackexchange.com/questions/468/...
ChrisF

回答:


45

20%の時間の主な理由は、容量の使用率を100%ではなく80%に維持することです。

ソフトウェア開発組織は、機能要求を開発された機能に変換するシステムと考えることができます。キューイング理論を使用して、その動作をモデル化できます。

理論

システムが要求を処理できるよりも早く要求が到着した場合、要求はキューに入れられます。到着が遅くなると、キューサイズは減少します。到着プロセスとサービスプロセスはランダムであるため、キューサイズは時間とともにランダムに変化します。

数学的に傾倒している人は、この「ランダム性」について尋ねることができます。何らかの確率分布がなければならないので、キューサイズは平均で何になりますか?数学(キューイング理論)には答えがあります。到着プロセスとサービスプロセスの両方がマルコフである場合、N = rho ^ 2 /(1-rho)です。

(ここで、rhoはサービスと到着率の比に等しい使用率です。プロセスが非マルコフの場合、計算はより複雑になりますが、結論は変わりません。)

この関数をプロットすると、平均キュー長は低いままですが、使用率は最大0.8であり、その後急激に上昇して無限になります。これは、コンピューターのCPUについて考えることで直感的に理解できます。使用率が100%に近づくと、コンピューターが応答しなくなります。

練習

ソフトウェア開発の経済性により、ソフトウェア会社は、キューが高キュー状態にあるときに大きなコストが発生します。これには、見逃された市場機会、時代遅れの製品、プロジェクトの遅れ、需要を見越して機能を構築することによる無駄が含まれます。

したがって、20%の時間は、経済的な結果を最適化する問題に対する科学的な答えです。高キュー状態を引き起こす使用率を回避することで、高キュー状態を回避します。基本的に、システムの応答性を保つのはスラックです。

いくつかの実際的な結論がすぐに続きます。

  • 20%の時間を考慮して原価計算を行っている場合(開発者の時間はXになりますが、/および会社はそれを購入できる/できない)、それは間違っています。
  • 毎週金曜日に20%を割り当てている場合、それは間違っています
  • 20%の時間のプロジェクト提案提出/レビュー/承認システムをセットアップしている場合、それは間違っています。
  • タイムシートに記入している場合、間違っている
  • イノベーションを20%の時間の動機として使用している場合、それは間違っています。新製品は20%のプロジェクトから生まれましたが、それはポイントではありませんでした。あなたの会社がコア時間中に革新できない場合、それは問題です!
  • 20%の時間は創造性ではありません。20%の時間であなたの創造性を解き放つと言ってはいけません。なぜあなたがコア時間中に既に十分に創造的でないのかを尋ねてください。

コメントの質問に対する回答

ダン、あなたはその権利を得て、多くの人が犯した間違いを正確に説明しました。使用率は出力変数であるため、選択できません。これは、2つのプロセスの特性の比率であるため、プロセスがそのままの状態であるため、そのとおりです。組織は両方のプロセスに影響を及ぼします。能力と需要のマッチングは、無駄のないソフトウェア開発知識体系が取り組む困難な問題の1つです。使用率は、組織内でこの問題がどれだけうまく解決されたかを示す指標の1つです。無駄のないイニシアチブが進むにつれてスラックが発生し、バリューストリームから無駄を取り除きます。ただし、20%の時間を義務付けると、使用可能な容量が少なくなり、同じ使用率トラップに陥ります。

キム、それはまだ部分的に文化的なものです。私が考えることができる最も近い文化的参照は、組織変化のいわゆるマーシャルモデル相乗レベルです。これは、リーン変換の成功の終わりに現れるか、最初からリーンに構築された組織に存在します。(ボブマーシャルのホワイトペーパー(PDF)へのリンクです。)

参考文献

上記のロジックは、ソフトウェアエンジニアリングの文献で十分にサポートされています。メアリーとトムポッペンディークは、2006年の本「リーンソフトウェア開発の実装」でそれをほのめかしました。ドナルド・ライナートセンは、2009年の本「製品開発フローの原理」(第3章)で、式とグラフを使用して、この主題を徹底的に扱っています。


うわー、いい答えだ。私はそれを考えたことはありませんでした-常に文化的なものとしてそれを見てください。+1
キムバージェス

非常に興味深い...しかし、私が理解していないことの1つは、キューが最大80%まで小さくなっている理由は、その時点までに空き容量があるためです。容量の20%が非キューアイテムで満たされることが義務付けられている場合、容量は80%に縮小され、80%が新しい100%になります。右?
ダン・レイ

@KimBurgess:回答の最後に、Q&Aへのコメントにコメントを追加しました。
アジェグロフ

@DanRay:その通りです!回答の最後にQ&Aを追加しました。
アジェグロフ

3
私は10回賛成できたらいいのにと思います。
ダニエルダラナス

12

この回答を書いてから14か月後に、はるかに優れた回答を思いつきました。

そのような作品が公式に認められた場所で働いたことはありません。しかし、この実践についての会話と学習の試みから、私はこれを見つけました-まあ、ほとんどの場合、「20%時間」はそうではありません:

  • それは確かに文化であり、政策ではありません
  • それは上級管理職によって決定することはできません
  • 開発者の委員会によって設立することはできません
  • これは32時間ではなく、8時間ではありません

ご返信ありがとうございます。私はそれが文化でなければならないと思います-スタッフに物事を発明させることはできません。また、開発者の委員会によって制定することはできないことにも同意しました-私の経験は確かにそれと一致しているので、この文化はどこから来るのでしょうか?アトラシアンはこれを試用したため、管理上の決定であったに違いありません。これは、創業当初から企業文化の中心にある場合にのみ機能すると考えていますか?
dannywartnaby

アトラシアンの場合、決定は上から行われましたが、適切な種類の従業員、つまり準備が整った開発者がいたと思います。それでも、このブログ投稿:blogs.atlassian.com/developer/2009/02/…実装に関するかなりの数の問題を報告しており、実験を続けると言っていても、1年以上は公開を更新していません一年半。引き続きご期待ください。
アジェグロフ

6

Skunkworks」は20%の時間とは異なります。20%の時間はあなたが言ったとおりです-開発者が自分で何に取り組むかを選択する時間です。Skunkworksはまったく異なります。スカンクワークスプロジェクトは、チーム(多くの場合、指導者の分裂チーム)が担当する高価値で高コストのプロジェクトであり、経営陣に報告されず、チームは管理の指示なしにプロジェクトを進める方法を独自に決定します。これらのプロジェクトは、多くの場合、何かを成し遂げるための戦術的またはビジネス上のニーズによって動機付けられますが、予算に余裕はありません。何かがいる場合に行わ取得する必要があり、それが行われます-予算はのろわれました。

開発チームを管理し、20%の時間を費やしました。とにかくしようとしました。上司の承認を得たので、それは問題ではありませんでした。問題は、チームが小さすぎて専門性が低すぎることでした。すぐに介入する必要がある問題が発生するたびに、20%の時間がぶつかった。これは非常に頻繁に起こりました。

また、私の開発者の中には、私の方向性の欠如が動揺することを発見したこともわかりました。「プログラミングに関連する限り、あなたがやりたいことは何でもできる」と言ったとしても、彼らは「何でも」の部分を受け入れるのに苦労しました。一部のプロジェクトは他のプロジェクトよりも優れていると考えていたため、必然的にメイン製品の低レベルの実装要求に取り組みました。私は彼らに分岐して成長してほしかったが、代わりに彼らは彼らの主要な専門知識に深く掘り下げた。

私はもう一度やりますが、メイン製品での作業を明示的に禁止し、開始するために選択するいくつかのアイデアからそれらを始めるかもしれません。


1
彼らが主な専門知識をもっと掘り下げていたのはなぜ問題だったのですか?彼らは(おそらく)終わらせる必要があるが、そうではないものを実装することに満足しているように思えます。誰もが常に新しい革新的なことを試みることに情熱を傾けるわけではありません。その態度を強要するのは間違いだと思います。
マットオレニック

正確には問題だとは言いません。私は彼らが製品に取り組んだと思うのは、彼らが立ち入り禁止の何かを選ぶことをticしたからです。これは、適格な問題ドメインがすべてであることを適切に説明しなかったことが一因でした。
ジョンダイブリング

本当に便利な答え、ジョン、ありがとう。方向性の欠如と仕事を発明する相対的な自由が、コンセプトの中心にあるため、一部の開発者が仕事をしていない20%の時間の要因であることがわかったのは興味深いことです。一部の開発者は、彼らを最大限に活用するために明確な目標を与えられる必要があるだけだと思います。文化は「あなたの時間の20%を費やして何かを作ることができるかもしれませんが、もしできなければ、時間を使って何かを改善するかもしれません。それはあなたの現在のプロジェクトである必要はありません。」
dannywartnaby

奇妙なことに、ある開発者の秘密のペットプロジェクトとして始まり、後に組織の方向性を完全に変えることが判明した、価値は高いが低コストのプロジェクトを説明した本で、「スカンク作品」という用語に初めて出会った。
スポイケ

4

私は20%のポリシーを実装した新興企業で働いています。これは私の最初の雇用主であり、彼が就職の面接でそれを持ち出したとき、他のほとんどの雇用主が1時間も「無駄」にしようとしていないので、私は本当に驚きました。

私はスタートアップが設立されたときに参加しましたが、ほぼ1年間、私が唯一の開発者でした。私は20%を基本的にいくつかのことに費やしました。

  • ランダムなオープンソースプロジェクトのバグの報告/修正 -これは、Githubで興味深いプロジェクトをフォークし、ドキュメントのいくつかのタイプミスを修正するのと同じくらい小さなものです。
  • オープンソースの「もの」を書く -プログラミングの課題のようなもの、ただの楽しみのために。
  • 会議やスプリントに行く –数ガ匹ごとにスプリントに行き、そこでプロジェクトの一部(メインアプリで使用されるものもあれば、そうでないものもあります)で作業し、経験を積むことができます。私たちのアプリや、開発者を会議に招待する他社が開発したアプリで使用されるライブラリがいくつかあるため、当社にとって直接的な利点と見なすことができます。
  • 新しいテクノロジーの学習 -これは、社内でGoを使用していなくてもGoを学習した方法です。これは私の雇用主によって特に奨励されています。最近、私はスタンフォードの無料オンラインクラスのいくつかをフォローしています。

時間は正確に測定されていません。32+ 8時間ではありません。20%をカットするのに十分な時間がなかった場合、緊急の対応が必要な場合があります。

私はリモートで作業しており、37signalのCampfireチャットを使用して通信し、互いの存在を大まかに追跡します。これらの時間は「作業」時間として追跡され、チャットにログオンし、私が今プロジェクトに取り組んでいないことは明らかです。


3

私の小さな経験から、私たちのプロジェクトの多くは実際にこのやり方で始まりました。新しいプロジェクトに取り組むための自由な時間と帯域幅があったので、一緒になって、自分の部署で考えられるクール/先進的なアイデアを思いつきました。空き時間にプロトタイプを開発し、それがかなり洗練され、上位レベルに提示されると、通常は利点が見られます。

上位レベルは、見れば自分が望むものを知っているが、それを見るまでは必要/欲しくないことを知らないようです。プロトタイピングにより、私たちは独自のプロジェクトを作成し、提案し、承認されると、完了までの時間をさらに割くことができました。


私はそれがほとんどの組織に当てはまると思います-私はその過去に確かに管理/マーケティングにクールなものを示すことは特定の機会を開き、新しいプロジェクトを作成しました-しかし、どんな試みも今回は「公式に」新しいものと将来の追求のために利用可能にします思考のアイデアは非常に早く、非常にフラットになります。「予備時間」とおっしゃいましたが、この時間はあなたの勤務時間外ですか?また、あなたの部署はどのくらいの大きさですか?(何人の開発者、そして何人がこれに関与しますか?)
dannywartnaby

これらのプロジェクトは通常、チャーターされたプロジェクトの間に開始されます。私たちのチームは小さなチームです(3〜7人の開発者)。そして、それに関与するプロジェクトに依存します。時々、新しい技術を学びたいなら、これらのことを家で楽しみます。また、そのほとんどが細部をほとんどこなさずにかなり迅速にプロトタイプを作成できるなら、それをします。
クリス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.