タグ付けされた質問 「time-management」

17
見積もりを求められた場合の対応方法
プログラマとして、私たちは常に「どれくらいかかるか」と尋ねられていますか? そして、ご存知のように、状況はほとんど常に次のようなものです。 要件は不明です。すべての影響を詳細に分析した人はいません。 この新機能はおそらく、コード内で行ったいくつかの仮定を破り、リファクタリングする必要のあるすべてのことをすぐに考え始めるでしょう。 過去の課題から他にやることがあり、その他の作業を考慮に入れた見積もりを考え出す必要があります。 「完了」の定義はおそらく不明です。いつ実行されるのでしょうか。コーディングを終えたときのように「完了」、または「ユーザーが使用中」のように「完了」 あなたがこれらすべてのことをどれほど意識していても、「プログラマーのプライド」によって、本来考えていたよりも短い時間が与えられたり受け入れられたりすることがあります。締め切りと経営陣の期待のプレッシャーを感じるときは特に。 これらの多くは、組織的または文化的な問題であり、単純で簡単に解決することはできませんが、実際には、見積もりを求められており、合理的な答えを期待しています。それはあなたの仕事の一部です。単純に言うことはできません:私は知りません。 その結果、私はいつも私が後で達成できないことに気づくと見積もりを出すことになります。それは何度も起こりました、そして、私はいつもそれが再び起こらないことを常に約束します。しかし、そうです。 見積もりを決定して配信するためのあなたの個人的なプロセスは何ですか?どんなテクニックが便利だと思いましたか?

30
IT業界では、他の業界と同様に、大規模で障害のないプロジェクトを迅速に提供できないのはなぜですか?
National GeographicのMegaStructuresシリーズを見て、大規模なプロジェクトがどれほど高速に完了するかを知りました。準備作業(設計、仕様など)が紙の上で行われると、巨大なプロジェクトの実現自体はわずか数年、時には数ヶ月かかります。 たとえば、エアバスA380は 「2000年12月19日に正式に打ち上げられました」、「2005年3月上旬に」、航空機はすでにテストされています。同じことは、巨大な石油タンカー、高層ビルなどにも当てはまります。 これをソフトウェア業界の遅れと比較すると、ほとんどのITプロジェクトがなぜこんなに遅いのか、より正確には、なぜ同じ規模で同じ規模で、十分な人数の人がいるほど速くて障害がないのか疑問に思わずにはいられません。 エアバスA380などのプロジェクトは、両方を提示します。 予期せぬ主なリスク:これは最初に製造された航空機ではありませんが、技術の限界を押し広げており、小さな旅客機でうまく機能したものは、物理的な制約のために大きな旅客機では機能しません。同様に、たとえばボーイング747が完成した1969年には利用できなかったため、まだ使用されていない新しい技術が使用されています。 一般的な人的資源と管理に関連するリスク:プロジェクトの途中で辞める人々、休暇中に人に連絡することができない、通常の人為的ミスなど これらのリスクにより、人々はまだこれらの大型旅客機のようなプロジェクトを非常に短い期間で達成しており、配達の遅延にもかかわらず、それらのプロジェクトは依然として非常に成功しており、高品質です。 ソフトウェア開発に関しては、プロジェクトは旅客機ほど大きく複雑ではなく(技術的にも管理の面でも)、現実世界からの予期しないリスクがわずかに少なくなっています。 それでも、ほとんどのITプロジェクトは遅くて遅く、プロジェクトにさらに開発者を追加することは解決策ではありません(10人の開発者から2000人のチームに行くと、プロジェクトをより速く提供できる場合があります。計画し、それをまったく完了しないリスクを高めます)。 まだ配信されているものには多くのバグが含まれていることが多く、連続したサービスパックと定期的な更新が必要です(元の製品のバグにパッチを当てて航空機がcrash落するのを防ぐために、週に2回すべてのAirbus A380に「更新プログラムをインストール」することを想定してください)。 そのような違いはどのように説明できますか?それは、ソフトウェア開発業界が若すぎて、大規模でほぼ完璧な製品を非常に高速に提供するために、単一のプロジェクトで数千人を管理できないという事実だけに起因するのでしょうか?

