プログラミング未経験からアプリエンジニアになるための方法とは

エンジニアと一言でいっても業務系なのかWEB系なのか、はたまたインフラ系なのか幅広い分野がある分、エンジニアになるための入口も様々です。

その中でも今回はiPhoneやAndroidのアプリ開発エンジニアになるにはどうすればいいのかをちょっと考えてみました。あくまでSESの営業目線なので、一般的な意見とは違うかもしれませんが。

アプリ開発エンジニアになるにはどんな言語の習得が必要?

ここで言うアプリ開発エンジニアとは、iOSやAndroidのマーケットに出ているようなアプリを開発しているエンジニアを想定したいと思います。特殊な開発ツールを使うとか抜きにして、一般的にiOSならObjective-CかSwift、AndroidならJavaかPythonというプログラミング言語が使えないと作れないのです。

また、昨今ゲームアプリやVR/ARなどで多く利用されているUnityを使って開発する場合は、C#かJavascriptの習得が必須になっています。まぁ、C#でやってるとこがほとんでしょうが。あとはゲームエンジン繋がりだと、cocos2d-xの場合はC++だったりでまぁ色々あるんだなっていうくらいの認識で良いと思います。

またアプリを作れるよと言ってもビジネスとして成立している沢山の機能が実装されたアプリと、個人で作ったような単純なUIのアプリとではモノが全然違うわけで、SESの業界的には前者のようなアプリを作れる人をイメージします。

まずはプログラミングの勉強すよね

ということでプログラミングの勉強をしましょう。スクールとかに通うという手もありますが、まずは手軽に無料で勉強できるドットインストールあたりで勉強してみたらどうかなと。アプリ開発以外にも、このサイトで使ってるWordpressとか流行りの言語のレッスンもなんかもあるので、興味を持ったらまずやってみると。

最初からソーシャルゲームやVR/ARアプリとかに興味があるのであれば、一念発起してプログラミングスクールに通っちゃうのもアリだと思います。業界的なトレンドとしてもやはりUnityは外せないと思うので、TECH::CAMPのUnity/VRコースなんかがおすすめです。

あとは他のWEBサイトや書籍から学んだり、勉強会とかにも出席してみたり。。で勉強するのは大前提として、それを仕事にするにはどうすればいいのか。

とりあえず現場に入るのも1つの手

上で書いているように勉強したところで、仕事としてできるというレベルに達するには時間と経験が必要だと思うんです。ソースが書けなくても0から手取り足とり教えてくれる優しい会社がたくさんあればいいのですが、現実は即戦力を期待してる会社がほとんどだと思います。

そこで思うのは現場経験を積む為に、テストエンジニアから入るのも手だと思うんです。いわゆるデバッカーというやつすね。開発側が作ったアプリがちゃんと動作するのかをテストする仕事なんですが、アプリがどういう開発フローで作られてるのかが分かったりするので、良い経験になると思います。

開発現場にデバッガーとして入るにはSESで潜り込む方法以外に、ゲーム会社が募集しているアルバイトとして雇ってもらったり、スマートフォンアプリのデバッグを専門でやっているテスト会社などもあるのでFind Job!あたりで探してみると良いのではないでしょうか?

デバッガーからプログラマーへ

デバッカーとして入っている現場でスキルアップしてプログラマーの仕事にスライドできれば理想的です。ただそんなに上手くはいかないので、いくつか現場を渡り歩いて経験値とスキルを磨いていくのがいいんじゃないかなーとSESの営業してる側からすると思うわけです。

テストの仕事の中でもSQLを叩いたりLinux操作が必要な作業があったりと、単純なテストでも技術的なことが学べたりする現場もあるので色々と経験していくと良いのかなと。

あとはもう個人ベースでも良いので勉強してアプリを1つ作ってみて、ストアにリリースすることが大事だと思います。採用面接とかでも実際に動くプロダクトを見せることができるというのも1つのアピールポイントになったりするので、デベロッパー登録して自分で申請までやってみたりすると本当に良い経験になるんじゃないでしょうか。

勉強をしつつ、現状のスキルでできる仕事で経験を積んでスキルアップをしていく。これがアプリ開発エンジニアになる為の1つの方法かなぁとか思ってみました。

ABOUTこの記事をかいた人

SES営業の10年選手です。SESでの起業経験あり。人事、法務、労務、経理、総務、マネジメント、マーケティング、WEB/アプリ開発、と守備範囲は広いですが程よく適当です。PokemonGO頑張ってます。