My Second Year as a Solo Developer

Michael Lynch

ソロ開発者としての2年目

ソロ開発者としての2年目(カバー画像)

2年前、私は自分のソフトウェアビジネスを立ち上げるため、Googleでの開発者の仕事を辞めました。1年後には、収支や幸福度、学んだ教訓について近況を投稿しました。そして今日で2年目が終わりますので、再び近況をご報告します。

収支の内訳

項目2018年2019年増減
売上$2,262$7,254+$4,992 (+220%)
経費$23,133$9,657-$13,477 (-58%)
純利益-$20,871-$2,402+$18,469 (+88%)

2年目は財務面で大きく改善しました。利益は1万8,469ドルも増えました!

合計では依然として赤字ですが、そこはあまり気にしないでください。売上は3倍の7,254ドルになり、経費は半分以下に削減できました。

なぜ赤字を続けられるのか

長期にわたって赤字が続いていることに、戸惑う方は少なくありません。赤字の事業は副業で賄っていると思われがちですが、実際には稼働時間の100%を、まだ儲かっていない自分の事業に充てています。これが成り立っているのは、主に次の3つの理由からです。

  • 支出が少ない:子どもはおらず、物価の安い地域に住んでいるため、生活費は月2,000ドル程度です。
  • 貯蓄がある:大手ソフトウェア企業で11年働けば、ある程度の蓄えができるものです。
  • 投資が好調だった:キャリアを通じて、資金の大部分をS&P 500で運用してきましたが、ちょうど相場が大きく伸びた時期にあたります。少額で賭けていた暗号資産(cryptocurrency)もうまくいきました。

プロジェクトごとの振り返り

Zestful

Zestfulのウェブサイトのスクリーンショット

Zestfulはレシピの材料を解析するSaaSです。

Zestfulは2018年半ばに、初めてのSaaS(Software as a Service)ビジネスとして立ち上げました。食品関連アプリがレシピの材料の構造を認識できるようにするサービスです。たとえば「2 1/2 tablespoons finely chopped parsley(細かく刻んだパセリ 大さじ2と1/2)」という材料があれば、Zestfulは2.5が数量、tablespoonsが単位、parsleyが食材、finely choppedが下ごしらえの手順であると推論します。

昨年は文字通り売上ゼロでしたが、2019年はようやくまとまった売上が出ました。12月の1件の大口販売だけで年間売上の79%を占めています。その1件は、私の全事業の年間売上の53%にもあたります。

収支項目2018年2019年増減
売上$0$5,022+$5,022 (+inf%)
サーバー費-$164-$80-$84 (-51%)
ドメイン料$-50-$12-$38 (-76%)
ロゴデザイン$-200$0-$200 (-100%)
開発費-$7,440$0-$7,440 (-100%)
純利益-$7,854$4,930‬+$12,784 (+162%)
Google検索結果におけるZestfulの表示のスクリーンショット

検索結果でZestfulの露出を保つための取り組み

Zestfulは奇妙な立ち位置にあります。すでに材料解析を自前で行っている企業は、Zestfulに乗り換えようとしません。新しいAPIへ移行するコストが、価格や性能の改善によるメリットを上回ってしまうからです。実際、Zestfulの顧客はすべて、新規プロダクトをこれから作る企業ばかりです。

まだ存在すらしていない企業に、どうやって売り込めばよいのでしょうか。私の戦略は検索エンジン最適化(SEO)に投資し、「ingredient parsing(材料解析)」のようなキーワードでZestfulが上位に表示されるようにすることでした。

Is It Keto

Is It Ketoのウェブサイトのスクリーンショット

Is It Ketoはケトジェニック・ダイエットの実践者向けのリファレンスサイトです。

Is It Ketoでは、どの食品がケトジェニック・ダイエットに適しているかを、読者に分かりやすく端的に伝えます。収益はGoogle AdSenseのディスプレイ広告と、サイト経由のAmazon購入によるアフィリエイト報酬から得ています。

