長期的にアウトソーシングコードはより高価ですか?コードの品質に悪影響を及ぼしますか?[閉まっている]


16

私は、まともなソフトウェア製品の知的財産を所有し、年間のライセンス供与から素晴らしい収入を得ている会社を知っています。ただし、ディレクター(非技術的)は、利益率を大きく食い尽くして開発チームを維持するためのコストについて不満を述べ、特定のモジュールの開発を低料金で課金する他の国へのアウトソーシングを検討しています。

個人的には、これが長期的にはより費用対効果の高いソリューションになるとは思いません。これにより、問題が発生した場合に通信障害が発生する可能性があります。さらに、仕様を水密にする必要があり、いずれにしても時間がかかる可能性があります。私の意見では、チームで作業する場合、コミュニケーションが重要です。または、この作業を効果的に行う方法はありますか?


24
プログラマーの給与のコストは、ソフトウェア会社の利益率を食いつぶしていますか?誰がそれをサンクしたでしょうか?!
ディマ

20
PHBはより多くのお金が欲しい-> ​​PHBは賃金を支払わなければならないことを認識している-> PHBはより安い人々のために全員を退治することを決定する->会社はチューブを使い果たす。疲れた古いレコードです。
スティーブンエバーズ

2
「プログラマーの給与のコストは、ソフトウェア会社の利益率に食い込んでいますか?だれがそれを捨てたでしょうか?」そして、その時点で、会社はソフトウェア開発から抜け出し、死にゆくソフトウェア支援に集中する時です製品。:-/
ティンマン

19
それは機能しますが、必要なコミュニケーションのために、新しい国に拠点を置く中核会社が必要です。あなたの会社は、おそらくそのディレクターの地位をアウトソーシングするのにかなりのお金を節約するでしょう。
dietbuddha

1
悪い例の1つは、QuarkとQuarkXPressで、95%の市場シェアからほとんどゼロになりました。
gnasher729

回答:


41

誰かがこの動作の例を持っていると確信していますが、私はそれを見ていません。

私はフォーチュン500社で長年働いており、そこで多くの開発を外部委託しました。私たちが(社内で)それを行った場合よりも費用がかからない外部委託プロジェクトの例はありません。

彼らのプログラミング率は私たちのものよりも低かったものの、私たちは社内チームの場合の3倍の時間を外部委託チームの管理に費やしました。これは、社内チームのニーズよりも詳細な要件を持つために必要な追加時間と、コードが決して正確に近いものではなかったため、QAに必要な追加時間に加えて発生します。


1
+1-私も...すべての企業が同じプレイブックを使用しているのだろうか。
アリ

それはほとんど私が期待したことです。
セス

私は古い職場でこれを見ました。彼らはリモートの開発者を管理するために往復する必要があったため、最終的にはより多くのお金を費やしました。同社はもはや独自のソフトウェア開発を行わず、M $製品をカスタマイズします。
ジョルジオ

31

素早く手に入れるか、安く手に入れるか、うまくやらせることができます。3つすべてを使用することはできません。3つのうち2つでもストレッチできると主張します。


18

ソフトウェア会社にとって、これは単なる愚かです。彼らが合理的に理にかなった決定に最も近いのは、会社をより安価な人材を持つ別の場所に移転することです。

ソフトウェア開発をアウトソーシングするソフトウェア会社は、もはやソフトウェア会社ではありません。私はあなたがあなた自身の競争を作成しているので、獲得した利益は短命になると主張します。彼らは、彼らがあなたよりも製品をよく知っていることに気づいたら、彼らはもうあなたを必要としないことにも気づきます。


9
+1これは「コアコンピテンシーを外部委託しない」というルールに触れているため、
Sparky

