• 職種研究アプリケーションエンジニア

    ITに投資する企業が増えているなか、幅広い知識を持つアプリケーションエンジニア(AE)が不足しています。アプリケーションエンジニアになるにはどうすればいいのでしょうか? また、他のエンジニアとの違いも詳しく解説しましょう。

    アプリケーションエンジニアの仕事内容と転職

    1.アプリケーションエンジニアの仕事内容

    ITシステムのなかでも、アプリケーション(アプリ)を担当する職種です。「アプリケーション」というのは、目的に沿った作業ができるように作られたソフトウェアのことを指します。

    パソコンやスマートフォンにインストールして使用するタイプのものからWebブラウザで閲覧するものなどさまざまです。最近は、クラウドアプリケーションも増えています。

    例えば、以下のようなアプリ開発があるでしょう。

    ・会計システムや営業支援ツールなど、企業内で使う業務系アプリケーション
    ・インターネットバンキングやショッピング、防災情報伝達、写真共有など、一般ユーザーに関わるWeb、スマホ、クラウドのアプリ
    ・自社開発のITソフトウェア

    OS(Operating System)に合わせて開発する必要があり、どの領域で活躍するかによって使用する開発言語も変わってきます。

    業務系のアプリ開発では、Java、C言語、C#といったプログラミング言語がよく使用されるでしょう。Webアプリの開発ではRubyやPHP、Pythonなども使用され、スマホアプリの場合はiOSアプリならSwift、AndroidアプリならKotlinが使用されることもあります。

    仕事の流れ

    まずは、自社プロダクトであれば社内で、受託開発であれば顧客(企業)とどのようなアプリを作るかすり合わせし、必要に応じて企画・提案を行います。要件定義ができたら、アプリの設計書を作成します。

    その後、設計書に沿ってコードを書き、プログラムが正しく動くかどうかテストを行ってから納品するという流れです。必要に応じて、システムのアップデートやトラブル防止のための監視等を行うこともあります。

    なお、必ずしもこれらの工程全てに関わるとは限りません。一部の業務のみ担当するケースも多いでしょう。

    システムエンジニア(SE)やプログラマとの違い

    アプリケーションエンジニアは、プロジェクトによってSE、プログラマ、プロジェクトマネージャ等の役割分担をされることになります。ただし、特にSEとの線引きは曖昧で、企業によっても異なるでしょう。また、SEの業務内容も企業やプロジェクトによって違います。

    基本的には、SEは要求分析や要件定義、設計といった上流工程を担うのが一般的でしょう。プログラマはプログラミングを主な業務とする職種ですが、SEと兼ねる場合もあります。

    2.アプリケーションエンジニアになるには

    特に資格は必要なく、アプリ開発のプロジェクトにアサインされれば、アプリケーションエンジニアになることができます。

    必要なスキル・資格

    顧客や開発メンバーと関わる機会が多く、課題解決力や提案力、コミュニケーション力が求められるでしょう。

    必須ではありませんが、意欲的に資格取得を目指すことでスキルアップにつながります。「システムアーキテクト試験」や「Android™技術者認定試験」、「プロジェクトマネージャ試験」を受験する人が多いでしょう。

    英語力は求められないケースも多いですが、英語が堪能なら勤務先や担当顧客が外資系の場合や、海外拠点がある場合に重宝されるでしょう。

    新卒の場合

    アプリケーションエンジニアとして採用を行う場合と、SEやプログラマとして採用した後、適性に応じてアプリケーション開発に携わるケースがあるようです。

    理系出身者を求める企業もありますが、文系・理系を問わず応募できる企業もあります。一般的には、入社後に開発の専門知識を学べる研修制度が設けられていることが多いでしょう。

    3.アプリケーションエンジニアの転職

    近年はIT投資が盛んなこともあり、アプリケーションエンジニアの需要は高まっています。特に、Webアプリやスマホアプリ開発に関連する求人が多いようです。

    未経験からの転職

    幅広い知識が必要なため、未経験からの転職は容易ではありません。しかし、インフラ系エンジニアに比べると比較的目指しやすいとも言われています。

    ある程度独学やスクール等で学び、技術力をつけていたほうが採用の可能性は高まるでしょう。

    経験者の転職

    実務経験者の場合、開発実績や担当した領域、マネジメント経験の有無等が見られるでしょう。即戦力になるかどうかが採用側にとって重要なポイントです。例えば、上流工程の経験や最新の技術スキル、大規模なアプリケーションの負荷対策の知識等を持ち合わせている人材は優遇されやすいでしょう。