事業運営TwitterFacebookHatena会社で前線でサービス開発や運用に携わって、エンジニアとして技術も経験も積めた。サービス作りに成功したら稼げるし、そろそろ独立に挑戦してみようかな!?サービス作りに挑戦してみたものの、うまくいかない...いったい何がいけないんだろう?こんな方に向けて記事を書きます。ネイチャーエンジニアの亀田です。僕はフリーランスエンジニアとして独立して2年ほど。以下のようなアプリを1人で開発し、配信しています。https://developer.nature-engineer.com/apps僕は会社員で10年ほどエンジニア経験を積み、大きなサービスの開発・運用や、プロジェクトマネジメントにも関わってきました。会社員時代に個人アプリもリリースして、3万ダウンロードほどされた経験がありました。そんなこともあり、独立時は「アプリ作りに時間を集中すれば、それで生活できるようになるのではないか」という甘い考えが。独立後にアプリ配信を開始したものの、ユーザーが継続的に遊んでくれない。その原因は、「エンジニアリングとモノづくりの違い」を理解していなかったこと。これが分かった後、僕はアプリ作りの考えを見直しました。大きなヒットというには程遠いですが、少しずつ改善されたという経験があります。個人サービス開発におけるエンジニアのアドバンテージをお伝えします。サービス開発する時間を短くできるアドバンテージがまだない場合は、アドバンテージを作ろうおわりにプログラミングとモノづくりの違い「プログラミング」と「モノづくり」の違い。実は違いというか、「プログラミング」「エンジニアリング」は、モノづくりの工程の一部です。モノづくりは、「企画」「プログラミング」といった工程を経て、成果物である「コンテンツ」「サービス」が作られます。まとめると、以下のようになります。コンテンツを完成させるだけでは、そのコンテンツを使ってもらうことはできないので、「ユーザーに届ける」「継続的に使ってもらう」ための作業もモノづくりと言えます。それを考えると、以下の業務もモノづくりに含まれていると言えます。・マーケティング・セールス・サポートサービス開発に携わったことがあれば、「当たり前じゃん」と思うかもしれません。理解しているのはうわべのみで、本質的にはわかっていない事もあるように思います。いうより、僕がそうでした。会社で企画が出た時に、「この画面、今風じゃなくない?」プランナーが作るデータを見て、「なんでこんな無駄に複雑に作るの?」なんてことを頻繁に感じていたら、理解できていない可能性があります。会社で開発したサービスがユーザーに使われるのは、ユーザーに有益な何かを与えているからです。それができるのは、あなただけの力ではありません。社内の誰か(複数人)が、いろんな視点でユーザーのことを考えてくれているからです。「常にタイトなスケジュールに追われながら、タスクを終わらせることに頑張っている開発者」ほど、その目線が失われがち。会社では、「スケジュールの厳しいタスクをなんとか終わらせてくれるエンジニアは評価される」んです。「開発効率の悪い仕様にするなあ。実はその仕様、作るのは複雑かもしれないけど、「ユーザー」にとっては大事な要素かもしれません。「UIが古臭くてダサい。イケてる最先端のデザインにすれば良いのに」ユーザーは本当に最先端を望んでいますか?ユーザーが使いやすい画面を考えた上での意見でしょうか?例を2つほど出しましたが、近しい経験はなかったでしょうか?会社では、個人で開発するよりも人的リソースが多いので、役割分担されます。「エンジニアは仕様に合わせて開発」する、とそれぞれのタスクをスペシャリストが対応します。専門家じゃない人も含めてみんなで「企画」「開発」してたら、はっきり言って効率が悪いですからね。極論を言うと、ある程度の規模がある会社では、エンジニアはユーザー目線を持ってなくてもOKなんです。注力した方が評価されるんです。それに対して個人開発の場合は、今まで他の人がやってくれていた「ユーザー目線」が必要になります。これを分からずに会社員感覚でリリースしても、多くの場合、サービスはユーザーに届かないと思います。独立したら自分が他の役割の目線を持たなくてはならない僕が独立後はじめてリリースした時の話です。僕はゲームアプリを作りましたが、そのゲームデータを作った時。1日に平均的に◯回くらい遊んで、平均的にはこれくらいのアイテムを得るはずだから...と計算して、論理的にはそれっぽい形にしてリリースしました。結果、そのゲームの継続率はとても低かったのです。それは、自分がユーザー目線でゲームをやっておらず、理論上の数字のみでゲームを作ったから。その時はリリース後に大幅なバランス調整を何度もしました。データの動きを見ながら、ちょっとずつ試行錯誤して改善することで、少しずつ遊ばれるようになりました。今でも、毎度バランス調整には失敗が多いですが、ユーザーの気持ちを意識するようになったことで、以前よりキャッチアップが早くなりました。このように、個人開発すると、今まで自分が経験していなかったことが見えてきます。上の例では「ユーザー目線」について話しましたが、目線だけでなく「それを形にするスキル」も必要です。「ユーザー目線」を意識することでその画面が良いかどうか判断できるようになったとしても、「ユーザーが良いと思える画面をデザインできるスキル」が自分にあるかどうかは別です。アウトソーシング)を見つけるといったことを考える必要があります。個人サービス開発におけるエンジニアのアドバンテージ今まで述べてきたように、1人開発ではやることも多くなります。エンジニアならではの大きなアドバンテージが2つあります。資金を稼ぎやすいエンジニアは、高収入の仕事を見つけやすいという利点があります。以下の記事でも書きましたが、アプリを作ったとして、いざ世にリリースをしてもすぐに稼げるようになるわけではありません。個人アプリは稼げるか?合計9本のアプリをリリースした開発者の話サービスがユーザーに使われるようになるまでの間の、生活・開発資金が必要です。その点エンジニアは、他の職種に比べて「高単価」な仕事を「見つけすい」です。職種がプランナーだと週5で労働しなくてはならないのに、エンジニアなら週3で可能だったりします。それはすなわち、自分のサービス開発に使える時間が増えるということ。チャレンジして失敗した結果、路頭に迷うリスクも少ない、というアドバンテージがあるのです。サービス開発する時間を短くできるサービスを世に出すにあたって、一番時間(=コスト)が掛かるのはやはり制作工程です。エンジニアであれば、その時間を短くすることができます。バージョンアップに掛かる時間バグ修正に掛かる時間テストの自動化などエンジニア以外の職種で同じことをやった時、かかる時間の差は大きいと思います。逆に開発以外の作業は、できるだけサービス利用やアウトソーシングを考えると良いです。「開発時間の創出」は、それくらい大事なことだから。時間を短くできることの最大のアドバンテージは「チャレンジ回数が増える」こと。サービスを一発で当てることなんて、よほどの運がない限りできません。そのラッキーパンチを継続的に出すなんてほぼ無理です。成功の精度を上げるには、多くの試行が必要なのです。チャレンジ回数を増やせるということは、成功までの時間も短くできるということなのです。アドバンテージがまだない場合は、アドバンテージを作ろう説明してきた通り、エンジニアは個人サービスにチャレンジする上で大変有利。高単価の案件を受注しやすい開発速度が早いと、上記のアドバンテージはより高まります。一定レベルのスキルが身に付いていないエンジニアの場合、これらの恩恵はあまり得られないので注意。いった場合は、まずは会社に勤めながらエンジニアとしての経験を積みつつ、プライベートでサービス作りをやってみるのが良いでしょう。これをすることで、エンジニアとしてのアドバンテージを高めつつ、リスクなくサービス開発の練習ができます。独立に向けて動き出す時は、会社を出る前に以下をしておくと良いと思います。週3日勤務のフリーランスエンジニアがおすすめするエージェントサービス3選おわりに自分のサービスを作るのは、エンジニアの夢ですよね。説明してきた通り、サービス開発で成功するのは難しいし、1人でやるのは負担も大きいです。エンジニアは、大きなアドバンテージがあり、他の職種よりもはるかにチャレンジしやすい職種。今回紹介したことを抑えつつ、チャレンジしてみると、良い経験につながると思います。合わせて以下の記事もどうぞ↓フリーランスになるメリットを知りたい!「エンジニアがフリーランスになるメリット・デメリットおすすめの会計ソフトを知りたい!「確定申告が不安なフリーランスにオススメの会計ソフトfreee【便利な点やプランの選び方を紹介】では、また。恭平@ネイチャーエンジニア全国各地で観察した生き物たちの魅力を、アプリやブログなどで発信中。今まで出会った動植物は「4,500種」以上。仕事スキルアップフリーランス開発お金ツールはてなブログをはじめよう!kkamedevさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。