収支項目2018年2019年増減
ページビュー16,208521,913+505,705 (+3,120%)
収録食品数53202+149 (+281%)
Amazonアフィリエイト収益$1$1,315+$1,314 (+131,400%)
Google AdSense収益N/A$940+$940 (+inf%)
ミールプラン売上N/A$24+$24 (+inf%)
記事執筆費$0-$3,845+$3,845 (+inf%)
SNS運用費$0-$314+$314 (+inf%)
グラフィックデザイン費-$211-$163-$48 (-23%)
開発費-$1,660$0-$1,660 (-100%)
サーバー費$0-$103+$103 (+inf%)
ドメイン料-$12-$12-
純利益-$1,882-$2,158-$276 (-15%)

売上2,279ドルで、Is It Ketoは2019年で2番目に売上の大きいプロダクトでした。4月に一度は運営を中断しましたが、放っておいても勝手に成長していたことに気づき、4か月後に戻ってきました

Is It Ketoの月別ページビューの推移を示すグラフ。毎月増加し8月に横ばいになります

Is It Ketoの月別トラフィック

Is It Ketoの訪問者の88%は検索エンジン経由ですが、検索トラフィックの増減と、自分がサイトに加えた変更との関係は一度も掴めませんでした。大量にコンテンツを追加し、ページタイトルを最適化し、上位サイトからの被リンクを獲得した月でも、トラフィックは横ばいのままでした。逆に、何か月も放置していた時期に、Googleからの流入が伸び続けたこともあります。

Is It Ketoは最も経費がかかったプロジェクトでもあり、執筆の多くを外注したためです。ライターの採用やマネジメントの経験がなかったため、必要以上にコストがかかってしまいました。ただ、この経験から多くを学べたおかげで、ほとんど読まれてはいませんがライター採用ガイドを書くことにもつながりました。

mtlynch.io (このブログ)

指標2018年2019年増減
ページビュー981,587273,817-707,770 (-72%)
アフィリエイト収益$1,244$374-$870 (-70%)
開発費-$3,896-$460-$3,436 (-88%)
イラスト費-$599-$769+$170 (+28%)
サーバー費-$309-$150-$159 (-51%)
Grammarly(文法・スタイルチェックサービス)-$140-$140-
編集費-$75-$60-$15 (-20%)
ドメイン料-$60-$60-
純利益-$3,835-$1,265+$2,570 (+67%)

ページビューは大幅に減少しましたが、これは想定内です。Googleを辞めたときの投稿が2018年に50万ページビューを集めたので、同じような大ヒットは期待していませんでした。

それでも、昨年は読者を見つけるのに苦労しました。前の2年間は、あまり積極的に宣伝しなくても多くの投稿が自然と広まりました。記事を書いてから、それを喜んでくれそうなコミュニティを探して共有するというやり方でした。

2019年はテクニカルな記事から離れ、自己資金でビジネスを運営する苦労に焦点を当てるようになりました。ブートストラップ起業家向けのオンラインコミュニティは数多くありますが、自己宣伝ばかりが集まるため、外部ブログへのリンクは歓迎されにくい雰囲気があります。また、ビジネス上の教訓は、数千ドル規模の金額が絡まないと読者の関心を引かないことにも気づきました。大きく稼いでも大きく損しても、どちらも注目されるようです。

ブログの収益も減りましたが、そもそもこのブログで積極的に収益化しようとしていないので問題ありません。開発費が大幅に下がったのは、サイトを担当してくれていたフリーランサーが本業に注力するようになったためです。代わりの人を雇うのではなく、この2年でWebプログラミングのスキルが上がったこともあり、自分で開発を引き継ぎました。

What Got Done

What Got Doneのウェブサイトのスクリーンショット

What Got Doneは作業ログアプリです。

What Got Doneは、週ごとの仕事の成果を記録・共有するためのツールです。Google在職中に学んだ手法がベースになっており、ここ10か月、毎週自分の進捗を記録するのに使っています。

