こんにちは!しーま(@s59shima)です。
いつもブログをご覧いただきありがとうございます。
今回は、こんな疑問や悩みに回答します。
プログラマとして働きたくて、ネットで情報収集をしていると「未経験でも始められる」という情報もあり、実際はどうなの!?っと思っている方は多いのではないでしょうか。

独学だと、どこまで やればいいのか分からない。。。
私は現在【プログラマ】として、数々のプログラミング言語を学び、アプリ・ソフト開発に携わっています。この業界を5年以上続けているので、どのくらいのスキル・レベルがあれば現場で働けるか熟知しています。
この記事では、プログラマのレベルを4段階にわけ、それぞれのレベルや次のレベルアップに向けた学習方法について詳しく解説します。

この記事を読めば、今日から稼げるプログラマに向けた準備ができるはずです!
4段階から見るプログラマレベル
本記事では、プログラマのレベルを以下の4段階に分けました。
- レベル C(初級)
- レベル B(中級)
- レベル A(上級)
- レベル S (達人)
これまで多くの開発現場を経験し、色んなエンジニアの方と仕事をさせていただき、現場で働ける(稼げる)レベルはB(中級)以上と予想します。
レベルC〜Sの4段階に分けるために、以下6つの項目をベースにしました。
- プログラミング
- データベース
- ソース管理
- 開発環境
- サーバー / ネットワーク
- 設計
それでは各レベルについて解説しますね。
プログラマ レベル C
Cレベルのスキル
プログラミング | 書籍や入門サイトのサンプルプログラムを書いて・実行できる |
データベース | DBを作成し、テーブルへのレコード取得・登録・更新・削除が行える |
ソース管理 | SVN 又は Git の役割を大まかに理解し、アカウントを作成している。 |
開発環境 | 公式サイトからダウンロード・インストールができ、簡単な実行までが可能 |
サーバー / ネットワーク | 公式サイトからダウンロード・インストールができ、簡単な実行までが可能 |
設計 | 大まかに理解できる |
次レベルにアップするには
サンプルコードを読んだり、真似て書いたりして実際にプログラムを動かすことをおすすめします。
手を動かし、アウトプットを続けることで、プログラミングだけではなく、ソース管理や開発環境の分野も同時に学べるはずです!
書いたプログラムが、エラーなどで期待通りに動いてくれない場合もあるかもしれません。
そういったエラー解決も次のレベルアップに繋がることでしょう!
Cレベルのおすすめ学習方法
公式サイトのチュートリアルや【Progate】などのオンライン学習サービスなどの活用が良いです。
専門用語を多く使用している教材よりも、図解などを多く使用している方がイメージしやすいかと思います。
プログラマ レベル B
Bレベルのスキル
プログラミング | IDEを独学で構築可能で、言語のAPIを活用し、簡単なサンプルアプリを作成できる |
データベース | 各種DBの環境構築が可能で、簡単なテーブル作成や定義が可能 |
ソース管理 | コミット / チェックアウトなどが可能 |
開発環境 | 複数の開発環境を必要最低限活用できる |
サーバー / ネットワーク | 複数の開発環境を必要最低限活用できる |
設計 | ある一部の機能について書ける |
プログラマとして必要な3つのスキルを最低限持っていることでしょう。
- コードを読む・書くスキル
- デバッグするスキル
- テストするスキル
次レベルにアップするには
1つでも多くの開発案件に関わり、実務経験を積むことで次のレベルにアップすることでしょう。
実践を通し、色んなエンジニアの方と一緒にお仕事をすることで多くのことが学べるはずです。
プログラミング言語だけではなく、これまで知らなかった技術などを知ることもできることでしょう。
Bレベルのおすすめ学習方法
プログラミング言語の学習だけではなく、アプリ・システム開発の一連の流れを学習できればさらに成長できるのではないでしょうか。
例えば、Udemy というオンライン学習サイトには体系的に学習できる内容が数多く存在します。

こちらのコース(フルスタック・Webエンジニア講座)の場合、Webアプリ開発に必要な内容を学習することができます。

