C/C++/C#は同じカテゴリで雑に扱わず、案件領域と担当範囲で分けて読む。
スキル研修教材
(C/C++/C#)
C / C++ / C#は名前が似ていますが、SES営業が見るべき案件領域は大きく違います。 この教材では、案件概要を分類し、スキルシートで実務深度を読み、登録面談で追加確認し、提案コメントでミスマッチを防ぐところまで扱います。
01 / Why
この技術を営業が知る意味
C/C++/C#は、ゲーム、業務システム、組込み、制御、ネイティブアプリ、製品開発まで幅が広い技術です。営業が判断を間違えると、言語名は合っているのに現場経験がズレる提案になります。
「C#経験あり」を見て、Unity案件にも.NET案件にも同じ強さで提案してしまう。
案件概要の必須スキル確認、登録面談の深掘り、提案コメントの補足で使う。
営業が見るのは「文法」ではなく「経験の近さ」
C経験者をUnity C#案件に出す、ASP.NET中心のC#経験者をゲームクライアント案件に即戦力として出す、Blueprint経験だけでUnreal C++案件に出す。 こうしたミスは、言語名だけで判断したときに起きます。
新人営業は、言語、開発領域、担当工程、開発規模、商用経験、運用経験、性能要件を分けて確認します。
営業向けの結論
C/C++/C#は「近い名前の言語群」ではなく、SES提案では別カテゴリとして扱います。特にC#は、Unity C#、業務系C#、WindowsアプリC#を必ず分けて読みます。
02 / Difference
C / C++ / C# の違い
3つは歴史的につながりがありますが、案件概要で評価される経験は別物です。ここでは新人営業が分類できる粒度に絞って理解します。
組込み・制御で今も使われる重要技術
C言語は古いから不要、ではありません。ハードウェアに近い処理を軽く速く動かす必要がある現場で今も使われます。
- 案件例: 車載、医療機器、産業機器、IoT、通信機器、家電
- 見る点: Linux、RTOS、ベアメタル、マイコン、通信、実機デバッグ
速度・メモリ・大規模開発が重要な現場で使う
Unreal Engineだけでなく、高性能処理、画像処理、金融の低遅延処理、ミドルウェア、ネイティブアプリ、製品開発でも使われます。
- 案件例: Unreal、ゲームエンジン、画像処理、金融、製品開発
- 見る点: C++実装、設計、STL、メモリ管理、マルチスレッド、最適化
Unityと.NETで広く使われるMicrosoft系言語
C#はUnityゲームだけでなく、ASP.NET、WPF、Windows Forms、社内システム、基幹システム、業務アプリで多く使われます。
- 案件例: Unity、ASP.NET、ASP.NET Core、WPF、Windows Forms
- 見る点: Unity C#、業務系C#、WindowsアプリC#を分ける
営業向けの比較表
| 観点 | C | C++ | C# |
|---|---|---|---|
| 主な現場 | 組込み、制御、ファームウェア、ドライバ | Unreal、高性能処理、画像処理、製品開発 | Unity、ASP.NET、WPF、Windows Forms |
| 案件概要の読み方 | ハードウェアに近い経験があるかを見る | 速度・メモリ・設計・大規模開発の経験を見る | Unity系か、業務系.NETか、Windowsアプリかを分ける |
| 提案時の注意 | Web系やゲーム系とは別軸で見る | C経験だけではC++設計案件に足りないことがある | C#経験だけでUnity即戦力とは言えない |
03 / Foundation
営業が最低限知るべき技術基礎
コードを書ける必要はありません。ただし、面談で用語を拾い、スキルシートの強弱を判断するための基礎語は押さえます。
用語を技術解説として覚えるのではなく、案件判断に使える意味に変換する。
「ポインタを説明できるか」より「ポインタやメモリを扱う現場経験があるか」を確認する。
面談で回答が浅いか具体的かを判断するときに使う。
C系でよく聞く基礎用語
ポインタ: メモリ上の場所を扱う考え方。C/C++、特に組込みや高性能処理で重要です。
メモリ管理: プログラムが使う記憶領域を管理すること。C/C++は理解が求められ、C#はガベージコレクションで自動管理されます。
オブジェクト指向: クラス、継承、カプセル化、多態性など。C++やC#の設計経験を見る入口になります。
ビルド / コンパイル: ソースコードを実行できる形にする工程。Visual Studio、Unity Editor、CI/CD経験につながります。
API: システム同士をつなぐ窓口。Unityゲームでも.NET業務系でも、サーバー連携経験を見るときに出ます。
案件判断に直結する用語
- Unity
- C#でゲームロジック、UI、通信、課金、広告、演出などを実装するゲームエンジン。
- Unreal
- C++とBlueprintを使うゲームエンジン。BlueprintだけかC++実装まであるかを分けて確認します。
- .NET
- C#を使う業務系開発基盤。ASP.NET、WPF、Windows Forms、Azureなどと一緒に出ます。
- RTOS
- 組込み機器で使うリアルタイムOS。制御や実機経験の深さを見るキーワードです。
04 / Domains
案件領域の分類
同じC#でもUnityゲーム開発とASP.NET業務システムは別領域です。ここで案件概要を4つに分類できるようにします。
領域別の見方 早見表
| 領域 | 主な現場・案件 | 見る点 | 提案時の補足 |
|---|---|---|---|
| Unity / C# | スマホ・カジュアルゲーム、VR/AR、インディー、運用中タイトル。ゲームロジック・UI・通信・課金・広告・ログ・アセット組込み。 | Unity実務、商用タイトル、uGUI、Addressables、UniTask、Photon、API連携、ストアリリース、運用改善。 | インゲームかアウトゲームか、運用中タイトルか新規開発かを添える。 |
| Unreal / C++ | コンソール、PC、高品質3D、シミュレーション、メタバース、製品デモ。BlueprintだけかC++実装まであるかが重要。 | UEバージョン、C++実装範囲、Blueprint連携、3D、描画、物理、マルチプレイ、最適化。 | Blueprint中心ならC++必須案件には慎重に出す。 |
| .NET / C# | SES案件で多い業務系。社内・基幹システム、業務アプリ、保守改修、リプレイス、Web API開発。 | ASP.NET / ASP.NET Core、.NET Framework、.NET 6以降、WPF、Windows Forms、SQL Server、Azure、Web API。 | VB.NETからC#移行、古い.NET Frameworkからモダン.NETへの移行経験は強い材料。 |
| 組込み / C・C++ | 車載、医療機器、産業機器、IoT、通信機器、家電、ファームウェア、ドライバ、評価・検証。 | Linux、RTOS、ベアメタル、マイコン、通信規格、実機デバッグ、評価環境、センサー制御。 | ハードウェアに近い経験、対象機器、評価環境を具体的に書く。 |
C#経験の読み分けは必須
Unity C#、業務系C#、WindowsアプリC#は同じ「C#」でも評価軸が違います。案件概要でC#とだけ書かれている場合は、Unityなのか、ASP.NETなのか、WPF / Windows Formsなのかを必ず確認します。
05 / Keywords
案件概要でよく見るキーワード
キーワードは候補者検索のタグではなく、案件の種類と難易度を読む材料です。必須と尚可も分けて見ます。
Unity / C#
UnityC#uGUIUniTaskAddressablesPhoton課金広告SDKiOS / Android運用中タイトル
Unreal / C++
Unreal EngineC++BlueprintAAAリアルタイム3D最適化マルチプレイコンソール画像処理ミドルウェア
.NET / C#
ASP.NETASP.NET Core.NET Framework.NET 6以降WPFWindows FormsSQL ServerAzureWeb APIリプレイス
組込み / C・C++
車載医療機器産業機器IoT通信機器家電LinuxRTOSマイコン実機デバッグ
案件概要での確認ポイント
「C#経験3年以上」だけでは不十分です。Unity C#なのか、ASP.NET C#なのか、WPF C#なのかを確認します。「C++経験」も、Unrealなのか、画像処理なのか、金融低遅延なのか、製品開発なのかで提案の見せ方が変わります。
06 / Skill Sheet
スキルシートの読み方
スキルシートでは、技術名やプロジェクト名だけで判断しません。担当範囲、工程、チーム開発、商用経験、運用、改善経験を読みます。
「使ったことがある」と「現場で任された」は別。実装範囲と責任範囲を見る。
個人制作、学習、商用運用を同じ強さで読んでしまう。
候補者の提案可否、単価感、面談前の深掘り項目整理で使う。
Unityスマホゲーム開発 / C# / 運用中タイトル
- 工程
- 詳細設計、実装、単体テスト、リリース後改修
- 担当
- イベント機能、UI改修、API連携、ログ送信、課金周辺の不具合修正
- 環境
- Unity、C#、Git、Jira、Firebase、iOS / Android
- 営業判断
- Unityの実務経験として提案可能。新規開発より運用改善に強い人材として補足する。
Unity経験の中身
チュートリアル、個人制作、実務運用、商用リリースでは評価が違います。ストア公開や運用中タイトル経験は強い材料です。
C#経験の分類
Unity C#、ASP.NET、WPF、Windows Formsを分けます。C#経験ありだけでUnity即戦力とは言いません。
.NET移行経験
VB.NETからC#、古い.NET Frameworkから.NET 6以降、オンプレからAzureなどの移行経験は提案材料になります。
組込み経験の対象
車載、医療、産業機器、IoT、通信機器など、対象機器と評価環境を確認します。
記載
C#開発経験3年
弱い読み
C#ならUnityにも.NETにも出せる
営業が確認
Unityか、ASP.NETか、WPFか。DB、API、Azure、商用経験はあるか。
提案補足
「ASP.NET中心のC#経験。Unity実務はないため.NET業務系案件に適性」
強く読む記載 / 注意する記載
| 記載 | 強く読む条件 | 注意点 |
|---|---|---|
| Unity / C# | 商用タイトル、機能実装、UI、API、課金、リリース、運用改善がある | 個人制作のみの場合、即戦力とは言い切らない |
| Unreal / C++ | C++実装、Blueprint連携、描画/物理/最適化、チーム開発がある | Blueprintだけの場合、C++要件には弱い |
| C# / .NET | ASP.NET Core、SQL Server、Azure、Web API、保守改修、リプレイスがある | Unity案件にそのまま横展開しない |
| C / C++ 組込み | RTOS、Linux、通信、ドライバ、マイコン、実機デバッグ、評価環境がある | ゲームC++とは評価軸が違う |
07 / Interview
登録面談で聞くこと
面談では、技術用語の暗記チェックではなく、提案で使える事実を集めます。何を作ったか、どこまで任されたか、どんな制約で工夫したかを聞きます。
共通質問
- C / C++ / C#のうち、実務で一番使った言語はどれですか。
- 担当工程は、設計、実装、テスト、運用、改善のどこまでですか。
- チーム規模、開発期間、Gitなどのバージョン管理経験を教えてください。
- パフォーマンス改善や不具合調査で印象に残っている経験はありますか。
- コードレビュー、設計レビュー、CI/CD、単体テストの経験はありますか。
Unity / Unreal 質問
- Unityではどの機能を実装しましたか。UI、ゲームロジック、通信、課金、広告、演出のどれですか。
- 運用中タイトルの改修経験はありますか。障害対応やストアリリースは経験しましたか。
- UnrealではBlueprint中心ですか、C++実装も担当しましたか。
- FPS低下、メモリ増加、ロード時間などの改善経験はありますか。
.NET / 業務系 質問
- .NET Framework、.NET Core、.NET 6以降のどれを使いましたか。
- ASP.NET、ASP.NET Core、WPF、Windows Formsのどれが中心ですか。
- SQL Server、Web API、Azureの経験はありますか。
- 社内システム、基幹システム、業務アプリ、保守改修、リプレイスのどれを経験しましたか。
- VB.NETからC#、古い.NET Frameworkからモダン.NETへの移行経験はありますか。
組込み / C・C++ 質問
- 対象機器は何ですか。車載、医療機器、産業機器、IoT、通信機器、家電など。
- OSはLinux、RTOS、ベアメタルのどれですか。
- マイコン、通信規格、センサー制御、ドライバ、ファームウェアの経験はありますか。
- デバッグは実機、エミュレータ、ログ解析、評価環境のどれで行いましたか。
08 / Level
レベル感の見極め
年数だけで判断しません。回答の具体性、担当範囲、トラブル対応、設計・改善経験で見ます。
指示を受けて実装できる
既存コードを読んで修正、簡単な機能追加、単体テストができる。個人制作や学習経験のみの場合は初級扱い。
出しやすい案件Unity改修補助、.NET実装補助、テスト/運用、組込み評価補助。
機能単位で任せられる
設計意図を理解し、機能実装、レビュー対応、不具合調査、パフォーマンス改善の一部を自走できる。
出しやすい案件Unity機能開発、ASP.NET開発、Unreal C++実装、組込み制御開発。
設計・改善・リードができる
アーキテクチャ、設計方針、性能改善、チームリード、技術選定、メンバー育成まで関われる。
出しやすい案件リードエンジニア、ゲーム基盤、エンジン改善、.NET移行、組込みアーキ設計。
回答の見極め例
| 質問 | 弱い回答 | 提案可能 | 強く推せる |
|---|---|---|---|
| Unityで何を担当しましたか | ゲームを作りました。 | UI画面とイベント機能をC#で実装しました。 | 運用中タイトルでイベント機能、API連携、ログ送信、課金周辺の不具合修正を担当し、リリース対応まで行いました。 |
| Unrealの経験を教えてください | Blueprintを少し触りました。 | Blueprint中心でキャラクター挙動を実装しました。 | C++でゲームロジックを実装し、Blueprintと連携。描画負荷とメモリを調査しFPS改善も行いました。 |
| .NET経験を教えてください | C#で開発しました。 | ASP.NETで画面とAPIの改修を担当しました。 | ASP.NET Core、SQL Server、Azure環境でWeb API設計、保守改修、.NET Frameworkから.NET 6移行まで担当しました。 |
| 組込みCの経験を教えてください | Cで開発しました。 | Linux環境で通信処理と評価を担当しました。 | RTOS上でセンサー制御、通信ドライバ、実機デバッグ、不具合解析まで担当しました。 |
09 / Mismatch
営業がミスりやすい提案
近そうに見える経験ほど危険です。提案前に、ズレやすいポイントを確認します。
| よくあるミス | なぜ危ないか | 提案前に確認すること |
|---|---|---|
| C#業務系をUnity即戦力として提案 | C#文法は近いが、Unityのライフサイクル、UI、アセット、ビルド、ストア対応は別経験。 | Unity実務、個人制作、uGUI、API連携、運用経験の有無。 |
| Unity C#とASP.NET C#を同じに扱う | ゲームクライアントと業務系Webでは、設計対象も開発フローも違う。 | Unity、ASP.NET、WPF、Windows Formsのどれが中心か。 |
| Blueprint経験だけでUnreal C++案件へ提案 | BlueprintとC++実装では求められる技術深度が違う。 | C++実装範囲、クラス設計、メモリ、最適化経験。 |
| C経験者をC++設計案件へそのまま提案 | C++はオブジェクト指向、STL、テンプレート、設計力が必要。 | C++実務年数、設計、レビュー、スマートポインタ、STL。 |
| 組込みCを単なる古い技術として軽く見る | 車載、医療、産業機器などでは今も重要で、実機・評価環境経験が差別化になる。 | 対象機器、OS、マイコン、通信規格、実機デバッグ。 |
10 / Proposal
提案コメント例
提案コメントでは「C#できます」では弱いです。案件側が不安に思う差分を、経験の根拠で埋めます。
提案時の注意点
- Unity / Unreal / .NET / 組込みの分類を明記する。
- C#はUnity、ASP.NET、WPF、Windows Formsを分けて補足する。
- C++案件では、C++実装範囲、設計、メモリ、性能改善を補足する。
- 学習経験や個人制作は正直に書き、商用経験と混ぜない。
- 案件要件に足りない部分は「キャッチアップ前提」「補助から」と表現する。
弱いコメント / 改善後コメント
C#経験3年なのでUnity案件に合います。
C#はASP.NET中心のためUnity実務はありません。C#の設計・実装力はありますが、Unity案件では補助・キャッチアップ前提での提案が現実的です。
Unreal経験があるのでC++案件に出せます。
Unreal経験はBlueprint中心です。C++実装必須案件では不足がありますが、Blueprint実装やC++メンバー補助の案件であれば提案余地があります。
C言語経験があるので組込み案件に合います。
C言語ではLinux環境で通信処理と評価を担当しています。RTOSやマイコン経験は未確認のため、対象機器と実機デバッグ経験を追加確認のうえ提案します。
11 / Practice
ケース演習
講師が問いかけながら進められる実務判断形式です。正解を一つに決めるより、確認すべきこと、提案時の注意、コメントの方向性を押さえます。
ケース1: 案件概要「Unity/C#、スマホゲーム運用、課金・広告SDK改修」。誰を提案する?
状況: 候補AはASP.NET C# 4年。候補BはUnity個人制作1年。候補CはUnity商用運用2年、UIとAPI改修経験あり。
問い: 最優先で提案する候補と、他候補を出す場合の注意点は?
回答観点: 候補Cが最も近い。AはC#経験だけではUnity即戦力とは言えない。Bは育成枠や補助なら可能性あり。課金・広告SDK経験の有無は追加確認する。
ケース2: スキルシートに「Unityでゲーム制作」とだけ記載。即戦力と言える?
状況: 商用か個人か、担当機能、チーム開発、リリース経験が書かれていない。
問い: 追加確認すべきことは?
回答観点: 商用/個人、完成物、担当範囲、uGUI/API/課金/広告、Git、レビュー、ストア公開、運用中改修を確認。即戦力と断定せず、確認後に提案レベルを決める。
ケース3: C#業務系経験者をUnity案件に出せる?
状況: ASP.NET Core、SQL Server、Azure経験は豊富。Unity実務はなし。
問い: どのように提案判断する?
回答観点: Unity即戦力ではない。.NET業務系案件が本線。Unity案件に出すなら個人制作やキャッチアップ状況を確認し、補助・育成枠として正直に補足する。
ケース4: Blueprint経験のみの候補者をUnreal C++案件に出せる?
状況: Unrealでキャラクター挙動をBlueprintで実装。C++実装経験は記載なし。
問い: 提案可否と確認事項は?
回答観点: C++必須案件には弱い。C++実装経験、既存C++コード読解、BlueprintとC++連携経験を確認。Blueprint中心案件なら提案余地あり。
ケース5: 組込みC案件「車載、RTOS、通信制御、評価」。何を追加確認する?
状況: 候補者はC言語経験3年だが、対象機器やOSが不明。
問い: 面談で聞くべきことは?
回答観点: 車載経験、RTOS経験、通信規格、マイコン、実機デバッグ、評価環境、センサー制御、ドライバ/ファームウェア経験を確認する。
ケース6: .NETリプレイス案件「.NET Frameworkから.NET 8、SQL Server、Azure」。誰が近い?
状況: 候補AはUnity C# 3年。候補BはASP.NET MVCとSQL Server保守4年。候補CはWPFのみ2年。
問い: 提案候補とコメントの方向性は?
回答観点: 候補Bが本線。ASP.NET、DB、保守改修経験を補足し、.NET 8やAzure経験の有無を確認する。AはC#でも領域違い。CはWindowsアプリ寄りでWebリプレイスには不足がある。
12 / Check
確認テスト
案件概要、スキルシート、面談、提案の判断軸が残っているかを確認します。
研修後にできてほしいこと
- C / C++ / C#を別カテゴリとして説明できる。
- Unity C#と業務系C#を混同しない。
- Unreal BlueprintとC++実装を分けて確認できる。
- 組込みC案件で確認すべきキーワードを言える。
- スキルシートから担当範囲・実務深度を読み取れる。
- 提案コメントで経験の近さと不足点を正直に補足できる。
1. C#経験者をUnity案件に提案する前に確認すべきことは?
2. ASP.NET経験者をUnity即戦力と言い切れない理由は?
3. Unreal案件でBlueprint経験だけの候補者をどう扱う?
4. .NET業務系案件で見るキーワードを5つ挙げてください。
5. 組込みC案件で確認するキーワードは?
6. 提案コメントで「言語名だけで押す」のが弱い理由は?
13 / Summary
まとめ
C/C++/C#案件の提案精度は、言語名ではなく、領域、担当範囲、実務深度を読めるかで決まります。
案件概要
Unity、Unreal、.NET、組込みを分け、必須技術と尚可技術を読み分ける。
スキルシート
タイトル名より、実装箇所、工程、商用経験、運用、改善経験を見る。
登録面談
何を作ったか、どこまで任されたか、どう改善したかまで聞く。
提案
経験の近さと不足点を正直に補足し、案件側の不安を先回りする。
良い提案コメント例