GeNEE 日向野卓也│ヒットアプリの裏側・現役エンジニア社長が教える「アプリ開発の進め方」ポイント8選
システム開発では知らないと失敗してしまうことも多い。8つのポイントを押さえよう
システム開発やアプリ開発を業者に依頼して、失敗してしまうケースは少なくありません。開発会社側に原因があることももちろんありますが、発注者側がシステム開発・サービス開発のポイントを押さえていないことが原因のケースもあります。
GeNEE(ジーン)の日向野卓也さんは、システム開発のプロフェッショナルです。大手企業からベンチャー企業まで、さまざまな企業のアプリ開発、サービス開発を成功させてきました。
NTTデータ出身で数々の大規模開発経験を経て起業した日向野さんに、発注者側がアプリ開発時に気をつけるべきポイントや、起業の際の心構えなどについて、創業手帳の大久保が伺いました。
創業手帳 株式会社 代表取締役
大手ITベンチャー役員で、多くの起業家を見た中で「創業後に困ることが共通している」ことに気づき会社のガイドブック「創業手帳」を考案。現:創業手帳を創業。ユニークなビジネスモデルを成功させた。印刷版は累計250万部、月間のWEB訪問数は起業分野では日本一の100万人を超え、“起業コンシェルジェ“創業手帳アプリの開発や起業無料相談や、内閣府会社設立ワンストップ検討会の常任委員や大学での授業も行っている。毎日創業Tシャツの人としても話題に。 創業手帳 代表取締役 大久保幸世のプロフィールはこちら
※この記事を書いている「創業手帳」ではさらに充実した情報を分厚い「創業手帳・印刷版」でも解説しています。無料でもらえるので取り寄せしてみてください
この記事の目次
GeNEE(ジーン)のサービス概要
大久保:GeNEEのサービスについて教えてください。
日向野:弊社ではDX推進サービスや、新規事業創造・MVP開発、モバイルアプリ開発、業務系のシステム開発などの各種サービスを提供しています。
大手企業〜ベンチャー企業まで、幅広いクライアントから受注して受託開発をしています。それだけではなく、自社サービスも展開していますので、サービス開発のポイントについても理解しており、そのため、新規事業開発のお手伝いもさせていただいています。
スマホアプリ開発では、国内登録者数200万人弱のメガヒットアプリ、「マンガボックス」をゼロベースからスクラッチ開発したエンジニアなどが在籍しており、スマホアプリサービスのスケールの勘所や開発のノウハウがしっかりと蓄積された会社だと自負しております。
大久保:ありがとうございます。システム開発を中心にさまざまな事業を展開されているのですね。日向野さんもエンジニアですよね。
日向野:そうですね。NTTデータ出身で、今の仕事でもQAテストなどでプログラムコードを確認する機会があります。WebサービスやスマホアプリサービスといったITサービス全般をグロースさせることを得意としており、先ほど申し上げた「マンガボックス」のような新規事業開発を検討されている場合には、是非お声掛けいただけたらと思っています。
①開発を依頼する側がITの知識を持つ
大久保:NTTデータと今のベンチャー企業とで、開発のやり方に違いなどはありますか。
日向野:ありますね。NTTデータは官公庁のシステムを作るところから始まった経緯があるので、開発においては丁寧さや正確性を重視します。それに対してベンチャー企業のお客様は丁寧さや正確性よりも市場や競合他社の動向を常に意識しているため、速度感が何よりも重要になります。
そのため、ベンチャー企業やスタートアップのお客様にはアジャイルと呼ばれる軌道修正型の開発スタイルで、プロジェクトに参画させていただくことが多いです。
大規模な開発プロジェクトなどですと、NTTデータのような大きなITベンダーの下にいくつもの開発会社が入っている多重下請け構造になっています。そのようなケースでは、NTTデータのような上流工程を担当するITベンダーと、手を動かして開発する下流のITベンダーとでは当然やることも違ってきます。
大規模プロジェクトを推進する際には、ステークホルダーが多いので、上流の指示が下流に伝わっていないこともあります。
大久保:そうすると、いわゆる「炎上」プロジェクトになってしまうわけですね。
日向野:そうなりますね。あとは、開発を発注する側がITシステムの仕様を理解できていないので、指示が丸投げになってしまい、無茶な要求によって開発が頓挫することもよくあります。
大久保:なるほど。
日向野:発注者側にビジネスとITの両方の仕様を理解した上で、適切な要望を出せる人がいないと大規模プロジェクトはうまくいきにくいです。
大規模プロジェクトではステークホルダーが多いので、コミュニケーションコストが高いんですね。上流工程の方が下流工程の方に指示をするなかで、どうしてもズレが生まれてきてしまう。ただでさえ、発注者が望んだ通りのシステムを作るのは難しい。
その上、発注者側の要望が最初から的外れなものであれば、下流工程の開発会社に指示が伝わるまでにさらにひどいものになってしまいます。
大久保:発注者側にITの知識があれば、開発の途中でズレに気づくこともできますからね。
②プロジェクトマネジメントがカギ
大久保:開発プロジェクトを成功させるために重要なことは他にもありますでしょうか。
日向野:力のあるプロジェクトマネージャーを配置しておくことが重要ですね。プロジェクトマネージャーが発注者と対等に交渉できる立場にないと、無理な納期や予算、要望に対して申し出ることができずに、炎上プロジェクトになってしまいます。
大久保:発注者側に逐一アラートなどの報告ができる、胆力のあるプロジェクトマネージャーを配置することも重要になりそうですね。
日向野:おっしゃる通りですね。発注者側の交渉相手のなかにITの知識が疎い方がいたりすると、いきなり工数を「半分にしてほしい」と交渉してきたりするケースもあります。
そこで発注者の言いなりになってしまうと、いわゆる「デスマーチ」に突入してしまいがちです。やはり、開発の入り口段階で営業やグループマネージャーなども入れてしっかりと発注者側と現実的な工数に落とし込んでおかなければなりませんね。
③機能の詳細をビジュアルで詰めていく
日向野:あとは、開発の早い段階で機能の詳細を詰めておくことも重要かなと思っています。
ログイン・ログアウト機能にしても、SNSを使ったログインなのか、パスワードを使ったログインなのか、定義づけをしっかりとやっていく。発注者側はこの辺りのイメージを持っていないことも多いので、しっかりとコミュニケーションを取りながら開発していくことが重要です。
大久保:イメージがない場合が多いんですね。
日向野:弊社では、UI/UXデザイン専用のツールを使用し、開発前の段階から最終完成形の静的モックを制作し、発注者としっかり意識合わせすることを重視しています。このプロセスを踏むことで、最初にイメージしたシステム、スマホアプリと違うものにならないように最大限注意しています。
大久保:なるほど。
日向野:最初の段階でズレを防ぐことで、見積もりもしやすくなり、炎上も防げます。
④開発会社の選び方のポイント
大久保:なるべく低予算で開発をしたい場合に、フリーランスや小規模な開発会社に安く発注したい、となるケースもあるかと思います。開発にあたって適切なパートナーを選ぶコツなどありますか。
日向野:そうですね。基礎的なことになりますが、やはり情報収集が最も重要だと思います。フリーランスの方であれば、過去の開発実績やポートフォリオ、今までの開発経験や年数、携わっていた開発プロジェクトについて具体的に聞くこと、などでしょうか。
お客様の中には価格が安いからということでフリーランスやオフショアを利用されるケースがあるのですが、開発が始動すると、その後の軌道修正は非常に大変になりますし、要望書に上げていた機能が開発途中に実装できなくなり、プロジェクト全体が中断になった、といったケースも耳にしますので、価格を最重視した業者選定は弊社はおすすめしていないですね。
フリーランスに依頼すると、傾向としてですがトラブルになるケースもあるので、開発会社に依頼したほうが安心できますよね。
大久保:開発会社に依頼する際に、いい会社を見極めるポイントがあれば教えてください。
日向野:そうですね。いい開発会社は、開発に入る前の段階で見積もりやスケジュールをちゃんと提示してくれる傾向があると思います。
あとは、要件定義の際に、ブレイクダウンしてそれぞれの機能がユーザー目線でどのような役割を果たすのか、きちんと文書化できているかどうかも見極めのポイントになります。
大久保:やはり開発に入る前の段階で適切に見積もりや言語化ができるかどうかが重要、ということですね。
日向野:あとは、質問されたことに対しての回答の質ですね。例えば、Webアプリを発注するとします。リアルタイムなお話ですと、MicroSoft社のInternet Explorerが今年の6月16日にサポート終了になりますが、開発するWebアプリをInternet Explorerで見た場合、どのような表示になるのか、それに付随してGoogle ChromeやSafari、Firefoxだとどのような見え方にになるのか、少し技術的な話になりますが、JavaScriptで実装されたプログラムで動かない機能、箇所などはないか、などこのような質問に対しても、ユーザ目線で考えてしっかりと回答できるかどうか、色々質問を投げかけて確かめてみるといいかもしれません。
大久保:開発会社に依頼したいけれども、低予算で依頼したいとなったときに、気をつけるべきことは何ですか。
日向野:そうですね。先ほどと同じで、最初にイメージをすり合わせておくことですね。
弊社では受付しておりませんが、例えばお客様のご予算の都合で、ノーコードやローコードと呼ばれる開発を採用するケースがあったりします。ノーコードやローコードはプログラムを一から開発するものではなく、汎用的・共通的なテンプレートのようなものを利用しますので、実装したい機能が用意されていなかったり、汎用的な作りなこともあり、データの読み込みが遅いといった技術的な課題を抱えています。
そのため、開発後にお客様から「これだったらやっぱり全部スクラッチで開発したい」と開発の方向転換が入るケースもあります。
そうすると、ノーコード、ローコードで開発した業者側も困惑してしまいますよね。双方が納得できるように、開発方針や進め方、最終成果物のイメージもしっかりとコミュニケーションを取り、開発前の段階から意識合わせすることが重要だと考えています。
⑤エンジニアは随所で専門家に頼る
大久保:開発会社に依頼する場合に、エンジニアの配置についてのポイントはありますでしょうか。
日向野:理想を言いますと、上流から下流まで担当できるフルスタックエンジニアがプロジェクトに参画することです。弊社には上流から下流まで見れるフルスタックエンジニアが多数いるので、そのおかげもあり、大半の開発案件をスムーズにこなすことができていると感じております。
しかし、例えば本当に一部の人しかプロフェッショナルと言えないような専門的なプログラミング言語のスキルなどが必要な場合には、随所で外部の業務委託人材などをチームに引き入れることも重要ですね。
大久保:最低限、上流工程が理解できる人が開発チームにいないといけないですよね。
日向野:そうですね。そこまでは最低限必要です。
⑥社内エンジニアの育成は外部サービスを活用
大久保:社内エンジニアの育成についてはどのようなお考えがありますか。
日向野:そうですね。社内にエンジニア人材がいない場合には、CTO派遣サービスなどを利用して社内にCTO人材を招聘して、その下に新卒エンジニア人材をつけて育てるのもいいですね。エンジニアは、社内に有能なエンジニアがいないと採用しづらいので。
大久保:立ち上げたばかりのスタートアップがエンジニアを採用したい場合には、どのような手段があり得ますかね。
日向野:やっぱり、社長自身がメディアに露出して有名になるのが手っ取り早いんじゃないでしょうか。メディアで見せた社長の人柄やビジョンに共感してくれるエンジニアを採用するのはいい方法だと思います。
大久保:エンジニアならではの採用のポイントを教えてください。
日向野:エンジニアはトレンドのプログラミング言語を使いたがります。今であればPythonやRubyではなく、ReactとかNode.jsとかが人気なので、そうした人気のある言語をサービス開発で採用するといいかもしれません。
あとは、ビジネスサイドの人間と、エンジニアとで話が通じない場合でも、しっかりとエンジニア側に寄り添うことも重要です。わからないなりにもしっかりと寄り添って大切にする姿勢を見せれば、有能なエンジニアもついてくるかと思います。
⑦オフショア利用はよく検討する
大久保:オフショア開発(IT開発の一部業務を海外の子会社や海外サプライヤーなどに委託すること)についてはどのようなお考えをお持ちですか。
日向野:やはり、アプリ開発の場合にはコミュニケーションのズレが発生しないようにすることが重要なので、そうした観点から考えると、オフショア開発は難易度が高いと考えたほうがいいですね。
大久保:最近ですと、ベトナムやミャンマーなどのオフショア開発が盛んとも聞きますが。
日向野:安いからといってオフショア開発を選択するのはよく考えたほうがいいかと思いますね。オフショア開発会社に依頼するにしても、コミュニケーションについて自信を持って任せられるかどうか、事前に確認してみるべきかと思います。
⑧企画構想段階から開発会社を巻き込む
大久保:アプリをスケールさせる開発という文脈で、重要なことは何でしょうか。
日向野:まずはチームビルディングです。何度もお伝えしているように、コミュニケーションが多いと認識のズレが発生します。どんなことであれすぐにコミュニケーションが取れる体制を作れるよう、飲み会でも何でもいいので、最初の段階からコミュニケーションを取りやすいチームを作っておくことが重要です。
当然かもしれませんが、意外とできていないこととして、ニーズがあるサービスを開発することも重要ですね。弊社の場合、新規事業開発を依頼されたらまず、その企画にニーズがあるかどうかの調査をします。
大久保:なるほど。調査をするにしても、発注者側がエンドユーザーのニーズを正しく捉えきれていない場合もありますからね。
日向野:トップダウンでサービス開発が決められているような場合もあるので、そのようなケースではなおさら調査が必要になりますね。失敗しないアプリ開発をするためにも、最初の段階から弊社のような開発会社と一緒に組んで開発したほうが、ニーズとのズレが少なくなって、ヒットするアプリを作りやすくなると思います。
起業家へのメッセージ
大久保:日向野さんは以前、創業手帳のセミナーにお越しいただいていたようですね。ありがとうございます。
日向野:はい。二度参加させていただきました。当時いただいた創業手帳の冊子版は今でも自宅にあります。冊子を見て、冊子に載っているマネーフォワードなどのサービスにも申し込みました。
大久保:お役に立ててよかったです。副業から起業されたようですが、最初から順調だったのですか。
日向野:いえ、やっぱり最初は苦労しましたね。テレアポ営業や手紙営業、営業代行サービスなど、いろいろな手を使って発注元に営業をかけていました。実行できる手段をリストアップして片っ端から試していくなかで、勝ちパターンを見つけていったイメージです。
大久保:今では大手企業のクライアントも多い日向野さんですが、最初は苦労されていたのですね。
日向野:そうですね。ビジネスは最適解がわからないものなので、トライアンドエラーを繰り返して、やり抜くことが重要だと思います。最初からうまくいかなくても、3年くらいは耐えてみるといいと思いますよ。
大久保:本日は数々のヒットアプリを開発してきた現役エンジニア社長GeNEEの日向野さんに貴重なお話を伺えました。