Udemy の魅力について記事はこちらです!合わせてどうぞ!
プログラマ レベル A
Aレベルのスキル
プログラミング | DB接続やフレームワークを活用し、より実践的になアプリを作成できる |
データベース | 関数を使用したSQL文を活用でき、表を結合したレコード取得も可能 |
ソース管理 | 競合が発生した際の対処が可能 |
開発環境 | 最新の開発環境を独学で構築することが可能 |
サーバー / ネットワーク | 最新の開発環境を独学で構築することが可能 |
設計 | フローチャートやUMLを活用し、システム全体を設計できる |
次レベルにアップするには
アプリ開発を行うためのスキルを一通り身につけ、日々の作業ルーティングに多少飽きた方も中にはいるのではないでしょうか。
その場合、新しい考え方や技術に触れることが望ましいです。
エンジニアの場合、勉強会がとても盛んで、毎週どこかで開催されているほどです。
なので、自分の興味のある技術のイベントがもしかしたらすぐに見つかるかもしれません。

普段、私も利用している2つのサイトを紹介します。登録もとても簡単ですよ。
- connpass
- Doorkeeper
この2つのサイトに登録しておけば、自分の興味のある技術のイベントが見つかるはずです。
イベント自体も無料が多く かつ 最近ではオンラインが主流なので参加がとてもしやすいかと思っています。
Aレベルのおすすめ学習方法
プログラミングについて分からない事は調べ、独学で進めることができるレベルですよね。
その次に「読みやすいコードを書きたい」「キレイなコードが書きたい」とかあるのではないでしょうか。技術評論社の「良いコードを書く技術」という本で、良いコードを書く5つの習慣が紹介されています。
- コードを読みまくる
- とにかくコードを書く
- 開発環境は常にチェック
- 良い知識をチェック
- 周りからのフィードバック
上記の「良いコードを書く5つの習慣」以外にも「良いコードの定義」「具体的なコードの書き方」についてかなり深掘りされて書かれています。
平凡プログラマから一歩先を進むには、本書は参考になるかと思います^ – ^
プログラマ レベル S
Sレベルのスキル
プログラミング | 開発現場において共通部品を作成したり、難易度の高いアルゴリズムを実装できる |
データベース | トランザクションの仕組みを理解して、適切なDB設計ができる |
ソース管理 | SVN/Gitの構築が可能でメンバへのアクセス権限を管理できる |
開発環境 | 案件にマッチした開発環境を提案できる |
サーバー / ネットワーク | 案件にマッチした開発環境を提案できる |
設計 | システムの要望や問題点を具体的に言語化し、設計を行うことができる。 |
技術力もあり、経験豊富なプログラマの領域です。
ただ単にプログラムを作成し、動かすというのではなく、プログラミング言語・テクニック、コーディングスタイル・ツール、デザインパターン、ソフトウェア要件・納期・不具合・品質など網羅すべき点が多いことでしょう。
開発現場において、共通部品を作成したり、フレームワーク的な仕組みを構築することも多いのではないでしょうか。また、勉強会での登壇する機会も多いはずです。

取り組む姿勢など、達人プログラマから見習うところは沢山ありますよね!
本記事のまとめ
今回は、「プログラマーとして稼ぐためにはどのくらいのレベルが必要なのか」について解説しました。
最後まで読んでいただきありがとうございます(*^-^*)
本記事の内容をまとめると以下の通りです。
開発現場で働く場合、レベルB(中級)以上が必要
プログラミング | IDEを独学で構築可能で、言語のAPIを活用し、簡単なサンプルアプリを作成できる |
データベース | 各種DBの環境構築が可能で、簡単なテーブル作成や定義が可能 |
ソース管理 | コミット / チェックアウトなどが可能 |
開発環境 | 複数の開発環境を必要最低限活用できる |
サーバー / ネットワーク | 複数の開発環境を必要最低限活用できる |
設計 | ある一部の機能について書ける |
おすすめ記事
「プログラミングを本格的に勉強したいっ!」という方へ
「コスパが良いプログラミング学習したい」という方へ
「プログラマとして更に成長したい!」という方へ