👻

個人開発7年目、現在までの失敗を振り返ってみる。

2024/03/20に公開

学生時代から個人開発を続けていて、気づいたら7年目になってました。
これだけ続けてますが、個人開発は常に赤字で、なにも成功してません。
これは、法人成りしたフリーランスエンジニアの過去を振り返る記事です。

自己紹介

僕は「nir」というハンドルネームでインターネットに生息してます。
X(Twitter)を見ればある程度の人柄は伝わると思います。
日々くだらないことや、役に立たないことばかり呟いてます。
https://twitter.com/nir_nmttg

今までに作ったサービスたち

VOICE DB (2018年〜2020年)

ユーザー投稿型のレビューサイトです。
元々ブログを運営していたこともあって「みんなが投稿したら儲かるのでは??」という浅い考えで企画しました。
学生時代に友人に協力してもらいながらリリースしたサービスで、このサービスの開発と同時にGitHubを使い始めました。
自分で購入した商品のレビューを投稿したり、メーカー様から提供いただいた商品を自分で使ってレビュー記事を投稿していたのは良い思い出です。

使用技術

  • Ruby on Rails (5.2)
  • SendGrid
  • ムームードメイン
    • DNS
  • GCP
    • GCE
    • Cloud SQL

クローズした理由

  • 投稿者が集まらなかった

Crover (2019年〜2021年)

クリエイターが自分の作品を投稿できるオンラインポートフォリオサービスです。
リッチテキストエディタで自由度高くコンテンツ投稿できるのが特徴です。
アップデートでクリエイターを応援できる仕組みを導入したのですが、誰にも使われなかった悲しい思い出があります。

使用技術

  • Ruby on Rails (5.2 → 6.0)
  • 自作フロントエンドライブラリ
  • SendGrid
  • Stripe
    • Checkout
  • GitHub Actions
  • ムームードメイン → Google Domains
    • DNS
  • GCP
    • GCE → GKE → GAE Flexible Edition
    • Cloud SQL
    • Cloud Storage
    • Cloud Build
  • Docker

クローズした理由

※このサービスはクローズではなく、2021年にStackfolioというサービスにリニューアルしました。


REPOT (2020年)

とある配信者さんが「画像とテキストを気軽に募集できるサービス見つからなかったんだよね〜」と言ってたのをキッカケに、3日で開発したサービスです。
リリース後、配信者さんにDMで「作りましたよ!」と連絡して使っていただいたのですが、今思えば迷惑でしかなかったと思うので反省してます...

使用技術

  • Ruby on Rails (5.2)
  • 自作フロントエンドライブラリ
  • SendGrid
  • Heroku
  • Google Domains
    • DNS
  • GCP
    • Cloud Storage
  • Docker

クローズした理由

  • 元から長期間運営するつもりはなかった
  • ユーザーが定着しなかった

hometter (2021年)

テキストを合成した表彰状のOGP画像を作成できるサービスです。
暇だったので、1日で開発した記憶があります。
リリース後に似たようなサービスが存在することを知って「これいらないじゃん...」と思い、サイレントクローズしました。

使用技術

  • Ruby on Rails (6.0)
  • React (17)
  • Heroku
  • Google Domains
    • DNS
  • GCP
    • Cloud Storage
  • Docker

クローズした理由

  • これいらないじゃん...

Stackfolio (2021年〜2024年)

2019年にリリースしたCroverのフロントエンドをフルリプレイスしたサービスです。
自作ライブラリからReactに移行しただけでなく、デザインやレイアウトにも大幅な変更を加えて、テーマとしてグラスモーフィズムを採用しました。

使用技術

  • Ruby on Rails (6.0 → 6.1)
  • React (17 → 18)
  • SendGrid
  • Stripe
    • Checkout
  • GitHub Actions
  • Google Domains
    • DNS
  • GCP
    • GAE Flexible Edition → Cloud Run
    • Cloud SQL
    • Cloud Storage
    • Cloud Build
  • Docker

クローズした理由

  • 魅力的な競合サービスの乱立
  • 投稿者が集まらなかった

