よく一緒に求められる技術|必須スキルの組み合わせを16.5万件で数える
- 公開
- 読了
- 約8分
- 執筆
- Qasica 編集部
「Java の案件」「AWS の案件」という数え方では、実際の募集条件は再現できません。 案件の必須スキルは中央値3個で、ほとんどの案件は技術を組で求めています。 必須スキルが2個以上書かれた案件 164,976 件について、 どの技術とどの技術が一緒に出るのかを数えました。
結論|結びつきは一方通行
- 必須スキルが2個以上の案件は 84.5%(192,797件中 164,976件)
- 最も強く結びつくのは CSS と HTML(リフト 55.6 倍)
- Spring Boot を求める案件の 93.5% は Java も求める。逆に Java 案件のうち Spring Boot も求めるのは 24.1% だけ
- Next.js を求める案件の 78.7% が React、77.7% が TypeScript も同時に要求
- 単価が明確に変わるのは AWS + Terraform(95万円 / AWS 単独より 20 万円高い)
重要なのは、組み合わせの関係がほぼすべて非対称だという点です。 「A を持っているなら B も要る」は成り立っても、その逆は成り立たない。 要員に足りないスキルを1つ足すとき、どちら向きの関係かで意味が変わります。
どう数えたか
案件の 必須スキル 配列を展開し、同じ案件の中に同時に現れたスキルの組を数えました。 出現件数の上位30スキルに絞り、同時出現が 400 件以上の組だけを残しています。
指標にはリフト値を使いました。 「A と B がそれぞれ単独で出る確率から計算した期待値」に対して、 実際に何倍同時に出ているかです。1.0 なら無関係、大きいほど強く結びついています。 件数そのもので並べると Java や AWS のような母数の大きいスキルが上位を独占するので、 それを補正するためです。
集計日 2026年9月22日/n 案件 164,976 件。除外:status が削除済みのもの、必須スキルが未記載または1個だけのもの (必須スキル記載ありは 192,797 件、うち1個だけが 27,821 件)。 単価を見る節ではさらに単価 20〜200 万円の範囲外を除いています。この数字で分からないこと:表記ゆれを統合していません (「コミュニケーション能力」と「コミュニケーション力」が別スキルとして数えられています。 上位30には技術スキルしか入らなかったため本文の表には影響しませんが、 JS と JavaScript のような揺れは残っています)。 また、必須スキルはメール本文から抽出したものなので、「本当は必要だが書かれていない技術」は数えられません。 HTML/CSS のように「言うまでもない」ものほど省略されやすく、 実際の結びつきはここで出た数字より強い可能性があります。
結びつきの強い組み合わせ
リフト値が大きい順に並べました。右2列は「片方を求めた案件のうち、もう片方も求めた割合」です。
| 組み合わせ | 同時出現 | リフト | 左→右 | 右→左 |
|---|---|---|---|---|
| CSS + HTML | 2,113 | 55.6倍 | 93.3% | 76.3% |
| Next.js + React | 1,241 | 28.9倍 | 78.7% | 27.6% |
| C + C++ | 825 | 28.1倍 | 38.9% | 36.1% |
| Docker + MySQL | 620 | 27.8倍 | 39.2% | 26.6% |
| Next.js + TypeScript | 1,224 | 24.0倍 | 77.7% | 22.9% |
| CSS + JavaScript | 1,657 | 19.3倍 | 73.2% | 26.5% |
| HTML + JavaScript | 2,014 | 19.2倍 | 72.7% | 32.3% |
| Node.js + TypeScript | 894 | 19.1倍 | 62% | 16.7% |
| React + TypeScript | 2,677 | 18.3倍 | 59.5% | 50% |
| MySQL + PostgreSQL | 686 | 17.4倍 | 29.5% | 24.5% |
| Linux + Windows | 1,584 | 17.3倍 | 29.3% | 56.8% |
| MySQL + PHP | 830 | 15.9倍 | 35.7% | 22.5% |
| AWS + Docker | 991 | 13.1倍 | 12.6% | 62.7% |
| C# + SQL Server | 622 | 12.9倍 | 14.5% | 33.4% |
| TypeScript + Vue | 759 | 12.8倍 | 14.2% | 41.6% |
| Java + Spring Boot | 3,224 | 11.6倍 | 24.1% | 93.5% |
| Oracle + VB.NET | 515 | 11.1倍 | 12.6% | 27.5% |
| AWS + Azure | 899 | 9.7倍 | 11.4% | 46.2% |
上位に並ぶのは技術的に前提関係があるものです。 CSS と HTML、Next.js と React、C と C++、Node.js と TypeScript。 「一緒に求められている」というより「片方だけでは成立しない」組み合わせで、 これは驚きではありません。
むしろ読むべきなのは中位です。Linux と Windows が 17.3 倍で並んでいます。 Windows を必須に挙げた案件の 56.8% は Linux も挙げている。 インフラ案件では OS が片方で済むことのほうが少ない、ということです。
AWS と Azure が 9.7 倍というのも同じ構図で、 Azure を求める案件の 46.2% は AWS も求めています。 クラウドは「どちらか」ではなく「両方」で書かれる条件です。
非対称な組み合わせ
この集計で一番使える情報は、左→右と右→左の差です。
| 組み合わせ | 片方向 | 逆方向 | 差 |
|---|---|---|---|
| Spring Boot → Java | 93.5% | 24.1% | 69.4pt |
| Next.js → React | 78.7% | 27.6% | 51.1pt |
| Docker → AWS | 62.7% | 12.6% | 50.1pt |
| Next.js → TypeScript | 77.7% | 22.9% | 54.8pt |
| Node.js → TypeScript | 62.0% | 16.7% | 45.3pt |
| Windows → Linux | 56.8% | 29.3% | 27.5pt |
| CSS → HTML | 93.3% | 76.3% | 17.0pt |
| React → TypeScript | 59.5% | 50.0% | 9.5pt |
差が大きいものは「狭いほうから広いほうへの依存」です。 Spring Boot・Next.js・Docker・Node.js はいずれも、 それ自体を必須に挙げる案件が少ない代わりに、挙げたときは必ず土台の技術もセットで要求されます。
差が小さい React ↔ TypeScript(59.5% と 50.0%)は性質が違います。ほぼ対等に結びついていて、どちらから見ても半分以上が相方を要求する。フロントエンドでは実質的に1つの条件として扱われている、と読めます。
組み合わせで単価は変わるか
結びつきが強いからといって単価が上がるわけではありません。 単価が書かれている案件について、組み合わせ別の中央値を出しました。
| 組み合わせ | 件数 | 単価中央値 | 比較 |
|---|---|---|---|
| AWS + Terraform | 756 | 95万円 | AWS のみ(Terraform なし)は 75 万円 |
| AWS + Python | 1,640 | 80万円 | Python のみ(AWS なし)は 75 万円 |
| React + TypeScript | 2,200 | 75万円 | React のみ(TypeScript なし)も 75 万円 |
| Java + Spring Boot | 2,728 | 74万円 | Java のみ(Spring Boot なし)は 67 万円 |
全体の単価中央値は 70 万円です(単価記載あり 151,184 件)。明確に差が出たのは AWS + Terraform だけで、 AWS 単独の 75 万円に対して 95 万円、20 万円の差がありました。
一方、React + TypeScript は 75 万円で、React 単独と同じです。 結びつきが強い(リフト 18.3 倍)のに単価が動かない。 これは「セットで当たり前なので、両方書いても上乗せにならない」ということです。
Java + Spring Boot は 74 万円で Java 単独の 67 万円より 7 万円高い。 ただしこれは Spring Boot 自体の価値というより、 Spring Boot を明記する案件のほうが新しめの開発案件に寄っている影響が混ざっています (技術スタック別のSES単価)。
この比較で分からないこと:経験年数・工程・地域を揃えていません。 Terraform を含む案件が高いのは、Terraform そのものではなく 「Terraform を書ける層を求める案件は上流寄り」という交絡の可能性があります。 工程と役割で単価がどう動くかは別の記事で分解しています。
この数字の使い方
1. 「足りない1つ」を探すときは方向を見る
要員が Java を持っていて Spring Boot を持っていない場合、 案件側の 24.1% しか Spring Boot を要求していないので、多くの案件には出せます。 逆に Spring Boot だけあって Java の記載がない要員は、ほぼどの案件にも通りません。 スキルシートに土台の技術が書かれていないケースは実際にあります。
2. 必須スキルの少ない案件を警戒する
「AWS」だけが必須に書かれた案件は、実際には Linux も Terraform も 前提になっている可能性があります。必須スキル1個の案件は 27,821 件あり、条件が絞られているのではなく書かれていないだけのことが多い (案件メールの読み方)。
3. 単価を上げる組み合わせは限られる
組み合わせを増やしても単価は自動的には上がりません。 この集計で 20 万円動いたのは AWS + Terraform の1組だけでした。「セットで当たり前」の組み合わせは価格に反映されないと考えたほうが、 交渉の材料を選び間違えません (単価交渉で使える材料)。
よくある質問
リフト値とは何ですか?
2つのスキルが「たまたま同じ案件に出る確率」に対して、実際に何倍一緒に出ているかです。1.0 なら無関係、数字が大きいほど強く結びついています。たとえば CSS と HTML は 55.6 倍で、偶然では説明できない結びつきです。件数そのものではなく件数の多さを補正した指標なので、Java のような母数の大きいスキルが自動的に上位に来ることはありません。
なぜ「A→B」と「B→A」で数字が違うのですか?
母数が違うからです。Spring Boot を必須に挙げた案件のうち 93.5% は Java も挙げていますが、Java を挙げた案件のうち Spring Boot も挙げているのは 24.1% しかありません。Spring Boot は Java を前提とする技術なので片方向に強く、Java は Spring Boot 以外の文脈でも大量に使われるため逆方向は弱くなります。組み合わせを見るときは必ず「どちらを母数にしたか」を確認してください。
要員側のスキルでも同じ集計はできますか?
できますが、意味が変わります。案件の必須スキルは中央値3個に絞って書かれるのに対し、要員のスキルは経歴上の技術をすべて列挙するため、要員側では「同じ案件で必要とされる」という意味の共起ではなく「キャリアの中で両方触ったことがある」という意味になります。この記事は案件側だけを対象にしています。
組み合わせで検索する
Qasica は案件メールから必須スキルを配列として抽出して保存しているため、 「Java かつ Spring Boot」のような組での絞り込みと、 要員側の保有スキルとの突き合わせをそのまま実行できます。 スキル名の表記ゆれも抽出時に寄せています。
関連記事:案件が求める必須スキルは何個か / SES案件のスキル需給ランキング / 技術スタック別のSES単価