収支項目金額
顧客インタビュー-$31
ドメイン料-$12
純利益-$43

What Got Doneが素晴らしいビジネスアイデアだと思ったことは一度もありません。ただ、Is It Ketoで何か月も収益化に失敗したことで気が滅入っていたのです。What Got Doneは気分転換になる楽しいプロジェクトに思えましたし、人気のWebフレームワークであるVue.jsを学ぶ機会にもなりました。

そしてそれは成功でした。私はVueが大好きになりました。漏れのある抽象化の迷路で苦しむことなく、素早くウェブサイトを構築できるツールをようやく見つけたのです。

せっかく作るなら、収益化の可能性も探ってみる価値はあると考えました。数社にインタビューしたところ、マネージャーたちは専用のSlackチャンネルで同じことが実現できると感じているようだったので、このプロジェクトからは手を引くことにしました。

その他

経費目的金額
カンファレンスネットワーキング・研修-$2,182
Xero記帳-$151
BenchからXeroへの移行(フリーランス会計士)記帳-$232
CircleCI継続的インテグレーション-$350
Coverallsテストカバレッジ計測-$270

カンファレンスは大きな出費でした。旅費や宿泊費が高くつくうえ、登壇が決まったのは地方開催のイベントで、旅費補助の予算がほとんどなかったからです。

継続的インテグレーションをTravisからCircleCIに切り替えたことで、月68ドルの削減になりました。しかもCircleCIはとても気に入っています。プロダクトの改善が速く、Dockerとの連携も優れているからです。Coverallsは意識しないうちに自動更新されてしまいました。初期段階のプロダクトではコードカバレッジの指標はあまり意味がないと割り切り、翌年分は解約しました。

記帳も、Benchの代行サービスからXeroのセルフサービスに切り替えました。Benchは気に入っていましたし、Xeroが特に好きなわけでもありませんが、財務がシンプルで毎回同じような内容なのに、コンシェルジュ型の記帳に年1,500ドルも払うのは正当化しにくいと感じたからです。

学んだ教訓

誰も買わなくても、値上げする

今年受けたアドバイスの中で最も良かったものの一つが、Cory Zue氏からのものでした。1リクエストあたり0.003ドルというZestfulの価格は安すぎると指摘されたのです。当時、Zestfulの有料ユーザーはほぼゼロでした。誰も買っていないのに、価格が安すぎるなんてことがあるのでしょうか。

Zestfulには実際の顧客は少なかったものの、見込み顧客はたくさんいました。数週間おきに新しい企業から連絡があり、Zestfulに興味はあるが、どうしても必要な小さな機能が一つ足りないと言うのです。初めての大口顧客を獲得したい一心で、私は彼らの要望する機能を必死に実装しました。そして1週間後、誇らしげにそれを届けるのです。

すると彼らは気まずそうにこう答えるのでした。「ああ、その件は、結局見送ることにしたプロジェクトの話だったんです」

企業側は機能を要望するのに何のコストもかかりませんが、私にとっては打ち合わせや実装に膨大な時間がかかりました。何が起きているかは分かっていましたが、止め方が分からなかったのです。要望を無視するという手もありましたが、もし本当に毎月数千ドル払うつもりだったらどうしよう、と考えてしまいました。

Cory氏のアドバイス通りに値上げすると、会話の流れが予想外の形で変わりました。0.003ドルのときは、誰も価格交渉をしてきませんでした。6.5倍の0.02ドルに跳ね上がると、途端にみんなボリュームディスカウントを求めてくるようになったのです。そして、例の「その機能があれば買う」という話になったとき、私はこう返すようにしました。

いいですね!では3か月分の料金を前払いしていただければ、その機能が使えるようになるまで課金は開始しませんので。

それ以来、機能要望で痛い目を見ることはなくなりました。

