スマホアプリはAndroidアプリとiOSアプリに分けられるが、そのスマホアプリを開発するアプリケーションエンジニアも大きく2つに分けることができる。1つはIT技術やスキルを研鑽している段階のアプリケーションエンジニアだ。これは上流アプリケーションエンジニアを将来的に目指している段階で、具体的にはITアーキテクトやITスペシャリストといった職種がそれにあたる。もう1つが上流アプリケーションエンジニアだ。SI業界ではシステム開発をするときには、単独で仕事をすることは極めて稀で、多くのクライアントや関係会社と協力しながら仕事を進めていく。そうした中で会社の中核的な存在として活動するのが上流アプリケーションエンジニアだ。
このアプリケーションエンジニアに求められるスキルとしては4つある。1つは企画力だ。既存のシステムの問題点を明らかにしてそれを解決するアプリケーション機能を提案する必要があるのだ。もう1つは業界に関する知識だ。クライアントから求められるアプリケーションを提案するには、クライアントの業界トレンドや現状について知識を持っていないといけない。3つ目は課題解決力だ。アプリケーションエンジニアとしては、既存のシステムを改修するのではなく新しく設計することが多い。どういった技術が必要なのかを見極めて実際にクライアントの課題を解決しないといけない。最後はコミュニケーションスキルだ。複数の会社と一緒になってゴールを目指すのでお互いに連携し合う必要性から円滑なコミュニケーションが求められる。