2015-12-17 18:27:44 +0000 2015-12-17 18:27:44 +0000
18
18

どうすれば仕事でのバカなミスをなくすことができるのでしょうか?

私は、小さなITコンサルティング会社でソフトウェアエンジニアとして働いて3年になります。優秀な仕事をしようと努力していますが、非常にケアレスミスや愚かなミスが仕事に忍び寄ってきます。例えば、間違った相手にメールを送ってしまったり、レポートの重要な部分を忘れてしまったり、ライブサーバーに間違ったビルドをデプロイしてしまったり、コードの重要なバグを見逃してしまったり。どんなにミスを避けようと努力しても、私はミスをしてしまいます。上司は私に怒りと怒りを覚えたままで、経験豊富なプロに愚かなことを期待することはできないと言っています。彼は、もし私がこれ以上ミスをしたら、上層部に解雇/解雇を提案すると私に警告しています。ミスを永遠になくすためには、どのようなツール/方法を使えばいいのでしょうか?

回答 (8)

39
39
39
2015-12-17 19:01:15 +0000

以下の3つのことを行うことで、より正確さを高めることができます:

  • チェックリストや手順書を使用して(自分で書く)、それに従う。どのサーバーをターゲットにしているかをダブルチェックする」というような手順を含めてください。ミスの影響が大きい場合は、実際にリストを印刷し、ペンでチェックしながら進めていきましょう。あなたが最初の文字を入力した後、メールクライアントがToの行に記入してくれるとしましょう。手紙を入力して送信をクリックしないでください。
  • 間違えたときはいつでも、なぜ間違えたのかを自問自答してみましょう。どのステップをスキップしましたか?何を見ていなかったのか?なぜ、正しいものと間違ったものが似ているように見えたのでしょうか?どうすれば、より簡単に正しいことを確認することができますか?**今学んだことを使って、あなたの手順を更新しましょう。実際のところ、それは経験とはかなりのものです。
13
13
13
2015-12-17 19:51:58 +0000

仕事でくだらないミスをしないようにするには?

仕事の品質に問題があり、個人の手順や仕事の習慣を改善・発展させるための適切なフィードバックを作成するために、ミスを発見する仕組みが必要です。品質向上は、エラーとその原因を発見し、それらを修正するための_行動計画を開発するためのメカニズムの開発と関係しています。

ステップ1:ミスは “愚かな "ではないことを認識する - 彼らは深刻である。あなたはそれらの上にあなたの仕事を失うかもしれません。私は、あなたの問題の大きな指標は、これらが防ぐのは簡単なことのように見えるのに、あなたはまだそれらをやっているということだと思います。しかし、それらを防止しないことによって、あなたは深刻な問題を抱えています。

ステップ2:スローダウンします。あまりにも多くの場合、"ロックスター "プログラマーやエンジニアは、高速かつ猛烈に移動するものとして見られている - 何もそれらを停止しません!現実には、彼らは彼らのようなものではありません。現実は、彼らはこのようなものではないということです。このような状況もありますが、実際にはそうではない状況もたくさんあります。焦っていると感じるのを止めて、一呼吸おいて、スローダウンしましょう。