今の価格では、Zestfulを使うのに毎月数百ドルかかるため、月5ドルのために必要だという“超重要”な機能を延々と語る人は減りました。興味深いことに、最終的にエンタープライズプランを購入してくれた顧客は、機能要望を一切出さず、契約は数日でまとまりました。

正しいアイデアを追うことは、間違ったアイデアを捨てること

起業1年目の私は、転がってきたボールは何でも追いかける子犬のようでした。あるプロジェクトが伸び悩むと、頭の中のキューにあった次のアイデアにすぐ取りかかるのです。手早くプロトタイプを作るのは安くて簡単なことのように感じますが、実際にはコーディングに何週間もかかり、その後は顧客開拓に何か月も費やすことになります。

友人のDavid Toth氏から、アイデアを絞り込むことの大切さを学びました。どのアイデアを追うかによって、少なくとも数か月間の生活の大部分が決まるのだから、慎重に選ぶ価値があるというのです。David氏は最初に思いついた良いアイデアにすぐ飛びつくのではなく、少なくとも10個のアイデアがリストアップされるまで出し続けます。そしてそのリストを注意深く評価し、最も成功する可能性が高いものを選びます。

Start Small, Stay Small読書メモ)やThe Mom Test読書メモ)を読んだことも、新規事業への向き合い方に影響を与えました。どちらの本も、まず市場調査から始め、プロダクトは後から作ることを勧めています。その結果、何かを作ることには慎重になり、調査の結果、そのアイデアが最善の選択ではなくなったと分かれば、撤退してもよいと自分に許可を与えるようになりました。

もっと大きく振る

昨年、月500ドルの売上を目標に掲げたとき、もっと高い目標にすべきだと言う人もいました。新規事業は失敗する確率が高いのだから、どうせなら月を狙うくらい大きく構えるべきだというのです。

振り返ってみても、月500ドルという目標は妥当だったと思っています。Is It Ketoは仕組みがとてもシンプルで、「初心者向けビジネス」としてうってつけでした。広告とアフィリエイトで、訪問者1人あたり平均約0.01ドルの収益が生まれます。訪問者が増えれば収益も増えるため、価格設定やセールスファネル、カスタマーサポートなどを気にせず、さまざまなグロース施策を試すことができました。売上がわずか月1ドルというところから始まり、毎月50〜150%ずつ伸びて年末には月400ドルに達するのを見るのは、とてもやりがいがありました。

一方で、低マージンのビジネスの限界も見えました。顧客1人あたりの収益が1セントでは、拡大のための手段のほとんどが使えません。1クリック0.50〜1.50ドル払って広告を出しても、訪問者が生む収益が0.01ドルでは割に合いません。サイトの成長を手伝ってくれる人を雇いたい気持ちはありますが、月200ドルの安いフリーランサーでも、コストを正当化するにはトラフィックを2倍にしなければなりません。

起業3年目を迎える今は、もっと大きな賭けに出る準備ができています。Is It Ketoを成長させたことで、自分をさらに追い込む自信がつきました。それは、成功すればパートタイムの外注メンバーを2人ほど雇えるようなプロジェクトに挑戦するということです。

それでも、この働き方が大好きです

この2年間ずっと赤字だと知ると、恵まれたGoogleの仕事を辞めたことを後悔しているのではないかと心配する人もいます。起業家が1〜2年で燃え尽きるのはよくあることですが、幸い私はそうなったことがありません。これは、冒険の始まりに抱いていた健全な自己不信のおかげだと思っています。しばらくは失敗が続いてから成功するものだと覚悟していたからです。また、お金が底をつく心配がなければ、資金面のストレスを感じずに済むのも大きいです。

毎朝、階下に降りてガールフレンドとゆっくり朝食をとります。私たちは行き止まりの通りの突き当たりに住んでいるので、彼女が仕事に出かけると、家の中は完璧に静かになります。60〜90分ほど文章を書いた後、その日の残りの予定を立てます。夕食後や週末は働きません。午後3時に眠くなったら昼寝をしますし、上司がどう思うかなんて気にする必要もありません。

