
JavaScriptでの開発パートナー選びのポイント
今回はJavaScriptの開発パートナー選びについて記載します。
Webサイト開発やWebアプリ、スマホアプリの開発等、JavaScriptは昨今のWeb開発において最もよく使われる言語の一つです。
パソコンやスマートフォンだけでなく、テレビ等あらゆるデバイスにも広くJavaScriptが使われています。
JavaScriptによる開発は、HTMLやCSSと並んでプログラミング初学者が最初に学ぶことも多く、JavaScriptを得意とする企業やフリーランスも多いのが特徴です。
ただ、昨今では純粋にJavaScriptだけの案件はほとんどなく、ReactJSやVueJS、NuxtJS、NaxtJSなどフレームワークとしての案件などがほとんどとなります。
とはいえ、JavaScriptのベースの部分は大事ですので今回は、市場に溢れているJavaScript開発パートナーから、理想的な相手を見つけるために気を付けるべき点を解説します。
要件を明確にする
冒頭でも触れましたが、Web開発をしてくれる企業やフリーランスの数は非常に多く、それぞれ特徴や得意分野も異なります。
まずは要件を明確にして、どのようなパートナーを選ぶべきか判断しましょう。
以下にいくつかの例を記載しておきます。
【例1】
要件:
・システムを作る上での方針から決まっていない。
・専門家からのアドバイスも受けながらプロジェクトを進めたい。
選定基準:
コンサルティングができるパートナーを検討
【例2】
要件:
・設計やデザインが細部まで決まっていて、指示も出せる。
・出来るだけ開発費用を抑えたい。
選定基準:
コーディングのみを担当するパートナーを選定
【例3】
要件:
・開発規模が大きいので人手が欲しい
・委託する業務の種類が多い
選定基準:
要件に優先順位を付けて順位の低いものから除外して再度スクリーニングを行う
このように、求める開発要件に応じて、開発パートナーのレイヤーを分けて選定しましょう。
自社のスキルが高い場合は、例2で示したようなコーディングのみを行うパートナーを選ぶべきですし、複雑な案件はコンサルティングまでできる企業を選ぶ方がいいです。
大規模な改修プロジェクトなどでは、スキルの高いパートナーを選ぶことで、結果的に工数が抑えられて、安く終わったというケースはとても多いです。
その上でJavaScriptを使って開発する部分の切り出しが大事になります。
動きや通信のあるページなどの作成がJavaScriptでの開発をするための要求となりますが、部分的な動きで良いのか、全体を通してSPA(SinglePageApplication)が必要になるのかなど要件の確認が必要です。
例えばグラフを入れるだけであれば部分的な導入でも済むかもしれませんし、ページ全体をJavaScriptのフレームワークを使った方が良いかもしれません。
またREST開発の方にAPIサーバとの通信を行うのであればデータの保持や遷移などが重要になる可能性があります。
これらの大まかな要件とシステム固有の要件の洗い出しが大事となります。
実績を確認する
次に、各パートナーがそれぞれが要件に沿った開発を行ってくれるのかを過去の実績と照らし合わせて判断しましょう。
例えば、スマートフォン向けのアプリ開発をしたいのであれば、過去にアプリ開発の実績が多い企業を探します。
企業は開発実績を自社のHPに掲載しているケースが多く、実績の確認は比較的しやすいです。
ただ、フレームワークを使ってのJavaScriptの開発などは詳細がないケースもありますし、守秘義務などで公開できないケースもあります。
その際にはQiitaなどのアウトプットも含めての確認や書籍の著者の所属会社などの確認という形もあります。
一方、依頼する相手がHP等を持たないフリーランスで実績の確認が困難な場合、本人から過去の実績が分かるものを送ってもらい判断しましょう。
事前にパートナーの実績を確認しておくことは、予期せぬトラブルを回避するうえでも大変重要です。
実績を確認せずに単に費用の安いところに依頼すると、納期に間に合わなかったり、開発後にバグが多発する事も珍しくありません。
システム開発後の修正は追加の費用が発生するのでかえって費用が高くなってしまいます。
更に、企業に依頼する場合の注意点として、ある程度の規模がある場合には先方の財務面にも気を配りましょう。
納品されたシステムの改修が必要になった際に、開発会社が倒産してしまうと改修がうまくいかずトラブルの元となります。
ただ、財務面の確認は帝国データバンクなどでも分かりにくい時がありますし、直接の確認も嫌がられることありますので、確認のポイントと理由を明確にして先方に伝える必要があります。
企業とフリーランスのメリット・デメリット
JavaScriptではフリーで開発を行う人も多いため、企業とフリーランス、どちらに依頼するのが良いかの比較もしてみます。
結論、状況によって使い分けが必要です。
それぞれのメリット・デメリットの解説をする中で、確認していきましょう。
企業に依頼する場合のメリット・デメリット
まずは企業に依頼する場合のメリットについて説明します。
【メリット】
- 実績の多い企業は安心感がある
- 1社で多様な業務に対応可能
- セキュリティに対する意識が高い
実績が多い企業は安心感がある
実績が多く利用者も多い企業はネット上に口コミなどの情報も多いので情報が集めやすく、事前にどんな企業なのかを把握したうえで依頼できるので安心感があります。
逆に、悪い評判も企業は目立ちやすいので、予め選択肢から除外出来ます。
1社で多様な業務に対応可能
プロジェクトを進める過程で、新たにシステムを追加したり、計画に大きな変更が生じた場合に、フリーランスだとリソース面で行き詰まってしまいます。
企業なら、多数のエンジニアやプログラマーが在籍している場合も多く、社内でリソース追加の対応をしてくれます。
セキュリティに対する意識が高い
企業は個人と比べて情報漏洩等が発覚した際のリスクが高いので、定期的に社員に対して教育を行っていたり、秘密保持やセキュリティに対する対策を行っているケースが多いです。
また、最近だと、社外から企業のPCへアクセス禁止していたり、社内で使用しているパソコンやUSBメモリの持ち出し禁止等の規則を設けています。
個人と比べると企業のセキュリティ面での安心感は高いです。
続いて企業に依頼する場合のデメリットです。
【デメリット】
- 費用が高いケースがある
- スピード感が無い場合がある
- 融通が効きにくいケースがある
費用が高いケースがある
会社を運営する経費がかかる為、同じ業務を依頼するのであればフリーランスに依頼するより費用が高くなることが多いでしょう。
また、企業の規模が大きくなるほど、工数単価が高くなる傾向があります。
スピード感が無い場合があるケースがある
企業の担当者は、窓口として直接やりとりをする人と開発担当者が違う場合が多いので、全てをワンストップで行うフリーランスと比較するとスピード感がありません。
また、社内承認に時間がかかるという企業もよく見かけます。
融通が効きにくいケースがある
企業の場合、各個人の判断で見積もりを変更したり、開発担当者の裁量で追加の業務を勝手に行う事が出来ないので融通が効かない事が多いです。
また、直接開発担当者とやり取り出来ない企業の場合、こちらの要望が開発担当者に正しく伝わらない事があります。
フリーランスに依頼する場合のメリット・デメリット
続いてフリーランスに依頼する場合のメリットについて説明します。
【メリット】
- 費用が安い
- 融通が効くケースがある
費用が安い
有名な方になると大企業と変わらない金額になることもありますが、ほとんどの場合は企業よりも、経費がかからないフリーランスに依頼した方が安いです。
融通が効くケースがある
顧客とのやり取りから開発業務まで全てワンストップで行う為こちらの要望が伝わりやすく、企業と比べて小回りが効くので臨機応変な対応が期待できます。
ただ、あまり融通を利かせすぎると嫌煙される原因になります。
続いてフリーランスに依頼する場合のデメリットです。
【デメリット】
- セキュリティ面での安心感が低い
- 能力の差が激しい
- 業務の代行者がいない
能力の差が激しい
人によって能力の差が大きいです。
大企業の様に口コミや評判がネットに出回っている可能性も低いので、フリーランスを選択する際は事前に過去の実績や経歴をヒアリングする等、慎重に吟味しましょう。
セキュリティ面での安心感が低い
フリーランスの場合、企業と違い組織で管理されたり社内規則で縛られない為、依頼する際はどの様な対策を行っているかしっかりと確認しておく必要があります。
業務の代行者がいない
企業であれば開発担当者に不測の事態が発生して、業務が続行出来なくなった場合に次の担当者が割り当てられます。
それに比べて、フリーランスの場合は新たにパートナーを見つける必要があります。
以上が企業、フリーランスそれぞれに依頼する場合のメリット・デメリットです。
ある程度の開発体制があれば要員の追加としてフリーランスの方に頼むケースもありますし、小さな開発でも継続した保守などを考えると企業にお願いした方が良いケースもあります。
要件などもきちんと踏まえての判断が必要になります。
保守などの継続を踏まえて
JavaScriptはいわゆるフロント開発と呼ばれる分野の開発になります。
フロント開発のポイントとしては非常に技術の変化が早く、見た目に関わる部分のため一つの不具合などで見た目全体に影響することがあります。
システムの利用期間を測るのは非常に難しいですが、フロント開発では特に気を配る点となります。
JavaScriptも最近ではフレームワークの変化なども非常に激しく、数も多いので流行りとなるものも多いです。
逆にいうと不人気になるフレームワークなどもありますので、その選定も重要になります。
フロントやスクリプトといった概念があるとその場限りの開発の認識が出てしまうことがありますが、継続した開発や保守を意識して開発の計画やパートナーの選定を行いましょう。
JavaScript開発のパートナー探しをされるのであれば
JavaScript開発のパートナー探しをされるのであれば「システム開発コンシェルジュ」で是非ご相談いただければと思います。
以下のフォームより開発でご相談いただきたい内容などご相談ください。