開発内容に大きく依存します。たとえば、時系列データベース製品のAPIを使用するスクリプトレポートとダッシュボードをアウトソーシングしています。社内でさまざまなスクリプトや顧客のカスタマイズをすべて行うのに十分なスタッフがいないためです。 。コア製品開発のアウトソーシング、はい、ただし、すべてのソフトウェア開発がコアコンピテンシーではありません。
ピートKirkham

13

他国の会社へのアウトソーシングの私の唯一の経験は私の最後になります。採用された会社は、期限内に作業を完了できず、仕様をリモートで満たすことさえできなかったため、社内でロット全体をやり直す必要がありました。

ただし、信頼できる信頼できる会社を見つけることができる場合(つまり、他の人からそれらについて良いことを見たり聞いたりした場合)、価値があるかもしれません。


契約には最終製品を指定する条項はありませんでしたか?
snmcdonald

16
@snmcdonald:このような句は、適切に指定することは非常に難しく、国際的な境界を越えて実施することは非常に困難です。そして、アウトソーシング会社が単に引き渡さない場合、契約の内容は関係ありません。お金を払わないで終わったとしても、あなたは自分の努力を注いで、そのすべての時間をトイレに注ぎました。
ボブマーフィー

1
@snmcdonaldはい最終製品は明確に指定されており、個々の部品は優先度で指定されています。製品のリリースから約2週間後の3か月後に、彼らが行ったことを私たちに送ってくると、彼らは私たちに非常に貧弱な実装と一緒に必要ではないもののいくつかを含む非常に不完全なバージョンを送ってくれました重要な(彼らがそこにいた場合)。全体的に非常に費用がかかり、残念です!
10

10

ディレクターは、経験豊富な地元の開発者の一部を、専門知識を判断する能力がなく、コードをまったく経験しておらず、知らない人から直接監督も指導も受けられない遠い国の人々に置き換えたいと考えています。コード。

私はそれを二度経験しました。どちらの場合も、安価な外国企業は適切な品質で時間通りに納品できませんでした。地元の開発者が仕事が海外に向かっていると聞いたとき、彼らは冗長になるのを待つのではなく、他の仕事を見つけました。専門知識の出血が続くと、スケジュールはずれ、重大なバグは修正されず、顧客は怒って競合他社に切り替え、最終的に両社は倒産しました。

コミュニケーション、期待、文化にも奇妙な問題がありました。たとえば、外国のチームは多くのコードをチェックインしていないか、メールにすぐに応答していませんでした。地元のITマネージャーはコストを抑えるためのボーナスを得たため、オフィス全体を低速のインターネット接続で使用できるようになりました。また、第三世界のQAテスターは、同じバグレポートにいくつかの非常に異なるバグを定期的に入れています。彼らのマネージャーは、バグ番号を使い果たすことを恐れていました。

安価な場所の一部のチームは大丈夫です。聞いたところによると、Red Hatは北京に非常に有能なチームを持っているようです。しかし、彼らはそれを始める前にすでに世界中の在宅勤務者と長年の経験があり、北京の人々はレッドハットの従業員であり、アウトソーシング会社ではありません。


9

はい-あなたはあなたが支払うものを手に入れます。

私の経験では、市場や開発のニーズが非常にシンプルで、言語の壁がある可能性のある開発者にメールで簡単に説明できなければ、非常にシンプルなので、実際に会社に投資していない開発者でも成功することができます品質の高い製品を作成すると、そうです、あなたの製品は苦しむでしょう

私は大規模なローカル開発チームがある会社で働いていましたが、管理チームがより多くのお金と労力を販売に注ぎ込んだために、製品が苦しみました。多大な努力が販売に注がれたため、私たちは「素晴らしい」ことをしているように見えましたが、収益を上げるために、販売プロセスにお金とリソースを注ぎ続けなければなりませんでした。

