VB.NETとは
VB.NETとはMicrosoft社が開発したオブジェクト指向のプログラミング言語です。
Microsoft社が提供している「.NET Framework」上で動作するよう開発されています。C#やJavaなどと比較して、VB.NETは文法が自然言語に近いため、比較的取得しやすいプログラミング言語といわれています。
VB.NETはオブジェクト指向言語に分類されますが、実際にはオブジェクト指向と手続き型言語の2つの特徴を併せ持っています。処理の内容によって、2つのタイプのコーディングが可能であるため、柔軟性の高い言語だといえるでしょう。
VB.NETの特徴
VB.NETはWindowsやWebのユーザーインターフェースを簡単に実装できるという特徴があります。
ボタンやテキストボックスなどのUI部品を組み合わせることでブロックを組み立てるように画面の構築が可能です。
具体的には下記の特徴があります。
可読性が高い
VB.NETは可読性の高い言語です。
例えば、変数の宣言の順序と英語の文法順序とが一致しているため、初めて見る人にも分かりやすいのです。
コードが読みやすく、分かりやすいことを可読性が高いといいますが、VB.NETの特徴は可読性の高さにあります。
機能性が豊富
機能の豊富さもVB.NETの特徴です。
Javaと同じようにオブジェクト指向や関数型もVB.NETに実装されています。
さらに、LINQや匿名関数を利用した要素処理が可能です。LINQでは配列要素に対するクエリ操作を行うことができます。
また、VB.NETは文字列関連の機能が充実していて、半角全角変換や平仮名カタカナ変換などが標準関数で簡単に行えます。
NET Framewworkへのフルアクセスが可能
VB.NETは、.NET Framewworkへのフルアクセスが可能です。
例えば、Windows フォーム、ASP.NET (Web フォーム、XML Webサービス)、ADO.NET などの新しい機能を利用することができます。
VB.NETについては、「VB.NETとはどんな言語?概要や将来性、特徴をわかりやすく解説」でも詳しく解説しています。
VB.NETエンジニアの仕事内容について
VB.NETはWindows上で動作する業務システム(デスクトップアプリケーション)の開発が得意です。
業務系システムとは、会計システムや販売管理システム、物流システムなど企業の生産活動に欠かせないシステムのことを指します。企業が使っている既存システムの追加機能の開発、運用・保守業務が主な仕事となってくるでしょう。
特に保守・改修案件ではVB6.0からの移行もあり、今も底堅い需要が見込まれます。安定稼働が前提となる金融、官公庁などの業界において多く採用されている傾向があります。
未経験からVB.NETエンジニアに転職する方法
結論、未経験からVB.NETエンジニアへの転職は可能でしょう。VB.NETでは既存システムの追加機能の開発、運用・保守といった案件が多くあります。開発、運用・保守フェーズから徐々に経験を積むことで、VB.NETの知見を深められるでしょう。
VB.NETの開発フェーズで多くの経験を積み、徐々に上流工程へスキルアップも可能です。エンジニアとしてのキャリアを充実させるためにも、VB.NETと併せて他言語の習得、フレームワークを扱えるスキル習得をおすすめします。
VB.NETエンジニアに転職するために
未経験からでもVB.NETエンジニアを目指すことが可能と述べましたが、実際にどのようなアクションを起こすべきか、そのステップに沿って解説していきます。
自分の開発環境を構築して、アプリを作成する
VB.NETの開発環境はMicrosoft社が提供している統合開発環境「Visual Studio」を使うことで簡単に作成できます。ダウンロードしてインストールするだけで開発環境が構築できるのもVB.NETの魅力の1つです。学ぶことも大切ですが、実際に手を動かしてみることがスキルの向上に繋がります。
キャリアアドバイザーに相談する
VB.NETに限らず、未経験からエンジニアに転職するためにはキャリアアドバイザーに相談することをおすすめします。キャリアアドバイザーはIT業界に精通しており、数多くのエンジニア輩出をサポートしています。
寄り添った手厚いサポートが受けられるので、迷ったらまずは相談してみることをおすすめします。
VB.NETエンジニアの平均年収
VB.NETエンジニアの平均年収は400万円~600万円が相場となっています。一方で、フリーランスの案件だと月50万円以上の案件が数多くあります。
VB.NETで上流工程の経験を積んで、フリーランスとして案件獲得ができれば年収アップは十分に可能でしょう。一方で、プログラミングスキルを活かして年収アップを目指すのであれば、VB.NETと併せて他言語の習得が必要になると思われます。
VB.NETエンジニアとして更に高い年収を目指すには、プロジェクトマネジメントスキルや要件定義などの上流工程のスキルを習得し、リーダー職以上のポジションを目指す必要があります。
また、金融系や自治体系のシステム開発案件は年収が高くなる傾向がありますので、そのような求人に絞って転職活動をするというのも1つの方法です。
【求人例】SI企業におけるシステム開発
【想定年収】400~600万円
【業務内容】
・生命保険会社や製薬会社向けの業務システム開発
【必要なスキル・経験】
・C、C#、VB.NET、Java、PL/SQLなどの言語スキル
・ERP、SAPなどの業務システムの利用経験 など
【求人例】SI企業におけるシステム開発
【想定年収】260~450万円
【業務内容】
・VB6からC#.NETへの移行作業
【必要なスキル・経験】
・VB.NET
・VB6.0、C#.NETでの1年以上の開発経験
VB.NETエンジニアの需要
まず、VB.NETの需要が高い領域について解説します。最近ではVB.NETを用いた新規開発の案件はほとんどありませんが、既存システムの運用・保守業務や追加機能の開発においては根強い需要があります。
具体的には、以下のような案件で用いられています。
業務システム(デスクトップアプリケーション)の開発
VB.NETは、製造業や流通業などの業務システムの機能追加や保守案件での需要が多くあります。VB.NETはほとんどの企業が採用しているWindows OSとの相性が良く障害が起こりにくいため、安定性・堅実性を重視する企業では依然としてVB.NETでの開発が続いています。開発するシステムは、会計システム、販売管理システム、生産管理システム、物流システムなどの、主に基幹系と呼ばれるシステムが多いでしょう。
VB6.0からの移行案件
VB.NETエンジニアは、VB6.0からの移行案件でも一定の需要があります。
企業にもよりますが、業務システムは10〜20年と非常に長い期間に渡って使われる傾向があります。VB6.0は1998年に登場した開発言語ですが、2020年現在でも多くの企業がVB6.0で開発したアプリケーションを現役で使用しています。しかし、VB6.0のサポートは終了しており、今後使い続けていくのはセキュリティ性やメンテナンス性の面から厳しい状況でしょう。
この問題の解決手段として最も一般的なのがVB.NETへの移行なのです。
Webアプリケーションの開発
需要は少ないですが、Webアプリケーションの開発にもVB.NETが使われることがあります。
近年のWebアプリケーションの開発はPHPやRubyなどが主流ですが、社内の業務システムがVB.NETであるがゆえに新規のWebアプリケーション開発もVB.NETで行うというケースがあります。
開発にあたって新たにPHPやRubyスキルを持った人材を多数採用しなくて済むためです。
VB.NETエンジニアの転職で評価されるスキル・経験
次に、VB.NETエンジニアとして転職する際に評価されるスキルと知識、経験を需要がある分野別に解説します。
業務システム開発で評価されるスキル・経験
VB.NETでの業務システム開発経験
販売管理システムや在庫管理システムなど、特定の業務システムの開発経験があると評価につながります。
業務系システムの基本機能は似通っているケースが多く、過去の経験から効率的に設計や開発が行えるためです。加えて、在庫管理業務などの業務設計経験もあると、上流工程での活躍も期待されるでしょう。
データベースを使用した開発経験(SQLスキルを含む)
業務システムでは、SQL ServerやOracleなどのデータベースを利用するケースがほとんどで、データベース操作はSQLを使って行うため、SQLスキルが必須になります。業務システムは、膨大なデータ量から指定された条件でデータ抽出する機能などを実装するケースが多く、SQLスキルによってデータ抽出速度が大きく変わります。
よって、SQLのパフォーマンス改善経験や抽出速度の高いSQLを組んだ経験があると評価につながるでしょう。
また、VB.NETでDBに接続する方法は複数ありますが、現在主流となっているADO.NETは押さえておくべきです。
サードパーティー製開発ツールを扱うスキル
VB.NETではアプリケーションの画面や帳票のフォーマットが提供されてるため簡単に作成できますが、顧客によってはよりデザイン性の高い画面や帳票を求められることがあります。
このような時に採用されるのがグレープシティ社の表計算作成支援ツール『Spread』や帳票作成ツール『ActiveReports』などの、VB.NETと合わせて使うサードパーティー製開発ツールです。案件によってはこれらのツールを採用するケースも比較的多いため、一通り扱えるようにしておくと良いでしょう。
ストアドプロシージャの知識
ストアドプロシージャとは、特定条件でのデータ抽出などのデータベース処理を予めデータベースに登録しておく処理のことです。ストアドプロシージャは、データ抽出などのパフォーマンスが高いため、多くの業務システムで活用されています。
Webシステムの開発で評価されるスキル・経験
ASP.NETを扱うスキル
ASP.NETとは、マイクロソフト社が提供しているWebアプリケーション開発用のフレームワークです。ASP.NETを使うことで簡単にWeb画面やバックエンド機能の開発を行うことが可能になります。
VB.NETでのWebアプリケーション開発は、ASP.NETを使った開発がスタンダードであるため、Webシステム開発案件での採用を目指す際には必須のスキルです。
HTMLとCSSのデザインのスキル
ASP.NETを使うことで、HTMLやCSSでコードを書かなくてもWeb画面を作成できます。
しかし、細かいデザイン変更などはHTMLやCSSで行う必要があります。
加えて、業務系のWebシステムはデザイン性が低いケースが多いため(ASP.NETによって、デザインスキルがなくても画面を作成できるため)、デザインスキルを有していると高評価につながります。HTMLの基本的なタグや、CSSでよく使うプロパティについては覚えておきましょう。
JavaScriptを扱うスキル
Webシステムの開発においては、VB.NETで実装できるのはサーバー側の処理だけです。よって、クライアント側の処理はJavaScriptでコーディングする必要があります。JavaScriptは、VB.NETエンジニアに限らずWeb開発案件で高い評価を得られるスキルであるため、優先的に習得しましょう。
現在、JavaScriptでのコーディングは、ライブラリやフレームワークの使用が主流となっています。そのため、ある程度JavaScriptのメカニズムを理解したら、ReactやVue.js、AngularといったJavaScriptのライブラリ、フレームワークの習得をおすすめします。
ASP.NETの主要なフレームワーク
ASP.NETには主要な4つのフレームワークがあります。
-
・ASP.NET Web Forms・ASP.NET MVC
・ASP.NET Core
・ASP.NET Web API
ここからは4つのフレームワークについて紹介していきます。
ASP.NET Web Forms
ASP.NET Web Formsとはドラッグ&ドロップでアプリ開発ができるフレームワークです。従来のWebアプリケーションを構築する場合、HTMLやCSS、クライアントスクリプトやサーバースクリプトでコードを記述する必要があります。
ASP.NET Web Formsを使用すると、視覚的にオブジェクトを追加できるため、比較的容易にWebアプリケーションを作成できるでしょう。機能や納期を重視したアプリケーションを開発するときに使用される傾向があります。
ASP.NET MVC
ASP.NET MVCはWeb Formsの課題を解消するために誕生しました。Web Formsの「単体テストがしにくい」「出力を制御しにくい」といった課題をASP.NET MVCが補っています。しかし、Web Formsとは開発アプローチが全く異なるため注意が必要です。
ASP.NET Core
ASP.NET CoreはWindowsやMacOS、LinuxでクラウドベースのWebアプリケーションを構築するために使用されるフレームワークです。
ASP.NET Coreの登場により、Windowsだけでなく、MacOSやLinuxでも開発が可能となりました。
ASP.NET Web API
ASP.NET Web API はHTTPサービスを提供しているフレームワークです。デスクトップやダブレット、スマホなど様々なデバイスで使用できます。ASP.NET Web APIを使うことで、複数のWeb APIを組み合わせたシステム開発が可能。また、クライアントサイドとWeb APIのプログラムを分断して記述できることも魅力の1つでしょう。
これら4つのフレームワークは汎用性が高く、業務用Webアプリケーションの開発で現在も活躍しています。
VB6.0からの移行案件で評価されるスキル・経験
VB6.0から他言語への移行経験
VB6.0からVB.NETへの移行は、マイクロソフトが提供する変換用ツールを使用するのが一般的です。このツールは業務システムの開発やWebシステムの開発では使わないため、移行案件を扱う際に、既に経験があるVB.NETエンジニアは重宝される傾向にあります。
VB.NETの学習方法
VB.NETの学習方法を4つご紹介します。
VB.NETを習得するには、学習サイトを活用する、専門書を活用する、勉強会に参加する、スクールに通う と言う方法があります。
自分に合った学習方法を選択し、VB.NETの知識やスキルを着実に高めていきましょう。
学習サイトを活用する
インターネット上には、VB.NETに関する優れた学習サイトが数多く存在します。こうしたサイトでは、初心者向けの基本的なチュートリアルから、より高度なテクニックまで、幅広い内容を学ぶことができます。
例えば、マイクロソフトが提供している「マイクロソフトバーチャルアカデミー」という学習サイトがおすすめです。
オンラインで自分のペースで学びたい方にとっては、非常に便利です。
専門書を活用する
書籍は依然として、より体系的にVB.NETを学びたい方におすすめの方法です。豊富な図解や実践的な例題が掲載されていることが多く、学習の理解を深める助けとなります。
例えば、「基礎Visual Basic 2015 基礎シリーズ」は、基礎から順を追ってきちんと説明しているため初心者にも適しています。
勉強会に参加する
勉強会に参加することでエンジニアとしてスキル向上を図ることができます。VB.NETを開発したMicrosoft社が「Microsoft無償セミナー」をオンラインと対面形式で開催しています。
VB.NETやC#、オブジェクト指向などの様々なテーマで随時開催されているので、気になるテーマがあったら参加すると良いでしょう。Microsoft社以外にも多くの企業で勉強会やセミナーが開催されています。興味のある方は一度参加することをおすすめします。
スクールに通う
より体系的にVB.NETを学びたい場合や、集中して学習したい方には、専門のスクールや教育機関に通うことが有益です。経験豊富な講師による指導や、実践的なプロジェクトの経験を通じて、より実践的なスキルを身につけることができるでしょう。
VB.NETに関するよくある質問
Q1. VB.NETでできること
VB.NETはWindowsやWebアプリケーションの開発に適しています。
例えば、販売管理システムなどの業務システムやスマホアプリの開発、データベースと連携したWebアプリケーションの開発ができます。
Q2. VB.NETを使った転職で役立つスキルは?
VB.NETを使った転職で役立つスキルは高校卒業レベルの英語力です。
多くの言語やプログラミングの情報は全て英語で書かれているため「英語力」があると、詳細な説明を知ることができたり、新しい情報を仕入れることが可能です。
Q3. 未経験からVB.NETエンジニアへの転職は可能?
多くの求人の中には「未経験者歓迎」という案件が存在します。
しかし、まったく知識がないよりは少しでも知識があるほうが転職には有利です。
転職の準備としてプログラミングの学習は進めておきましょう。
まとめ
VB.NETは将来的に大きな発展を遂げるとは言い難いですが、既存システムの運用・保守業務や追加機能の開発では一定の需要が続いています。同じ.NET Framework系であるC#.NETやASP.NETでの開発経験や、データベースを用いた開発など幅広い経験を積むことで、より多くのVB.NET案件に対応できるようになるでしょう。
ITエンジニアの転職ならレバテックキャリア
レバテックキャリアはIT・Web業界のエンジニア職を専門とする転職エージェントです。最新の技術情報や業界動向に精通したキャリアアドバイザーが、年収・技術志向・今後のキャリアパス・ワークライフバランスなど、一人ひとりの希望に寄り添いながら転職活動をサポートします。一般公開されていない大手企業や優良企業の非公開求人も多数保有していますので、まずは一度カウンセリングでお話してみませんか?(オンラインでも可能です)
転職支援サービスに申し込む
また、「初めての転職で、何から始めていいかわからない」「まだ転職するかどうか迷っている」など、転職活動に何らかの不安を抱えている方には、無料の個別相談会も実施しています。キャリアアドバイザーが一対一で、これからのあなたのキャリアを一緒に考えます。お気軽にご相談ください。
「個別相談会」に申し込む
レバテックキャリアのサービスについて