辞める前、最も憧れていたのは、このライフスタイルがもたらす完全な自立でした。それは想像していた通りの満足感があります。一日の過ごし方を完全に自分で決められること、事業の方向性をがらりと変えたり、必要だと感じたらゼロからやり直したりする自由が、本当に気に入っています。

この生活をずっと続けたいと思っています。

目標の自己採点

昨年の近況報告では、1年間の目標を4つ掲げました

事業全体で月500ドルの売上を達成する

評価:B+

年間平均で月604ドル、第4四半期では月1,657ドルだったので、形式的にはこの目標は達成しました。ただ、12月の突出した大型案件を含めるのは、少しずるい気もします。それを除けば12月の売上は441ドルで、2020年初頭まで続くであろう本来のトレンドに近い数字です。500ドルにはわずかに届きませんが、満足できる結果です。

ソフトウェアカンファレンスで3回登壇する

評価:A

3つのカンファレンスでプロポーザルが採択され、どの発表にも満足しています。

カンファレンス私のメモ発表
NERD Summit-「Modernize any Codebase through Tooling and Technique」
PyTexas 2019メモ「Why Good Developers Write Bad Tests」
PyGotham 2019メモ「Why Good Developers Write Bad Tests」

カンファレンス自体は楽しめますし、参加することで役立つ情報も得られますが、正直なところ、仕事や私生活に大きなプラスがあったわけではありません。移動、発表準備、当日の参加を合わせると、カンファレンス関連で6〜8週間分のフルタイムの作業時間を費やしました。

2020年も引き続き応募し参加するつもりですが、昨年よりは厳選しようと思っています。

ブログ記事を12本公開する

評価:B

数え方にもよりますが、2019年に公開したブログ記事は9本とも13本とも言えます。ブログの更新自体は9回でしたが、そのうち1回がライター採用についての5回シリーズだったからです。全体としては今年の執筆には満足していますが、もう少し多くの記事が広まってほしかったという思いもあります。

JavaScriptフレームワークに習熟する

評価:A

Vueのエキスパートとまではいきませんが、「日常会話ができる」くらいのレベルにはなれたと思っています。フレームワーク自体で詰まることなく、素早くサイトを構築できるようになりました。

何年もAngularで壁に頭をぶつけ続けた後、ソロ開発者に合ったフレームワークにようやく出会えて、本当に嬉しく思っています。

次にやること

来年の大半をかけて取り組みたいと考えているのが、数週間前に立ち上げたWanderJestというウェブサイトです。

WanderJestのウェブサイトのスクリーンショット

WanderJestはライブコメディの公演を探すためのサービスです。

地元のコメディ公演を探すのは簡単ではありません。情報がFacebookグループやコメディクラブのウェブサイト、TicketMasterやEventbriteのようなチケット販売サイトに散らばっているからです。WanderJestでは、これらのバラバラな情報を一つにまとめ、観客が公演を見つけやすくしたいと考えています。簡単に言えば、Bandsintownのコメディ版というイメージです。

現在は地元であるマサチューセッツ州西部で試験運用していますが、すぐに他地域にも拡大する予定です。

3年目の目標

ソロ開発者3年目に達成したいことは次の通りです。

  • 事業全体で2万ドルの売上を達成する。
    • 2019年に売上を3倍にしたので、2万ドルはさらに3倍にすることを意味します。
  • ブログ記事を10本公開する。
    • 月1本程度のペースで、長めの記事やカンファレンス発表の準備期間も確保できる余裕を持たせた目標です。
  • 新しい技術を一つ学ぶ。
    • まったく新しい言語やフレームワークを学ぶと、ソフトウェア全般についての考え方が磨かれることが多く、Rustを学ぶ口実を探していたところです。

カバーアート:Loraine Yow氏。GoのゴーファーはRenee French氏のデザインを基にしています。

原文は Michael Lynch により に公開されました。

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。