ステップ3:何かを "終わらせる "前に、立ち止まって休憩してから、戻って復習しましょう。コーヒーを飲んだり、メールを読んだり、気が散らないようなことをして、手元のタスクからあなたの心を奪い、あなたがそれに戻るときに新鮮な視点を持っているでしょう。この方法は、あなたの生産性を下げたり、遅くしたりするように感じるかもしれません。しかし、このアプローチでは、ミスに早く気づくことができ、生産性を上げるために重要なことです。ですから、「送信」を押す前に、別のメールを読んだり、サーバーの状態を確認したりしてみてください。これはコードを書くだけのことではありません。エラーが発生した理由を把握しようとする時間がかかります。どこで急いでいるのか?コピー/貼り付けエラー?他の人の仕事や意見に依存していませんか?そうすることで、エラーが発生した時に、エラーの原因に気づくことができるようになります。後になってわかったとしても、あまり参考にはなりません。あなたの新しい習慣と実践の実用性に注意を払ってください。休憩を取った後に発見したエラーや問題をカウントするためにスプレッドシートを保管しておきましょう。発見があなたの上司を怒らせたり、恥ずかしいされているであろう何かを防止した場合も、注意してください。これは、より良いあなた自身の仕事の受容性を自己評価する能力を開発し、また、どのような習慣が最も効果的であるかを学ぶためにしようとしています。あなたはeverythingのためのチェックリストや手順を開発することはできませんので、しばらくすると(あるいはかなり早く)、ある種のエラーを防ぐための再現性のある方法を作成することができるエラーのパターンを見つけることができます。これは、複雑な作業を頻繁に行う場合にのみ有効です。そうでなければ、リストをチェックしない、それを最新の状態にしない、または、あなたが管理することができるよりも多くのリストや手順を作成して、それらを時代遅れにして古いものにしてしまうことがあります - おそらく、より多くのエラーにつながるでしょう。ここでの回答の多くは、プロセス/手順/チェックリスト(特にコード開発の周り)の開発に焦点を当てていますが、「品質管理」や「品質改善」の前提は、プロセス開発や改善のためのフィードバックの手段としてのエラー検出に関係しています。エラーの原因がわからなければ、「より良い」プロセスを開発することはできません。エラーの原因を発見することに取り組む ほとんどの場合、あなたはただ急いでいるだけで、自分の仕事を「ダブルチェック」していません。ゆっくりとしたペースでより生産的な作業を行うためのヒントをご紹介します。

7
7
7
2015-12-17 22:05:45 +0000

仕事をやめること。それしかミスをしないようにする方法はありません

いや、マジで。あなたは常にいくつかのミスをするつもりです。それは人間の一部です(あなたがそうであると仮定しても安全だと思います)。どんなプロの開発者でも、いくつかのバグを抱えた作品を作ろうとしていますが、それはOKです。これが、テスト駆動開発、ユニットテスト、品質部門のようなものがある理由です。もしあなたの上司が一回目のパスでバグのないソフトウェアを期待しているのであれば、それは合理的な期待をしているとは言えません。

そうは言っても、ミスが起きたからといって仕事をやめるわけにはいかない世の中なので、ミスのリスクを減らすための対策をしています。私は製造業のお店で働いているので、キャッチフレーズは「ポケヨケ」です。これは自動化を意味します。私は、ソフトウェアを生産に展開するために自動化されたビルドプロセスに移行することを *間違いなく *お勧めします。これには一人の開発者だけではなく、複数の開発者の関与が必要になりますが、できる限りの努力をする価値はあります。アクションをコミットする前に時間をかけてレビューすることで、多くのエラーを防ぐことができます。変更をコミットする前に、1分かけてコードを確認しましょう。致命的な送信ボタンを押す前に、電子メールを確認するために余分な時間を費やしましょう。開発者として、バグを見つけたときの最初の行動の一つは、信頼できる同僚に見てもらうことです。新鮮な目で見れば、あなたが無意識にフィルターをかけてしまっていたあらゆる種類の問題を見ることができます。そして、信頼できる同僚がいない場合は、新しい仕事を探しましょう。あなたはジュニア/ミッドレベルの開発者のようですが、開発者として成長するためにはサポートシステムが必要です。あなたは、ジュニア/ミッドレベルの開発者のように聞こえるし、開発者として成長するためのサポートシステムを必要としています。

2
2
2
2015-12-17 21:09:38 +0000

いや、間違いをなくすことはできない。しかし、最も重要なものはキャッチできるかもしれません。自分がやっていることを意識して、より安全にできる方法を探すことが大切です。しかし、誰もが一日中小さなミスをしています。ほとんどのミスは簡単に直すことができるので、簡単には直せないような方法で何かがうまくいかない可能性があるときに気づくことができるようになりましょう。クライアントとのコミュニケーション、サイトへの展開、ドキュメントへのグローバルな変更など。何をしているのか、なぜ、どのようにしているのかを理解していますか?これは、より安全に行うことができますか?やらないよりやった方が良いと確信していますか?