Asked (2021年〜2023年)

新しいサービスを開発するたびにFAQページを実装するのを面倒に感じてました。
そこで、FAQページを作成する機能をWEBサービスとして切り出したのがこれです。
自分で使うために開発したので、2023年までメンテナンスだけやって放置してました。

使用技術

  • Ruby on Rails (6.1 → 7.0)
  • React (17 → 18)
  • SendGrid
  • GitHub Actions
  • Google Domains
    • DNS
  • GCP
    • Cloud Run
    • Cloud SQL
    • Cloud Storage
    • Cloud Build
  • Docker

クローズした理由

※このサービスはクローズではなく、2023年にAsked Q&Aというサービスにサイレントリニューアルしました。


Ephemera (2023年)

OGP画像にテキストを表示できるサービスです。
気が向いたので、数日間の隙間時間で開発しました。
生成から24時間が経過すると、OGP画像のテキストが「This post has been deleted.」という表示に自動的に変わります。

使用技術

  • Ruby on Rails (7.1)
  • Next.js (14.0)
  • Cloudflare
    • DNS
    • WAF
  • GCP
    • Cloud Run
    • Cloud SQL
    • Cloud Storage
    • Cloud Build
  • Docker

クローズした理由

リリース後のエゴサで「同じ名前の似たようなコンセプトのサービス」があることを知って、そっとサービスをクローズしました。
偶然って怖いですね。


Asked Q&A (2023年〜現在)

自分用に運営していたAskedをSEOに強い名前に変更してリニューアルしたサービスです。
現在の知識でサービスのデザインや設計を見直したことで、偶然ユーザーが増えてしまい、それがキッカケでしっかり運営していくことを決めました。

https://asked.page

使用技術

  • Ruby on Rails (7.0 → 7.1)
  • Next.js (13.1 → 14.0 → 14.1)
  • GraphQL
  • SendGrid
  • GitHub Actions
  • Cloudflare
    • DNS
    • WAF
  • GCP
    • Cloud Run
    • Cloud SQL
    • Cloud Storage
    • Cloud Build
  • Docker

余談と気づきと反省。

現在の知識でサービスのデザインや設計を見直したことで、偶然ユーザーが増えてしまい、それがキッカケでしっかり運営していくことを決めました。

偶然とは書いてますが、デザインや設計を見直した結果を判断するために少しだけ広告を使ってみたんです。
そしたら、早い段階でビジネスで使ってくれるユーザーが数名ほど現れて、「もしかして、意外と需要ある??」と感じ始めました。
それと同時に、「なるほど、自分から行動しないとダメだったんだ...」と、過去の自分の愚かさを認識しました...


なぜ7年間も継続して成功できないのか?

成功の定義は人それぞれだと思いますが、この記事では黒字化を成功の基準とします。
黒字化にはユーザーが必要で、ユーザーがいるからこそサービスに価値が生まれます。
ここまで読んでくれた皆さんなら既に気づいてるかもしれませんが、作ることばかりに集中して、集客のやる気がなさすぎました。

  • 良いサービスを作ったら成功する
  • 面白いサービスを作ってバズれば勝ち
  • 公開しておいたら誰かが見つけてくれる

ずっとこればかり考えて開発してました。
でも、これだけで成功するには運の要素が大きすぎるんです。

エンジニアをしていると 「開発して公開することがゴール」 と考えてしまいがちですが、
ビジネス的には 「公開した時点がスタートライン」 ということに 7年かけて やっと気がつきました。
知ってはいたけど理解できてなかったという表現が正しいかもしれません。

別界隈のことではありますが、
VTuberがよく口にする 「見つけてくれてありがとう」
この言葉の意味がやっとわかった気がします。
見つけてもらうための努力と、見つけてくれたユーザーに対する価値の提供
大事なのはこれだったんだなぁ...と。

最後に

これらの失敗を踏まえて
見つけてもらうために
インターネットでのアウトプットを増やしてみることにした結果
この記事が生まれたってわけ。

今後は個人開発の経験や失敗について、もう少し具体的な記事を書いていこうと考えてます。

Discussion