本人も楽しんでやってるので、「趣味はプログラム」って言いそうな。そのくらい普通の人より何倍もコード書いてる。そりゃ勝てないよって感じです。頭が良くて、作業量多い人ですね。周りを見回しても、他と段違いで頭が良く回転が早い人。その上、作業量も多い。超一流プログラマーと違って自宅でも四六時中プログラム書くことはないが(それでも普通の人よりは書いてる)、会社では人よりも長く残業してプログラム書いてるタイプ。普通のプログラマーの共通点そこそこプログラム好きで自宅でも多少プログラムするタイプ。プログラムは好きだし、技術的なキャッチアップもするが会社でもそんなに残業しないし、自宅でもたまにプログラム書く程度。できないプログラマーの共通点ここまでに書いた共通点が無い人ですね。共通点を挙げるとしたらこれかな?・多分、そんなにプログラムが好きじゃない。・分からないことを調べたり解決するのも好きじゃない。・仕事でお金もらえるからやってる。分からないことは人に聞いて解決したり、意味も理解せずどっかからソースコード持ってきてコピペ済ませたり、とりあえず動けばいいや系。現場によるけど、技術者のレベルが低い現場に行くとこの手の人が結構います。逆に技術レベルが普通以上だと少数派。最後にどうですかね??超一流と呼ばれるプログラマーの共通点について違う意見があれば教えて欲しいです。その他(出典:Wikipediaより)「PDCA知ってる?」、「PDCAやったことある?」ってよく聞かれると思うけど「OODA知ってる?」って聞かれる事はあまりないんじゃないかな〜と思います。手段としてOODAループってとても有効だから知らない人はぜひ、この記事読んでOODAループを知ってらいたい。OODAとは?観察(Observe)状況判断(Orient)意思決定(Decide)実行(Act)PDCAとの違いOODAループを使った例OODAループがチカラを発揮するケースOODAとは?以下の4つのプロセスをループし、意思決定して動く事です。・観察(Observe)・状況判断(Orient)・意思決定(Decide)・実行(Act)観察(Observe)状況の観察で改善する事、したい事を観察します。観察とは見て観察するだけでなく、データを収集する事も含まれます。できれば事前バイアスがかからないよう生のデータを収集することが大切です。状況判断(Orient)観察結果、収集したデータから仮説を立てます。仮説を立てるのが難しい場合もありますが、無理矢理でもいいので仮説を立ててください。意思決定(Decide)立てた仮説を元に、どのように実行していくか検討します。収集したデータ、仮説からいくつか実行方法を考え、一番効果的なものを選択するのが良いでしょう。実行(Act)意思決定(Decide)で導き出した一番効果的と思われる方法を実行します。PDCAとの違い大きな違いは、やる事が分かっているか分かってないかです。PDCAはやることが分かっているのでPlan(計画)を立てることができますがOODAの場合は、やる事が分かってないので観察(Observe)、状況判断(Orient)のやる事を導き出すプロセスがあります。そもそもPDCAとOODAはどちらが良いかというのもなく、それぞれ使われるケースが異なるのです。「方向性の決まってるソフトウェアプロダクト」や、「会社の知名度を上げるため広告を打つ」など明確な方向性が決まってる場合は、PDCAを選択し「顧客満足度を上げたい」や、「ソフトウェアの品質を上げたい」などのゴールはあるが明確な方向性が決まってない場合は、OODAを選択します。このようにPDCAとOODAは使われるケースが全然違うんです。PDCAとOODAを比較する事はなく、それぞれにマッチするケースでPDCAかOODAを選択すれば良いのです。実際に私が関わったプロジェクトを例にします。開発効率を上げたい【観察(Observe)】どこに開発のボトルネックがあるか観察しました。・リリースしたがバグになった件数を観察する事とし、チケットの件数はRedmineから、予定通りに終わらない、バグになった件数は日々のやり取りメールから集計しました。集計したデータを元に以下の判断をしました。・2週間に1回リリースしてるが5、6件リリースして1件のバグが発生する確率が2回に1回くらいある。(ちょっと多いかな)・開発プロセスを確認したら、製造者とテスト担当者が同じでソースコードレビューも忙しさを理由に簡単にすませてる事があった。状況を見た結果、開発メンバーに対して現在の開発ペースが速いか遅いかは判断が難しく、バグを減らして、バグに対応する時間を開発に使うのがいいんじゃないかという判断になりました。バグを減らすために考えたことは「テスト、レビューをしっかりして開発プロセス正す事」テスト、レビューをしっかりすると今までよりも時間はかかるがバグが無くなれば結果的に時間を節約できると考えました。そこで、正しく開発できるプロセスを考え、そのプロセスを開発リーダーにレビューしてもらい実行できるレベルまでプロセスを作り上げた。【Act(実行)】あとは、正しい開発プロセスを適用して開発してもらった。このような施策はすぐに効果が出るわけではなく長い目で見なければいけない。ここで終わりではなく、プロセスを適用した結果を観察し次のOODAループでどんどん改善していく事が重要です。OODAループがチカラを発揮するケース「開発効率を上げたい」、「品質を上げたい」などゴールはあるが計画(Plan)が無い場合に大きなチカラを発揮します。計画(Plan)が無いのに無理やりPDCAを適用すれば間違った計画・行動になってしまい効果が出るまで時間がかかってしまいます。勉強できる人は、問題を解決できる問題解決力があるから仕事もできると思ってた。仕事はまさに問題を解決する事が目的だから。大手SIにいた時、有名大学を卒業した勉強ができてた人をたくさん見てきたが仕事ができない人もまあまあいた。勉強はできたのに仕事ができないのか?勉強には正解があるが、仕事には正解が無いからではないかと思った。勉強には正解がある仕事には正解がない勉強できるが仕事できる人、できない人の違い勉強には正解がある勉強の場合、教科書か、参考書か、先生のどこかに正解がある。答え(解決方法)の無い問題は勉強には出てこない。どれかに当たれば、必ず解決する。仕事には正解がないしかし、仕事には正解が無い。会社で問題に出くわした場合、会社の資料、ネット、先輩(上司)に当たると思うけど、正解が無い場合も多い。正解のある仕事もまあまああるけど、正解のない仕事(まずはこれでやってみよう)が結構ある。正解もなければ、パターンも無く、毎度毎度、違うパターンの問題が発生する事も多々ある。勉強できるが仕事できる人、できない人の違い勉強できる人は往々にして問題解決力があり、分からない事は調べ、考え、応用して問題を解決する作業を多くしてきた。考える時間も多く、難しい問題を解決してきたので勉強できる人の問題解決力は、相当鍛えられてるはずだ。そんな問題解決力がある人がなぜ仕事ができないのか?それは、「正解が無い」事が原因ではないか?仕事には正解が無いので、正解が無いまま突き進む事ができない。有名な大学を出てて仕事ができない人を何人か見てきたが、正解が無い仕事に対して「これでやってみよう」が上手くできない。勉強だったら正解があるので、応用問題も勉強した解決方法を駆使して解けるのだが仕事の場合は、解決方法がないので、自分で解決方法を考え、実践するのが苦手なようだ。解決方法を考えるのも苦手だし、考えた解決方法も的を得てない。逆に勉強できて仕事ができる人は、自分で解決方法を考え、実践するのが得意だ。現在分かってる事、分かってない事を整理し、ロジカルに仕事を進める事ができる。勉強できるのに仕事ができる人、できない人の差は、「解決方法を考える事ができるか、できないかの違い」なのではないか。自分は勉強できない方だったので、何で勉強できるのに解決方法考えるのが不得意なのか、勉強できる人に教えてもらいたい。(60)月別アーカイブスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。