危険な努力をする前に一旦停止しましょう。受信者、件名、内容、添付ファイルを確認せずにメールを送るのはやめましょう。一つ一つ確認してください。時間をかけてください。クライアントAの見積書をクライアントBに送ると、両方のクライアントを失うことになりかねません。1分ほどかけて確認した方がいいでしょう。緊急 “であっても、急いで誘惑されないようにしましょう。何かがうまくいかない場合に何をするかを事前に知っています。あなたの間違いを修正する必要がある場合は、すぐにそれを行うことができるように準備します - しかし、急ぐことなく。何か間違ったことをしたかどうかは、どうやって分かるのでしょうか?もっと早く気づく方法はありますか?

文書化 多くのステップがあるものは何でもいいです。ドキュメントがある場合は、チェックリストのようにそれに従ってください。たとえ一度しかやらなくても - レポートを書く前に、入るべきものをすべてリストに書いておきましょう。

Track to-does 忘れ物が問題の場合は特に注意しましょう。あなたがする必要があり、今やっていないことは何でもそこに入れるべきです。一度にすべての場所でそれらを追跡し、あなたのto-doリストに戻って行くことを続けます。あなたのバックポケットに折りたたんで隠してあるポストイットノートに頼らないでください。もしあなたが入力すべき5つのことのリストを持っているなら、その5つのことを実行するプログラムを書くことができて、あとは1つのことを間違えるだけですか?もしあなたがソフトウェアを作っているなら、バグが発生したときに自動テストを実行して、それを拾うことができますか?100%カバーすることを目標にしていますか?コードを壊すことを目標にテストしていますか?テストの実行を忘れる心配がないように、継続的インテグレーションを行っていますか?

セカンドオピニオンを求める **検証できず、簡単に取り返しがつかないようなリスクの高いことをしている場合。ソフトウェアでは、コードは常に誰かにテストされてから受け入れられるのが一般的です。すべてのミスは、プロセスを修正する機会です。あなたの心をクリアにするために日中に時間を見つけ、沈黙やリラクゼーションの数分を持っています。出勤前、出勤後、昼休みなど。十分な睡眠をとる。規則正しく健康的に食べる。

2
2
2
2015-12-17 19:14:00 +0000

もちろん完璧になることはありませんが、精度を上げる方法はあります。一番いいのは、自分の仕事のダブルチェックだけではなく、追加の手順を導入することだと思います。もっと気をつけよう」「ダブルチェックをしよう」と思っても、それだけでは、なかなか発見できる可能性は低く、それだけで失敗してしまいます。具体的な提案:

  1. ユニットテスト。適切なユニットテストがあれば、コードに変更を加えたときはいつでも、すべてのテストを実行して、うっかりバグを導入していないかどうかをダブルチェックしてくれます。より良いデプロイの手順。最初にステージングサーバにデプロイし、prodに使用する正確なコマンドを使用して、本番に行く前に、デプロイが正しいかどうかを確認します。ユニットテストを除いて、すべてのデプロイの中で、自分のビルドが完了したと思ったら、もう一度自分でできる限りのビルドとテストを行う時間を確保してください。また、自分が変更したと思う部分だけをテストするのではありません。

ミスをしたときには、自然なヒューマンエラーに対する安全策を設定するために、これらのラインに沿った解決策を考え、上司に提示してください。

1
1
1
2015-12-17 23:10:34 +0000

