日記です。ネガティブな内容なので、苦手な方はご注意ください。
時は2017年末に遡ります。あの頃は、私の人生の中でも最も辛い時期でした。ずっと誇りを持っていた技術力が評価されず、ひどく落胆していました。専門家を軽視する社会であることは、薄々気づいてはいましたが、まさか、かつては外から羨望の眼差しを向けていた会社が、入ってみたら政治まみれだなんて、夢にも思いませんでした。当時の私の精神状態は非常に危険な状態にありました。幸いにも、親身になって支えてくれる人たちがいてくれたおかげで、何とか乗り越えることができました。そうでなければ、今こうして文章を書いていることもなかったかもしれません。
数年間にわたる、楽しくない社会人生活を経て、私は2つの選択肢があることに気づきました。
1は不可能でした。前の会社で半年ほど頑張ってみましたが、精神科に通う羽目になってしまったからです。残された道は、2か3だけでした。そして、私は3を選びました。この選択の裏には、大それた野心があったわけではありません。当時の私は、すべてに絶望し、職場環境にも失望しきっていたため、ほとんど夢物語のような選択肢を選んだまでです。
最初は、やる気に満ち溢れていました。これまでの会社では、自分のアイデアを実現することができなかった反動もあったのかもしれません。まるで渇望していた野獣のように、コーディング魂がメラメラと燃え上がり、自分のためにプログラムを書く喜びを渇望していました。「毎朝、君を起こすのは目覚まし時計ではなく、夢だ」。あの頃の私は、まさにそんな感じでした。毎日、規則正しくも充実した日々を送っていました。朝は、朝食と50嵐の紅茶(甘さ控えめ、氷少なめ)を買ってからコーディングを始め、5、6時間後に夕食休憩を挟んで、またコーディング。疲れたら夜食を食べながら、翌日のTo Doリストを作成し、就寝。お金がない以外は、まさに夢のような生活でした。
しかし、事態は徐々に、そして良くない方向へと変化していきました。独立開発の初心者である私は、「いかに素晴らしいプログラムを書くか」ということばかり考えていました。ターゲットユーザー、市場調査、競合分析、MVP(Minimum Viable Product)、早期リリースといったビジネス的な観点は、全くと言っていいほどありませんでした。そして、1、2ヶ月後、私は自分が泥沼にはまっていることに気づきました。コーディングしすぎていたのです。頭の中には常に様々なアイデアが浮かび、そして、どれも実現したい(そして、残念ながら実現できてしまう)と思ってしまい、プログラムはどんどん肥大化し、機能は複雑化し、コーディングすべき量は増える一方でした。私の完璧主義的な性格は、この時ばかりは裏目に出てしまい、意味のないエッジケース(例えば、「ユーザーが100万個のフォルダを持っていたらどうしよう?」「同じ場所で100万枚の写真を撮ったらどう処理する?」など)について延々と考えてしまう原因となりました。始めた頃と比べると、物事はあまり楽しくなくなってきていました。
To Doリストは増え続け、精神的にも疲弊していた私は、自分にご褒美を与えることにしました。週休二日制を導入することにしたのです(そう、それまでは、ほぼ毎日働いていました)。これは良い決断のように思えました。しかし、私は自分の意志の弱さを過大評価していました。ダラダラと一日を過ごす快楽を味わってしまうと、もう後には戻れません。私の休日は、当初の土日から、金土日、そして金土日月と、どんどん増えていきました。一日の作業量も減っていき、一日中コーディングしていても、数十行も書かないことも珍しくありませんでした。この感覚は本当に最悪でした。何もしていないのに、やらなければならないことが終わっていないという焦燥感に駆られながらも、前途は長く、ゴールも見えないため、なかなかやる気を出せませんでした。私が作ったものを、誰か使ってくれるのだろうか?お金になるのだろうか? これらの努力は、本当に報われるのだろうか? 私は、怠惰と迷走の負のスパイラルに陥っていました。
さて、実はこの写真は帰りの飛行機で撮ったものなのですが…
幸運なことに、事態は好転しました。年末に日本へ旅行に行ったのです。これは、退職前に予約していた休暇でした。今回の旅行は、以前とは違っていました。あえて、ゆったりと、行き当たりばったりの旅程を組みました。例えば、大津と日野(1日にバスが4本しか来ない場所)へ「中二病でも恋がしたい!」の聖地巡礼に行ったり、Macを持って京都の様々な寺院に行ってコーディングしながら打卡したり、とある科学の超電磁砲のカフェに行って韓国人の女の子に声をかけたり、橋の下でホームレスの気分を味わってみたり(結論:公園の方が断然快適です)…と、まあ、簡単に言うと、完全に羽目を外した旅でした。
この旅のおかげで、私は心身ともにリフレッシュすることができました。そして、再びコーディングを再開しました。違うのは、独立開発者に関する記事やフォーラムを読み漁り、先輩方がどのように生きて、どのように死んでいったのかを調べるようになったことです。いくつかの経験談を吸収した後、私は自分自身に目標を設定しました。年末年始の休暇中に、最初のリリース版を公開することです。
最初のリリース版の成果は上々でした。私は、PTTに自分のプロダクトを紹介する記事をいくつか投稿したところ、好評を博しました。そこで、私は次のステップに進むことにしました。就職活動です。当時の私は、こう考えていました。安定した収入を得るためには、仕事が必要です。しかし、私のプロダクトの中には、就業時間外に完成させることが不可能な部分があります。そこで、集中して取り組む必要のある必須機能を完成させながら、就職活動を行い、就職後も、余裕があれば、その他の機能を実装していこうと考えたのです。この計画自体は、今でも間違っていなかったと思っています。しかし、1つだけ計算違いがありました。私は、またしても自分の精神力を過大評価していました。就職活動とコーディングを両立できると考えていたのです。
いやもう、本当に酷かった。こっちが面接官か?ってレベルで無能な奴が偉そうにふんぞり返ってたり、専門知識ゼロのど素人に人生決められそうになったり。マジでふざけんな、悲しくなるわ。「専門知識?知らんがな」って社会、マジ勘弁。この1ヶ月以上、就活する度にこの絶望的な現実に叩きつけられて、心が折れそうだった。エンジニアとしての作業?当然のように止まったわ、OMFG。
でも、諦めかけてた時に奇跡的に出会えたんだ。見た目は超怪しいんだけど、中身はまともそうな会社に。そこで自分のスキルを証明したら、社長がちゃんとリスペクトしてくれて、色々融通も利かせてくれた。おかげで、また開発に集中できるようになった。
色々あったけど、もう二度と繰り返したくない失敗をまとめた。
最近は、仕事、個人開発、プライベートのバランスを取るために、関連書籍を読み漁ってる。俺はインディーデベロッパーと呼べるのか? 正直まだわからない。だから、「目指して」って言葉を使ったんだ。先は長いし、この道が正しいのかも、ゴールにたどり着けるのかもわからない。ただ、健康な体で、一歩ずつ進んでいきたい。インディー開発については、まだまだ話したいことは山ほどあるけど、それはまた今度、プロダクトが形になってからにする。こんな私の日記みたいな文章を読んでくれてありがとう。少しでも参考になれば嬉しい。
最後に、ちょっと笑える話を。就活中、履歴書に「インディーデベロッパー」って書いて応募したら、ある日「外資系ヘッドハンター」を名乗る奴から電話がかかってきて、「今、インディーで働いてるんですか?」って真顔で聞いてきた時は、さすがに吹いたわ。