リモートチームがありましたが、社内に完全に統合し、ローカルチームと同じレベルで参加しました。それが唯一の方法です。私は彼らの地元のチームリーダーであり、私たちは定期的に彼らと現場で仕事をするために飛び立ちました。地元のチームと同じように、会社のシャツとジャケットを提供しました。すべてのことを考慮した後、おそらく20〜30%節約できました。それ以上のコストを削減しようとするシステムをまとめると、製品はそれに応じて苦しみます。


3

質の高いアウトソーシングチームと協力しており、経営陣が受け入れ基準を伝え、実施する意思がある場合。

その場合、コストは社内開発製品とほぼ同じ料金になります。

運が良ければ、あなたも同じ品質を得るかもしれません。

私の会社は社内に開発スタッフを置いており、製品開発を外部委託していないため、少し偏見があります。開発を外部委託した統合パートナーとの経験は、その決定に関係していると思います。


3

私の経験では、プロジェクトのアウトソーシングは、より良いマージンを得るための最良のソリューションではありません。

職場では、そのようなことが起こっていて、他の人も言ったように、最終的には穴のあることをやり直し、運用サーバーにあったものを維持することになりました。問題に関する結論は、2倍の費用がかかりました。

この問題についての私の意見は、開発をアウトソーシングするマージンについて違いを生じさせることを考えているなら、投資を捨てているかもしれないということです。考えてみると、製品の成功は期待通りに機能することであるため、dev-teamを変更すると、状況がくなる可能性があります。


1

十分に計画された/完了したオープンソースソフトウェアがあなたの答えかもしれません。なぜなら、それは非常に収益性が高く、メンテナンスがコミュニティにいくらか委任されるからです。しかし、成功の秘recipeはありません。私ができる最良のアドバイスは、実際にオープンソースとは何かについてのいくつかの講演を推奨することです。

そしておそらくまた:

私の意見では、オープンソースに関することは、あなただけでなくすべての人にとって価値のある何かを構築することです。オープンソースの力はコミュニティ内にあります。

また、上司や会社がソフトウェアを公開することに抵抗がある場合は、自分のビジネスロジックとノウハウの詳細を分離してください。だから、あなたがしていること:

  1. あなたのリソースでオープンソースプロジェクトをインキュベートします
  2. コミュニティを育てる
  3. ???
  4. 利益=)

ええ、私は真面目で、「???」十分な関心を集めた後に追求したい戦略が含まれます。Githubやtwitterなどの今日のツールを使用すると、簡単に言葉を広めることができますが、最初の印象は十分に興味深いものであることに注意してください。

実際にオープンソースが必要ない場合成功する場合は、実装する前にビジネスモデルとして理解する必要があります)、いつでもサービスとして起動できます。そのためには、Carsonifiedビデオを確認しますが、あなたの会社のための他の多くのこと。

最終的に、オープンソースであること、またはサービスとして起動することは、プロジェクトを長期的に持続可能なものにする方法です。


1

私はこの引用の著者を覚えていないが、それは釘を打つ。

密結合コンポーネントで一緒に作業している疎結合チームは失敗します。必然的に

アウトソーシング=疎結合チーム。

相互に依存するコンポーネントの作業を地理的に分割してコストを削減しようとすると、常に失敗します。

一方、私の経験に基づいて、ソフトウェアポートフォリオの全体を移動することは機能する可能性があります。つまり、コストを削減して高品質で開発できることを意味します。


これは質問にどう答えますか?
グナット

質問の本文は、アウトソーシング=疎結合チームに関するものです。相互に依存するコンポーネントの作業を地理的に分割してコストを削減しようとすると、常に失敗します。一方、私の経験に基づいて、ソフトウェアポートフォリオの全体を移動することは機能する可能性があります。つまり、コストを削減して高品質で開発できることを意味します。
マロスウルバネック

1
@MarosUrbanec-コメントは回答の一部である必要があります。引用自体は、答えとして単独で立つほど強力ではありません。

1
@MarosUrbanec +1素晴らしい引用です。回答の本文にコメントを追加して、より回答のようにしました。
Tulainsコルドバ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.