ソフトウェア開発(スマホアプリ)とは、スマートフォンで利用するアプリをチームで開発する職業です。
スマートフォンで利用するアプリをチームで開発する。
スマートフォンのアプリはダウンロードしてインストールする「ネイティブアプリ」と、スマートフォンからブラウザで使用する「Webアプリ」がある。また、この両者を組み合わせた「ハイブリッドアプリ」もある。
具体的にはスマホ利用者のニーズやシーズ、アプリのトレンド等を考え、アプリの企画をチームで検討するところから始まる。企画内容を決めるにあたっては、競合するものや類似のアプリ等がないか調査も行う。顧客からアプリ開発を受託し、その企画を検討する場合もある。いずれの場合も、企画から要件定義を行い、画面や機能を決め、アプリを開発する。企画の検討はプロダクトマネージャが行い、基本設計から開発をエンジニアが行うという具合に分業している場合もある。この場合、要件定義はプロダクトマネージャとエンジニアが共同して行う。
開発が完了するとアプリを様々な側面から評価するテストを考える。テスターがテストを行い、バグが見つかればプログラマーと協力して修正を行う。また、リリースに向けてユーザに実際に使用してもらう。
開発ではパソコンが使われる。スマートフォンのOS(オペレーティングシステム)はAndroidかiOSであるが、双方に対応した開発環境(フレームワーク、クロスプラットフォーム)が出てきている。開発のためのプログラミング言語には様々なものがあるが、プログラミングすることなく簡単なアプリを開発できるツールもある(ノーコード)。
スマホのOSが新しくなると、開発したアプリもバージョンアップの対応をしなければならず、これが開発業務の中で何割かを占める。
スマートフォンのアプリはこのエンジニアのほかに、プロデューサー(プロダクトマネージャ)、デザイナー等から構成されるチームで開発する。開発ではエンジニアやデザイナーが複数となり、全体で4~6人で開発することが多い。開発段階では、定期的にこの開発チームでミーティングを行うが、情報共有、進捗管理等にはコラボレーションツール(Slack等)が用いられる。開発過程での問題点はミーティング等を通して解決策を見いだす。開発に必要な新しい情報をインターネット等で調べることも多い。
スタートアップのときなど、エンジニアが営業的な仕事もするが、開発体制が整ってくると、営業やプロダクトマネジメントは別の担当者となる。
<就業希望者へのメッセージ>
いろいろなプロセスを経て作り上げたアプリが製品となり、直接ユーザーに使ってもらえる経験ができるのは、スマホアプリの開発エンジニアならではのやりがいです。(就業者 20代)
◇ よく使う道具、機材、情報技術等
フレームワーク(React Native 、 flutter等)、プログラミング言語(Swift、Kotlin等)、OS(オペレーティングシステム:Android、iOS)、コラボレーションツール(Slack等)、スマートフォン、パソコン、表計算ソフト(GoogleGoogleスプレッドシート等)、SNS
入職にあたって特に学歴や資格は必要とされず、専攻も特に問われない。学校卒業後、就職する場合もあるが、他業種からの20~30代で中途採用されることも多い。大学等の授業とは別に学生時代に自分で開発を行う等、技術のある学生もいる。
スマートフォンのOSであるAndroidかiOSに対応した開発環境、また、開発のためのプログラミング言語Swift、Kotlin、そして、フレームワーク/などが使えるスキルが求められる。スマートフォンがEC、キャッシュレス決済、また、家電や車と連携するようになりセキュリティ対策が重要になり、この知識も求められる。
関連する技術、関連する情報は変化が激しいため、研究会や交流会に参加したり、ネットで講演会を視聴したり、SNS等でも最新の情報を収集する必要がある。コロナ禍でリモートでの開催が広がったが、直接会いデモを見せたり、名刺交換等のため、対面での集まりが増えている。
周辺技術も含め、関連する資格を取得する者もいる。実績を積みプロダクトマネジメントの仕事をするようになったり、フリーランスになる人もいる。
UI (User Interface)の設計ではデザインセンスや色彩感覚が求められるが、これはWebデザイナー、UX/UIデザイナーが担当することが多い。利用者のニーズ、シーズを的確にとらえる力も必要である。マーケティングの知識や市場のトレンドを理解し、それを企画書に反映させる力も問われるが、これはプロダクトマネジャが行うことも多い。
簡単な開発であれば誰でも使えるような開発環境も広がっており、アイディアや独創性が求められるようになっている。
勤務先は、スマホアプリを開発する企業である。職場は都市部が多いが、打合せをオンラインで行い、在宅(テレワーク)で仕事をする場合もある。
就業者は、男性の比率が高い。年齢層は20歳代~40歳代がほとんどである。
雇用形態は、正社員のほか、業務委託やフリーランスで開発に参加している人もいる。
賃金は、正社員は月給制が一般的である。業務委託やフリーランスは案件ごとに契約する。
労働時間は、フレックスタイム制やフリータイム制も採用されている。アプリのリリース前などは残業が増える。
人材確保が課題となっており、未経験者を採用して育成する企業、また、テレワークや副業等、より柔軟な働き方を認める企業も増えている。
スマートフォン利用が広がる中、様々なアプリが開発されている。個人が使う情報機器のメインがパソコンからスマートフォンに移り、個人が使う情報機器のメインがスマートフォンになっている。アプリ開発は需要があり、人手不足、人材不足が続いている。フレームワークが使われるようになり、一人で様々な開発ができるようになったことから、以前ほどフルスタックのエンジニアが注目されることはなくなっている。そして、何を作るかというプロダクトマネジメントを目指すエンジニアが増えている。
開発において生成AIの活用も始まっている。また、AIが普及、拡大し、AI機能をスマホアプリに実装する開発(チャット機能による案内、音声認識等)が盛んになっている。
業界をまたいで、AI 影響度が同水準の代表職業(規模順)。