21
顧客は、ソフトウェア製品の開発方法のビデオを録画してほしい
フリーランサーとして働いていると、顧客からの奇妙なリクエストをよく目にします。その中には日々の仕事に悪影響を与えるものもあれば、何らかのコントロールを設定しようとするものもあります。私は通常、予備交渉中にこれらのことに遭遇します。したがって、この状態では、自分の仕事と生産性に関心があり、顧客が自分の仕事を信頼することを顧客に説明するのは簡単です。 交渉が終了した後(契約が既に署名されており、ビデオトラッキングについては何も言及されていない)、プロジェクトに取り組み始めてから、顧客が記録するように要求したため彼のプロジェクトに取り組んでいるときにマシンで行うすべてのビデオ、つまり、カーソルを移動したり、文字を入力したり、ファイルを開いたり、ウィンドウを移動したりすることを示すビデオ 私は自分の会社で、自分のPCを使って働いています。 私はこの顧客に、そのような要求は受け入れられないと答えました。 デュアルスクリーンPCで数百時間の作業を行うには、録画したビデオ用に大量のディスク容量が必要になります。私はスペースを気にしない場合、私はこの顧客がそれらのビデオをダウンロードする私の帯域幅を浪費することを気にします。 ビデオを記録すると、全体的なパフォーマンスに影響を与え、生産性を低下させる可能性があります(マシンはパフォーマンスを損なうことなくこのビデオを記録するのに十分強力ですが、それでも有効な議論のようです)。 仕事を始める前にビデオ録画をオンにし、最後にオフにすることを常に覚えているわけではありません。 それはプライバシーの懸念かもしれません。ビデオを録画するときにメールに切り替えるとどうなりますか?この顧客プロジェクトに関するファイルを含むディレクトリを開くために、最初にすべての顧客のリストを含む親ディレクトリを開くとどうなりますか? このようなビデオは、プロジェクトのコストを追跡するための信頼できるソースにはなりません(時間単位で支払われます)。一部の作業は鉛筆と紙だけで行われるためです(実際はそうです。 PCを使用)。 これらのポイントにもかかわらず、顧客は、ビデオを録画したくない場合は、何かを隠し、彼のプロジェクトに費やしたリアルタイムについて嘘をつきたいからだと考えています³。 フリーランサーが毎日の仕事のビデオを記録することは通常の慣行ではなく、そのような贅沢な要求は例外的な状況に留まらなければならないことを彼に説明する方法は? ¹最もよくある例は、低速インターネット接続を使用する低速サーバーでリモートデスクトップを介して作業するように要求するか、レガシーとして深刻な理由なしに古いソフトウェアをWindows Meとして使用することを強制することです。サポート。 ²実際、私はすでに多くの管理およびシステム設計関連の作業を行っていますが、これは不可欠ですが、通常は顧客に誤解され、時間とお金の無駄だと認識されていました。関係のある顧客を観察すると、実際にはコードの行がゼロなので、彼はすでに行われたことに対して多額のお金を払うことを拒否するだろうと確信しています。たとえ合法的に設計レベルで多くの作業があったことを簡単に証明できたとしても、この顧客との関係を裁判所で終わらせたくありません。 ³プロジェクトの予想コストと最大コストをこの顧客に提供したため、リスクはそれほど高くありません。そのため、顧客は、契約で指定された最大金額を超えて、実際の作業にもっと費用がかかる場合。 actions自分のイニシアチブでアクションのビデオを効果的に記録する1つのケースは、特にセキュリティの問題に関しては、顧客の運用サーバーで直接操作する必要がある場合です。これらの手順を記録することは、何が行われたかを正確に把握し、作業にエラーがないことを確認したり、それらのエラーが何であったかを確認したりするための良い考えかもしれません。 更新: まず第一に、あなたのすべての答えとコメントをありがとう。 質問は私が予想したよりもはるかに多くの注目を集め、より多くの回答があったので、他の人に関連する可能性があると思うので、更新を追加します。まず、回答とコメントを要約するために、次のことが提案されました(ランダムに並べられます)。 示すように、トラッキングの他の方法を示唆しているTwitterのコード群発ビデオ、または、「より複雑なマイルストーンに続く単純、明確な成果と短いマイルストーン」配信など。 ビデオは信頼できるソースではなく、偽装できること、特にサポートのために実装するのが難しいことを説明します。 ビデオは作業のほんの一部を示しているため、信頼できるソースではないことを説明します。大量の作業はコンピューターを使用せずに行われ、問題の解決策を考えるのに費やされる余分な時間はカウントされません。 契約を守ります。顧客がそれを変更したい場合、彼は新しい交渉とより高い価格を期待しなければなりません。 「ただし、顧客がすべての料金をエスクローアカウントに入れることを要求する」、請求可能なすべての時間などをビデオテープに記録するよう弁護士に要求する、つまり「信頼のない環境で運用する」、追加費用をサポートする顧客。 これを禁止する法律を検索してください。私が住んでいる国で何人かが尋ねました。私はフランスにいます。そのような法律は会社の従業員を保護するために存在します(防犯カメラなどに関する厳しい規制がありますが、フリーランサーがプロジェクトに取り組んでいる間に画面を記録することを強制する契約に意識的に署名することを禁止するものはほとんどないと確信しています。 ビデオを送信して送信するだけです。顧客は「理解できないアクティビティのスニペットを数十秒間見る」ことになり、それらのビデオは捨てられます。 ダメって言って。結局のところ、それは私のビジネスであり、私はそれを行う方法を決定する唯一の人です。また、契約は既に署名されており、ビデオ追跡については何もありません。 ダメって言って。会社で採用しているプロセスと慣行は企業秘密と見なすことができ、分類することも、分類することもできます。 終了する。関係がこのように始まる場合、それは遅かれ早かれひどく終了する可能性があります。また、「彼が泥棒のようにあなたを扱っている場合-そしてそれが彼が示唆しているものである場合-XYZ機能が彼が想像したとおりに機能しない場合、それは後で悪化するでしょう」 これらすべての提案が均等に貴重ですが、私は個人的に、私はビデオを行うことを受け入れるというのが私の顧客に言うことにしましたが、この場合には、我々は契約を再交渉する必要がありますがあるだろうということを念頭に置いて、含めて、かなりのコスト著作権リリースの追加料金。新しい総コストは、プロジェクトの実際のコストの平均3倍になります。この顧客を知っているので、彼はそんなにお金を払うことを決して受け入れないと確信しているので、問題は解決しました。 2回目の更新: 顧客は、かなりの追加費用を考慮して、元の契約の再交渉の提案を事実上拒否しました。

22
開発者はどのようにして最新のテクノロジーを把握する時間を見つけますか?[閉まっている]
私はフリーランスのWeb開発者でしたが、2004年頃に管理ルートを下り始めましたが、再び開発(特にJavaScriptとHTML5 Web /モバイルWebアプリ)に戻ることを決定し、本当に得意な印象を受けましたこれらおよび類似の高速移動テクノロジーは、新しいスキルの学習に加えて、既存のスキルの向上に投資するために一定の時間を確保する必要があります。 私は今、かなり急な学習曲線があることに戻ってきているので理解していますが、どれだけ多くの人がそこにいるのかを見る-私がそこに立ち上がる唯一の方法は、深刻な時間を費やすことです。 フルタイムの開発者として働いている人にとって、私が理解しようとしているのはこれです。ほとんどの日、学習/研究に比べて実際にオフィスでコードを削るのに費やされる時間です。毎日2〜4時間を費やして、物事を進めるための最善の方法を身に付けることができました。 フルタイムで雇用されている優秀な開発者のほとんどは、仕事以外でかなりの時間を投資してスキルを磨いていますか? それとも、この完全に間違っているのを見ているのでしょうか?

16
開発中に開発仕様が変更されないようにする方法
問題:私が関与するほとんどすべての開発努力で、開発を開始する前に計画にどれだけ時間がかかっても、プロジェクトの途中またはプロジェクトの終わりに向かって大量の変更が常に必要と思われます。これらは時々大きな変更であり、多くの再開発が必要です。 私はお金を払っているクライアントのために働いていません。これは社内開発ウェブサイトの社内開発チームです。だから、私はそれまたは何かのために充電できるようではありません。そして、一日の終わりには、締め切りに間に合わなければなりません。 質問:仕様の変更が途中または開発後に発生するのを最小限に抑え、防止するために皆さんが見つけた最良の方法は何ですか?

10
仕事後のプロジェクトを開始して維持する方法
私はフルタイムの開発者として働いています。しかし、私の職場では、使用できるテクノロジーとプログラミング言語が非常に制限されています。すべての作業はC ++で行われます。 C ++がその主導的地位を急速に失っている(あるいはすでに失っている)ことは明らかです。(私を怒らせないでください、私は長年のC ++の経験があり、この言語が大好きです、単に事実を述べているだけです)。Java / Androidプロジェクトと、C#で実装したいプロジェクトのアイデアがいくつかあります。これは、私が雇用市場の動向を常に把握するための方法だと考えており、最新の分野で次の仕事を見つけるのに役立つことを願っています。 だからここに問題があります: 私の通常の勤務時間は10〜11時間で、子供や家事を終えた後、疲れて考えるのに1〜2.5時間ほどかかります。その時点で、私はイライラし、自分の計画に固執することができないことに失望し、翌朝目を覚ましてすべてをやり直します。 週末はさらに数時間ありますが、目標を達成したい場合は明らかに何か違うことをする必要があります。 時間を有効に活用する方法はありますか?あなたの誰かが同様の問題を抱えていて、それをうまく解決しましたか?

19
「停止点症候群」についてどうすればよいですか?
私は自分で「停止点症候群」と呼ぶ行動に気付きました...それは、「停止点」に到達するまで(または疲労するまで)作業を停止できないことを意味します。言い換えれば、機能の完了に取り組んでいるゾーンにいる場合、それが完了するまで停止しません。私が取り組んでいるバグの場合、この効果はさらに顕著になります。修正されるか、少なくとも理解されるまで停止しません。私はラップトップで仕事をしていて、VPNを持っているので、その夜遅くに家に帰って仕事に取りかかることができますが、その事実は仕事を辞めるのに役立ちません...バグを見つける前に死ぬのではないかと心配しています。 これを家族に説明するのは非常に苦労します。家族には、なぜ私が仕事から帰ってこないのか、時には午後11時に家に帰るのかを理解できません。マネージャーでさえもこれに戸惑っていて、同僚のほとんどが毎日同じ時間働くことに問題がないことに気付きました。 他の誰かがこの問題を抱えていますか?これを心配したり、変更したりする必要がありますか?もしそうならどのように?

15
非常に厳しいスケジュールでコーディングする方法は?
私は非常に厳しいスケジュールのプロジェクトに取り組んでいます。コーディングとテストの時間はあまりありません(毎日12時間以上働いているにもかかわらず、まだ遅れています)。その結果は非常に脆弱です。そのコードも非常にジレンマです。 このプログラムは、多くの国にあるお客様の会社のすべてのオフィスで使用されています。ユーザー/テスターからのエラーや、一部の機能の使用方法がわからないことについて、深夜に電話を定期的に受けています。 このプロジェクトに3年間携わった後、私は非常にストレスを感じ、エラーや電話について非常に心配しているため、よく眠れません。 いくつかの質問を聞きたいんです: 3年間、私が書いたコードはすべて完璧な使用シナリオコードです(簡単に壊れます)。設計が不十分であり、単体テストがありません。私はこの事実のために多くの問題を抱えています。したがって、プロジェクトのスケジュールが非常に厳しいときに機能するコードを書くことが可能かどうかを知りたいですか? 同じ時間でより良いコードを書くにはどうすればよいですか? 眠りにつくとき、どうすれば心をすっきりさせ、仕事を心配しないのですか?

19
プログラマーが複数のプロジェクトに同時に取り組むことは正常ですか?
現在の仕事には、2つのプロジェクトがあります。1つ目は非常に巨大なシステムであり、2つ目はそれよりも小さいが大きなものです(最初のプロジェクトは12年間、2番目は4年間開発されています)。 最初は、最初のプロジェクトのみに取り組んでいて、それに慣れようとしていました。それから私は2番目のプロジェクトに移り、そこで試みたので、最初のプロジェクトについての私の知識は日陰になりました。今、私は両方のプロジェクトに同時に取り組む必要があります。 どちらもJavaを使用しているにもかかわらず、異なるフレームワークを使用しており、理解するコードとビジネスロジックの量が非常に大きいため、私は本当に両方のプロジェクトを頭に入れることができません。 私の専門知識は非常に不自由になりましたが、それは普通であり、それに慣れる必要があります。単一のプロジェクトでのみ作業する場合はどうなりますか?または、懸念を提起するべきですか、それとも雇用主を変えるべきですか?

8
専門能力開発は会社の時間に行うべきですか?
小さなコンサルティング会社で初めてパートタイムのソフトウェア開発者として、私は自分のソフトウェア開発の知識を深めるために時間を整理するのに苦労しています-それが本を読んでいるか、StackOverflowの一般的な質問に追いついて、技術を研究しています徹底的に使用している、またはHacker Newsのフロントページに続いている。自己割り当ての学習時間から得られた結果を見ることができますが、専門能力開発を通じて得られたスキルと知識をリストして実証することは困難です。 同社にはPDポリシーが定義されていないため、何か成果物を今すぐ実現するためのプレッシャーがたくさんあります。コンサルタントのために働くとき。私は同僚が何をするかを確認しましたが、彼らは自己改善に時間を割くようには見えません。特定のMSDNリファレンス、コードサンプルなどを必要に応じて検索し、与えられた問題を処理するだけです。 PDのポリシーは、規模や文化の異なる企業によって異なることを認識しています。私のような企業は、おそらくちょっとしたケースです。私はよりベテランの開発者からの意見や経験を聞きたいです。特に、チームまたは会社でPDポリシーを選択する必要がある人。 また、PDが完全に存在していても、PDへのより根本的なアプローチについても学びたいと思います。他の人が何をしようとしているのかを見るのはいつも面白いです。 完全な要約ではありませんが、私が尋ねようとしているのは: 企業がPD時間を割り当てることは一般的ですか、または推奨されますか? 開発者の知識とスキルを最新のものにすることは誰の責任ですか? パートタイムの勤務スケジュールは、PD勤務時間の割合を下げるべきですか? 開発者は、開発者以外の同僚に、ブログや本を読むことは純生産的であることをどのように示すことができますか? ブログや本を読むことは、実際には生産性が高いのですか?(参考文献を歓迎) ブログを書くことはPDの方法として効果的ですか?(ハッカーニュースの最近のテーマ) ここでどの質問をする必要があるか正確にはわからないので、これは一種の広範な質問です。したがって、私が対処していない関連する問題についての考えは大歓迎です。

24
どのように仕事に集中していますか?[閉まっている]
時々、仕事のためにやらなければならないことが面白くて魅力的です。時々、そうではありません。時々、そうではありません。 あなたの脳がやるべきこと以外のことをやるとき、特にインターネットと興味深いSlackの無限の機会が手に入れるとき、それらの鈍いストレッチに対処するための特定の戦略またはトリックがありますか?

10
完璧主義のためにどこで線を引きますか?[閉まっている]
プログラミングの場合、完璧主義は良い面と悪い面があります。 問題を解決するとき、いつどこで線を引きますか? ソリューションが過剰すぎる、一般的すぎる、または単に未来的すぎると判断するのはいつですか? 質問が不明な場合はコメントしてください。

7
わずかな時間で重要な技術的決定を下す方法
私の会社がWPFアプリケーションをLinux / Android / iOSに移植するために使用するツールとプラットフォームについて非常に深刻な決定を下した2日間です。 明らかに、すべての可能なオプションについて読んだり、試用、プロトタイプの作成などについて読むには2日では十分ではないことを先輩に指摘することができます。私はそれを言うことができます。少し助けにはなりません。 2日後に決定が下されます。期間。 片方からはイライラし、もう片方からはこのアプローチには真実があると思います。さもなければ、ベンチワークやサンプルの実行を行う多数のダウンロードされたSDK、フレームワーク、API、ブログ記事などに簡単に埋もれてしまいます。そして、それがすべてのためだったことをプロセスで忘れます。 それでも、間違った決定が会社に多大なコストをかけることを恐れています。それでは、そのような決定を下すための「理想的な」プロセスは何だと思いますか?

9
抽象化:問題の解決と一般的な解決策の間の戦争[終了]
プログラマーとして、私は自分のプログラムをできるだけ抽象的で一般的なものにするジレンマに陥っています。 そうすることで、通常、コードを再利用し、再び発生する可能性のある(または発生しない)問題のより一般的な解決策を得ることができます。 それから私の頭の中のこの声は、問題のダミーを簡単に解決するだけだと言います!なぜあなたが必要以上に多くの時間を費やしますか? 実際、私たちは皆、この疑問に直面してきました。そこでは、抽象化があなたの右肩にあり、Solve-it-愚かな人が左に座っています。 どれを、どのくらいの頻度で聞くべきですか?これに対するあなたの戦略は何ですか?すべてを抽象化する必要がありますか?

5
プログラミングが遅すぎますか?[閉まっている]
私はこの業界に1年しかいませんでしたが、特定のタスクを見積もるのに問題がありました。これを閉じる前に、はい、私はすでにこれを読みました:見積もりを求められたときにどのように対応しますか?それは私が抱えている問題とほぼ同じです。しかし、より具体的な経験の尺度、定量化可能な、またはおそらく他のプログラマーの平均的なパフォーマンスを探しています。回答の範囲は数週間で、1日程度に割り当てられたタスクのレベルに関する回答を探していました。(これにはQAやドキュメントの送信は含まれず、TDDを使用した場合のテストの作成からテストの送信前のページの作成までの実際の開発時間のみが含まれます) 現在の現在のレートは次のとおりです(ASP.NET Webフォームで)。 現在、1日(8時間)の時間を与えられている場合、既に構築されたアーキテクチャ上に、グリッドリスト(複雑なロジックはなく、作成と読み取りのみ)を含む単純なデータ入力ページを開発できます。 複雑な機能を追加し、ページを更新および削除すると、1日がタスクに追加されます。 ページをゼロから開始する必要がある場合(ソリューションなし、既存のWebサイトなし)、1日かかります。 (常にではありません)しかし、何か新しいことに遭遇したり、まだ行っていない場合は、丸一日かかります。 予想よりも長い見積りをするたびに、他の人よりもかなり遅れていると他の人が思うと感じます。1ページだけでも1日もかからないはずだという期待があったので、心配しています。はい、間違いなく改善の余地があります。常にあります。学ぶべきことがたくさんあります。しかし、私の現在のレートが遅すぎるのか、ただ平均なのか、それとも業界で1年以内の誰かの平均なのかを知りたいです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.