システムを自社で開発しようにも「エンジニアが採用できない」「開発のノウハウがない」とお困りではないでしょうか?
日本ではIT人材が不足しており、今後ますますエンジニアの採用は激化することが予測されます。そこで注目されるのが、「システム開発の外注」です。
今回は、国内外でシステム開発支援やエンジニアの採用・育成経験を10年以上もつ私が、システム開発を外注する際のメリット・デメリットや、会社選びの注意点まで解説します。
システム開発の外注を検討中の方はぜひ最後までご覧ください。
著者:株式会社LIG テクノロジー事業部 部長 工藤 充世アクセンチュア株式会社にて、スクラッチ・パッケージ開発のデリバリー部隊に所属。100人規模のSIプロジェクトを多数経験。SI経験15年以上。経験領域はアプリ、IF、データ基盤、インフラ。クライアントファーストを信条にソリューションの提案からデリバリーまで幅広く実施。 |
はじめての相談相手として、業界歴10年以上のベテランPMが伴走する弊社LIGはいかがでしょうか?
- 業界歴10年以上のベテランがPMとして参画
- 企画や設計など上流工程から一貫して支援可能
- 自社で保守・運用しやすいノーコード開発・ローコード開発にも対応
貴社のご要望やコスト・機能面の具体的な話など、ビジネスの壁打ち相手としてぜひお気軽にご相談ください。
目次
システム開発の外注と内製の違い
システム開発の外注とは、文字通り自社以外の企業にシステム開発を委託することを指します。
外部の開発会社やフリーランスの技術者に開発を委託するため、自社にはない高度な技術や最新の開発手法を活用することができます。
また、開発範囲、期間、費用などを明確に定めた契約を結んで開発が進行するため、予算管理がしやすいのも特徴です。
一方、システム開発の内製化(インハウス開発)とは、自社内でシステム開発を行うことを指します。
自社のリソースを使って開発を行うため、プロジェクトの進行管理や仕様変更も直接コントロールできたりするなど、柔軟にシステム開発を進めることが可能です。
また、業務プロセスや特有のニーズを理解している自社の社員が開発を行うため、自社に最適化されたシステムを構築しやすいことも特徴のひとつです。
さらに、社内にノウハウが蓄積されるため、長期的な目線で見ればシステムのメンテナンスや改修にかかるコストを抑えることができます。外注する場合は、追加作業によりコストが高くなることがありますが、内製化すれば避けることができます。
システム開発を外注するメリット
システム開発を外注するメリットには、以下のものがあります。
- エンジニアの採用・育成をしなくても開発ができる
- システム開発の状況に応じて柔軟な対応ができる
- 自社エンジニアのリソースを必要な開発に充てることができる
- 戦略や構想段階から任せることができる
それぞれ詳しく解説します。
メリット①エンジニアの採用・育成をしなくても開発ができる
日本のIT人材は不足しており、2030年には70万人不足すると言われています。このような状況の中、特に中小企業ではエンジニアを採用することがかなり厳しい状況です。
システム開発会社に外注をすれば、エンジニアの採用や育成をせずとも、すぐに開発を進めることが可能です。よって「短期間でスケールしたいが、採用がうまくいかない」「作りたいものが決まっているがリソースが足りない」といった課題を解消することができます。
メリット②システム開発の状況に応じて柔軟な対応ができる
長期的にシステム開発を進めていく場合、時期によって必要なリソースにばらつきがでることもあります。
内製化する場合、必要なリソースを必要な時期にだけ確保する、ということがどうしても難しいのが現状です。
外注であれば、状況に応じて人数を徐々に増減させたり、相性が合わない場合はメンバーの交代ができたりと、柔軟な対応ができるようになります。
メリット③自社エンジニアのリソースを必要な開発に充てることができる
普段クライアントとやりとりする中で、「新規事業や新規開発を自社エンジニアに任せたいが、既存システムの拡張開発などでリソースが足りない」という悩みをよく伺います。
このような場合、既存のシステム開発を外注する体制を作ることができれば、新規開発に自社エンジニアのリソースを使えるようになります。結果として、会社全体の成長に繋げることができるでしょう。
メリット④戦略や構想段階から任せることができる
外注というと、「一部の開発だけを切り取って依頼する」というイメージを持っている人もいるかもしれません。
しかし実際は、コンサルタントが関わり戦略構築や構想段階からの支援ができる開発会社もあります。
「開発したいサービスのイメージはあるけど、どんな市場でどう競合と戦っていけばいいのかわからない」という企業や、「ビジネスの壁打ち相手となるパートナーがほしい」という企業にとっては大きなメリットとなります。
弊社LIGも業界歴10年以上のベテランPMがプロジェクトに参加し、企画段階から伴走しながら開発を進めていくことが可能です。これまでの実績などはぜひお気軽にお問い合わせください。
→LIGへのお問い合わせはこちら
システム開発を外注するデメリット
一方で、システム開発を外注すると以下のようなデメリットも生じてきます。
- 内製化よりもコストが高くなる可能性がある
- 自社開発と比較してノウハウがたまりにくい
- コミュニケーションコストがかかる
それぞれのデメリットについて、詳しく解説します。
デメリット①内製化よりもコストが高くなる可能性がある
企業や案件にもよりますが、外注する分、内製化と比較してコストが高くなる傾向があります。また、金銭的なコスト以外にも、業者選定や方針のすり合わせ・プロジェクト進行中の管理などの、時間的なコストもかかります。
デメリット②自社開発と比較してノウハウがたまりにくい
システムを外注する場合、ノウハウを蓄積しにくいというデメリットがあります。もし、継続的に外注するつもりであれば問題ありませんが、将来的に内製化をしたいと考えているのであれば、これは特に留意しておきたいポイントです。
システム開発会社のなかにはシステムをパッケージ化しており、一部分をカスタマイズして納品する企業もあります。このような場合、システム内部はブラックボックス化されており、ノウハウを蓄積することが特に難しくなります。
デメリット③コミュニケーションコストがかかる
3つめのデメリットは、自社開発と比較してコミュニケーションコストがかかるという点です。
システム開発は複雑であり、自社開発でもなかなか上手くいかないことがあります。例えば業務系システムを開発することを考えてみたときに、現場の業務をまったく知らないエンジニアに現場の課題感や要件を伝えるのはとても難しいはずです。
そのためシステム開発を外注するとなれば、より密にコミュニケーションをとる必要がでてきます。
要件定義フェーズ以外にも、外注する場合、このようなズレの修正やその確認といった外注管理をする必要性があるというのもデメリットといえるでしょう。
なお、上記はシステム開発の外注時に発生する一般的なデメリットを挙げています。海外のエンジニアを活用する場合は、上記とは異なるメリットやデメリットも生じます。具体的な内容は以下の記事で解説しているので、あわせてご覧ください。
オフショア開発とは?注目される理由やメリット・デメリットを解説
システム開発を外注した方がいい場合とは
ここまでご紹介してきた、システム開発を外注するときのメリット・デメリットを以下の表にまとめました。
メリット |
|
---|---|
デメリット |
|
これらのメリット・デメリットを踏まえて、システム開発を外注した方がいい企業は以下の通りです。
- 専門知識や技術が不足している場合
- プロジェクトのリソースや時間が限られている場合
- コストと効率を重視する場合
専門知識や技術が不足している場合
システム開発は専門性の高い技術が必要な場合に有効な選択肢です。社内にそのようなノウハウが不足している場合、外注する方が短期間で高品質なシステム開発を期待できます。
また、自社のコアビジネスがシステム開発やITに関するものでない場合、外部の開発会社に外注する方が自社のリソースを有効活用することができ、合理的です。
上記に当てはまる企業様は、おすすめのシステム開発会社や選び方についてもチェックしておくことをおすすめします。
詳細は以下の記事をご覧ください。
【プロ厳選】システム開発会社おすすめ18社|最適な選び方を解説
また、事業を加速させるためには、内製化して同じ熱量を持ってやっていけるようなエンジニアを採用しなきゃいけないとお考えの経営者さまは、以下の記事もご覧ください。
「新規事業の開発を外注する……ってアリなの?やっぱり採用じゃないの?」に答えます
- Tips:内製したいけどリソースが足りない場合は?
- 社外に専属の開発チームをつくる「ラボ型開発」であれば、リソース不足を解消できます。弊社LIGではオフショアでのラボ型開発を承っていますので、「どんなメリットがあるの?」「料金は?」など疑問があれば、ぜひお気軽にご相談ください。
→LIGに相談してみる
プロジェクトのリソースや時間が限られている場合
一時的なプロジェクトや短期間で完了するプロジェクトの場合、専任の開発チームを新たに雇用するよりも、外注する方がコスト・時間の面で効率的です。
自社でシステム責任者やエンジニアを新たに雇用する必要がない点は、かなり大きなメリットです。開発が終了した後、エンジニアの技術や開発環境といったリソースを持て余すことがなくなるため、無駄なコストを抱え込む必要がなくなります。
社内のリソースや時間が限られている場合、外注することでその制約を乗り越えることができるため、外注する方が有効的です。
コスト効率を重視する場合
外注は、コスト効率の面でもメリットがあります。外注は短期的なプロジェクトや特定の開発においてコストを抑えやすい特徴があります。
内製でシステム開発をする場合、採用や開発環境の構築から検討する必要がありますが、外注すれば希望のスケジュール通りに開発を進めることができるため、コストを抑えながら効率的に開発を行うことができます。
その一方で、要望通りに開発ができておらず、修正や追加投資を依頼する場合、内製と比較すると費用が高くなることが多いです。
そのため、システム開発前に「要件定義」をしっかりと行い、どういった機能が必要なのか、品質や操作性はどれほど担保されているのかなど、要求事項とコストを明確化することが大切です。
システム開発会社の選び方
ここからはシステム開発を外注するメリット・デメリットを踏まえ、外注先の選び方を3つのポイントで解説します。
- 外注できる範囲を確認する
- 実績を確認する
- 信頼できるパートナーであるか見極める
選び方のポイント①外注できる範囲を確認する
システム開発会社には、主に以下の工程を依頼することができます。
戦略・企画 | 顧客ニーズをヒアリングし、システム開発の方針を立てるためのコンサルティングを行う。 |
---|---|
設計・開発・テスト | システムに実装する機能の設計から、実装、実装後のテストまでを行う。 |
リリース | 開発したシステムが利用できるように環境を整える。 |
運用・保守 | リリース後のシステム運用や、保守を行う。 |
システム開発会社と一口にいっても、どこまでできるかは会社により異なります。例えば戦略などの上流工程からできる会社もあれば、要件通りにプログラミングをするだけの会社などさまざまです。
会社選びをする際には、まずはじめに自社が求める業務範囲を明確にし、それにあった外注先を選ぶようにしましょう。
選び方のポイント②システム開発会社の実績を確認する
外注先を選ぶときは、やはり実績を確認することが大切です。システム開発会社のなかには、Webサービスの開発が得意な会社、アプリ開発が得意な会社など、得意領域がそれぞれあります。
作りたいシステムに近い実績があれば開発がスムーズに進みやすいです。逆に作りたいシステムに近い実績がない場合、納期遅延やバグの発生、場合によっては開発費用が追加でかかってしまう可能性もあるため注意しましょう。
選び方のポイント③信頼できるパートナーであるか見極める
必要な技術や実績を持っている会社が複数あった場合、次に大切なのは「信頼して議論できるパートナーかどうか」です。プロジェクトが開始すれば、頻繁にコミュニケーションをとることになります。
実際に開発を進めるプロジェクトメンバーと面会をして、信頼できるパートナーであるかを確認してください。もし商談時に同席がない場合は、面談を申し出ることをおすすめします。
- 「会社が多くてどこに相談すればいいか分からない」とお困りですか?
- 選び方のポイントまで考慮して会社を選ぶのは大変ですよね。はじめてのご相談相手として、業界歴10年以上の経験豊富なベテランPMが在籍している弊社LIGはいかがでしょうか?
まずは見積もりがほしいなど、どんなことでもお気軽にご相談ください。
→LIGに相談してみる
外注の失敗事例から学ぶ注意点
失敗事例から、システム開発を外注するときの注意点をみていきましょう。システム開発を担当したことがない方からするとびっくりするかもしれませんが、システム開発では以下の失敗が頻繁に起こります。
対策方法も合わせて紹介するので、チェックしておきましょう。
安いシステム開発会社に外注した結果、納品されなかった
「そんなことあるの?」と思うかもしれませんが、価格重視でシステム開発会社を選んだ結果、悪い会社に当たり発注したシステムが一向に納品されないということはよくあります。
品質も担保したい場合は、複数の相見積もりをとり、極端に安い会社に頼むことは避けましょう。
また、商談のときにできるといっていた開発が、いざ蓋を開けてみたらできなかったということも稀に発生します。これは営業担当の知識や経験不足が主な原因であることが多いです。
商談時に「持ち帰って回答します」という発言が多い営業担当の場合は注意しましょう。
ベンダーロックインに陥った
ベンダーロックインとは、特定のベンダー(ここでは開発会社)にしかシステムの開発や保守ができなくなってしまい、他社への乗り換えが難しくなっている状態のことです。以下の2種類に大きく分けられます。
テクノロジーロックイン | ベンダー独自の技術に依存して開発しているため、他社に乗り換えできなくなっている状態。クラウドサービスが停止した場合もこれにあたる |
---|---|
コーポレートロックイン | ベンダーが自社の業務やシステム内部を深く理解していることが理由で、他社に乗り換えづらくなっている状態 |
コーポレートロックインでは優良な会社であれば自社業務を深く理解して的を射た提案をおこなってくれるなどのメリットもありますが、たとえば担当者が変わり対応が遅くなったなどの理由でも現状のベンダーに依頼せざるを得なくなったり、他社に乗り換えたほうが明らかにコスト削減できるのにできないなどのデメリットもあります。
ベンダーロックインを避けるためには、設計書をドキュメント化して渡してくれるのか、一般的にシェアの少ない独自の技術や言語を用いていないかなど事前に確認してくことも重要です。
見積もりより費用が高くなった
これまたよくあるのが、最初の設計で不備があったり要件が固まっていないことで、あとから追加の開発費用として請求されるパターンです。
とはいえ、最初から完璧に開発要件が固まっていることも少ないと思います。この場合は、契約を受託開発ではなく、準委任契約にしたり、アジャイル開発にすることをおすすめします。
- アジャイル開発とは
- アジャイル開発ではイテレーションと呼ばれる1〜4週間程度の期間内で一つの機能を開発・リリースしていきます。イテレーションの期間は開発チームによって設定が変わります。※アジャイル開発ができる会社はこちらで紹介しています。
プロジェクトがスケジュール通りに進まなかった
一部の大手企業〜中堅企業では多重下請け構造になっており、指示・連絡が伝言ゲームのようになってしまうことがあります。この場合、開発スピードが遅くなりがちです。
対策としては、提案段階での見積もりの提出スピードを見るようにしてください。提出が遅い会社は、内部で伝言ゲームが起きている可能性があります。また、発注前に体制図を確認しておくと安心です。
外注先に丸投げしてしまった
システム開発を発注したことに安心してしまい、「あとは外注先に任せよう」と丸投げした結果、開発の遅れや想定と異なるシステムが完成してしまった、というのもよくある失敗事例です。
外注先に任せっきりにせず、スケジュールの進捗状況や仕様に問題がないかなど、積極的にコミュニケーションをとるようにしましょう。「専門的なことはわからないから」と遠慮することなく、プロジェクトに入り込む姿勢が大切です。
▼「システム開発の外注はなぜ失敗するのか?」というテーマで、実体験を踏まえたシステム開発の注意点を以下の記事で解説しています。あわせてご覧ください。 システム開発はなぜ内製も外注も失敗するのか?原因と解決策を紹介
システム開発の外注費用の相場はどれくらい?
システム開発の費用相場は、プロジェクトの規模や開発手法によって大きく異なりますが、一般的には数百万円から数千万円程度が相場となっています。
費用の内訳は、ほとんどが人件費であり、比率は全費用の8割ほどです。プロジェクトの難易度によって技術者に必要なスキルレベルも異なるため、それにより費用にも差が出ます。
費用については、業界や地域、会社によっても異なるため、正確な費用相場を知るには複数の企業に見積もりを依頼することが重要です。
また、システム開発にかかる費用は、開発以外にも、保守・運用費用もあるため、これらも含めて長期的な視点で予算を確保しておきましょう。
システム開発の費用相場や料金を抑えるポイントを解説した記事もあるので、ぜひご覧ください。
まとめ
ここまで、システム開発における内製と外注の違いやメリット・デメリットを解説してきました。外注と内製のどちらが適しているのかは、プロジェクトの性質や期間、予算、必要な技術、企業戦略などによって異なります。
短期的なプロジェクトや特定の専門技術が必要な場合、外注が有利である一方、長期的なメンテナンスや企業のノウハウ蓄積が重要な場合は内製化した方が有利になることが多いです。
プロジェクトの成功のために、まずは自社が開発したいものはどんなものか、どのような会社に依頼したいのかをもう一度確認してみてください。そして、候補に上がった開発会社をしっかりと比較検討し、自社にあった会社とシステム開発を進めてみてください!
はじめての相談相手として、ベテランPMがプロジェクトの上流工程から支援させていただく弊社LIGはいかがでしょうか?
- ・業界歴10年以上のベテランPMなど経験豊富なメンバーが伴走
- 海外エンジニアとチームを組み、低単価・高品質開発を実現
- 自社で保守・運用しやすいノーコード開発・ローコード開発にも対応
貴社のご要望やコスト・機能面の具体的な話など、ビジネスの壁打ち相手としてぜひお気軽にご相談ください。