私は10年以上ソフトウェアエンジニア/アーキテクトとして働いてきましたが、間違いなく言えることは、すべてのミスをなくすことはできないということです。私があなたに与えることができる最高のアドバイスは、どのタスクが最もリスクが高いかを判断し、そのリスクを軽減するための手順を踏むことです。ほとんどの場合、間違った相手にメールを送ることは大したことではありません。ここで働いている他のジェニングスの誰かに宛てたメールを何度受け取ったことか。しかし、機密情報が含まれている可能性のあるメールを送る場合は、必ず受信者と内容をダブルチェックするようにしましょう。重要な文書を書く場合は、チェックリストやアウトラインを書き、内容をダブルチェックしてから提出するようにしましょう。ビルドのデプロイについては、常に自動化されたプロセスを使用し、可能であれば最初にセカンダリサーバにデプロイします。私のチームでは、Ruby サービスをセカンダリサーバにデプロイし、テストを行い、セカンダリサーバをプライマリサーバに反転させています。その時点で何か問題があれば、いつでも古いサーバにフリップバックすることができます。これらのどちらもできない場合は、リスクが高くなりますので、私のアドバイスとしては、このタスクに余分な時間と注意を払うことをお勧めします。リスクの高いステップごとに、すべてを二重三重にチェックしてください。コードのバグについては、通常のワークフローとエッジケースをカバーする良いユニット/統合テストを書いていることを確認してください。何かを変更して他の何かを壊した場合、ユニットテストが失敗してバグを早期にキャッチできるように、プロジェクト全体が可能な限り高いユニットテストのカバレッジを持っていることを確認するのは良いアイデアです。これではすべての間違いを捕まえることはできませんが、良いスタートとなります。コードがブラックボックステストの準備ができたら、コードが触れるワークフローだけをテストするのではなく、コードがプロジェクトのどの部分に影響を与えているかを分析し、それらのワークフローもテストしてください。ブラックボックステストは、通常のケースとエッジケースの両方をカバーする必要があります。

0
0
0
2015-12-17 18:35:56 +0000

プロセスはどの程度文書化されていますか?例えば、ライブサーバに間違ったビルドをデプロイすると、大きなエラーになりそうですが、ソフトウェアではコードにバグがあるかもしれませんが、ビルドXがサーバYに行くように冗長なチェックを行うことで、最小限に抑えることができます。私は、将来的にいくつかのミスを避けることができるように、解決策を作成して上司に提案したくなります。何度かチェックしてみたいと思うものと、何をチェックしてもあまり良くないものがあるかもしれないことに気をつけてください。完璧さは、スポーツのいわゆる偉大な人の数以上のように達成されることはほとんどありませんが、マイケル-ジョーダンのようなゲームの勝利のショットを逃した。もしあなたが治療法を知りたいのであれば、認知行動療法、方言行動療法、そしてあなたが完璧でありたいと思っている負の思考パターンと戦うために使用されるであろう受容とコミットメント療法を調べてみてください。間違いは起こるでしょう、キーは、あなたがそれらにどのように応答するかを検討することですし、自己認識と自己管理は、別のアイデアをしたい場合は、勉強するために他の何かである可能性がありますように、あなたの感情的な知性はどのように良いです。ある意味では、これは、いくつかのケースで有用なヒントになることができますそれにタイプミスを持っていないように、送信する電子メールを校正する前に一握りの秒を待つことをお勧めします人々に似ています。

0
0
0
2015-12-17 19:20:28 +0000

私もいくつかのケースではあなたと同じ船に乗っていますが、私は違うバックグラウンドを持っています。私の前の仕事でコードをライブでプッシュしたとき、私たちは場所に自動化されたプロセスを持っていました。新しい仕事では、残念ながら自動化されたプロセスを入れることができません。そのため、あるはずのない小さなディテールをあちこちで見逃してしまいます。私の上司はそれについてはずっといい人なのですが、がっかりしています。押し上げたいファイルのリストを確認して、ダブルチェックしてからやるようにしています。また、やる前に何をやるのかという精神的な手順も持っています。これは助かります。ちょうどあなたが何かを忘れていなかったことを確認するためにそれを行う前にそれをやっているようなふりをしています。1対1で、あなたが改善したいとどのようにそれをしたいかの概要を説明します。あなたがこことそこにいくつかの小さな詳細を欠いているとあなたが改善したいと思います説明します。おそらく彼は提案を与えることができますが、彼は小さな詳細にあなたを解雇すると脅している場合は、それはあなたが考慮し、準備しなければならない何かであると言うでしょう。