2024.10.01
自社の社内情報を未来の“ゴミ”にしないための備え 「情報量が多すぎる」時代がもたらす課題とは?
個人開発がおすすめな理由(全1記事)
リンクをコピー
記事をブックマーク
名人氏:タイトルは「個人開発がおすすめな理由」というところで、株式会社NoSchoolでCTOをしている名人という者ですが、発表します。お願いします。
目次です。自己紹介と、私が個人開発しているツールを話したあとに、おすすめな理由を6つほど用意してきたので、それを話す感じで発表をしていきます。
最初に軽めに自己紹介をします。名人というハンドルネームで「Twitter(現X)」や「Zenn」で記事を書いているので、良かったら見てもらえたらうれしいです。ふだんはオンライン家庭教師「マナリンク」という家庭教師のサービスを開発している株式会社NoSchoolでCTOをしています。個人開発で「テストメーカー」というサービスを作っています。
好きな言語はTypeScriptで、好きな麻雀の役は七対子です。趣味は将棋、カメラ、ラム酒、個人開発、筋トレです。お願いします。
最初に自分が個人開発しているサービスを軽く紹介できればと思います。テストメーカーというサービスで、もし興味がある方がいたらググったりしてもらえると出てくるかなと思います。
2021年ぐらいに開発し始めて半年ぐらいでリリースしたやつで、今は累計で14,000アカウントぐらい登録してもらっている感じです。
「文章をそのまま穴埋め問題にできる」というコンセプトのツールを作っています。「技術的な話で興味あるよ」という方がいたら、「Zenn テストメーカー」と検索をしてもらえると、いい感じのが見つかるかなと思います。
ちなみにテストメーカーは人生で10個目ぐらいの個人開発で、過去にもいろいろと作ったことがあるのですが、だいたいスベっている感じです。
せっかくなので操作動画を見てもらえると良いかなと思います。(画面を示して)こんな感じで文章を入力したら、そこからそのまま問題ができて、選択問題を作れたり、解答モードに移ったら解答できるようなツールです。「トランペット」と打って、採点したら結果が出るみたいなツールを作っています。
あとは、リリースした時に取材も受けたりして、貴重な経験ができている感じの人です。
こんな感じで個人開発を1年半ぐらいやっている自分から、個人開発がおすすめな理由を発表していけたらと思います。
1つ目が、使ってみたい技術を試す場になるところです。これはすごく月並みな話ですが、個人開発は意思決定者が自分なので「使ってみたいから」という理由で技術導入ができます。
テストメーカーの場合は、これは本当にアレなんですが、意味もなくi18n対応しました。国際化対応は、本来はそういうサービスに関わらないとやることはないと思うんです。
だけど、知り合いの方と話していて「名人さんはi18nをやったことあります?」みたいなことを聞かれて、「i18nはないですね」みたいな話になり、ちょっと悲しかったので、テストメーカーでやるかという感じで入れました。
その時の話の内容があとからわかってうれしかったというか、やって良かったなと思いました。
あとは、既存サービスをあとから国際化対応するのはメチャクチャだるいなという感覚を得られて良かったなと思っていて、こういうことが経験できるのは良いところかなと思っています。
2つ目は不確実性に投資できるところです。これはどういうことか、独特な表現かなと思います。自分は今エンジニアになって7、8年ぐらい経つんですが、エンジニアは経験を積めば積むほど、より確実にリターンが得られる手段を選ぶ傾向にあるかなと思います。
例えば、自分がReactをメチャクチャ経験したことがあるんだったら、業務で新しいものを作るとなったら、まずはReactで作ることを選ぶと思います。
経験値に応じて等級や立場も上がっていくと、なおさら「自分はReactをやっているしReactでやるか」みたいな感じになっていって、不確実性が高いことができなくなっていく傾向にあるかなと個人的には思っています。
なので、誰とつながるかわからないけどイベントに登壇をするとか、読まれるかわからないけど記事を書いてみる。あとは、1円も入るかわからないけど個人開発をするとか、そういった行動をあえてすることは個人的には大事かなと思っていて、個人開発もそのうちの1つかなと思っています。
なので、個人開発をしようと思っている方は、自分もそうなんですが、「このアイデアはスベリそうだからやめようかな」みたいなことをあまり思わずに、どんどん開発するのがいいのかなと思っています。
次に3つ目です。作ったことのあるサービスの種類が増えるという話をしていきたいと思います。いきなり大きい話になるのですが、いろいろなWebサービスが世の中にあると思うんですが、雑に分類すると、メディア、SaaS、ツール、SNSの4つぐらいがあるのかなと思っています。
メディアというのは、飲食店検索サイトの「食べログ」さん、ECサイトやブログですね。SaaSは会計のSaaSで「freee」さんや株式会社マネーフォワードさん、あとは医療SaaSとか。ツールは「Slack」「Notion」あとは「Autify」とか。SNSには「X」や「Facebook」というようなサービスがあると思います。
自分は前職ではメディアで、現職ではメディアとSaaSを兼ねたようなサービスを作っているんですね。経験していないのがツールとSNSだと思っていて、テストメーカーもいわゆるツールのサービスなので、これで3種類経験できたと思っています。
これはなぜ大事かというと、分類ごとに重要視する技術が異なるのかなと思っているからです。例えば、SaaSを作っている方がSEOについて学ぶ機会はあまりないですよね。逆に、LPを量産するメディアをふだん作っている場合には、デザインシステムをがっちり構築することはあまりないかなと思っています。
そこで、個人開発も兼ねることによって、いろいろな種類のサービスを作ってみる経験値があると、流行っている技術や設計手法を聞いた時に、「流行っているから使う」というのではなく、「自社のサービス特性に合っているから使う」みたいな考えが及んだりするので、そういうメリットがあるのかなと思っています。
次に4つ目。Webサービスの全体感が見えることです。これはWebサービスに限った話になりますが、個人開発をするとWebサービスの全体感が見えるようになります。Webサービスを作ると、デザインとか、SEO、「LPにどんな情報を載せるとコンバージョンが取れるのかな」とか、フロントエンド、認証、バックエンド云々みたいな、いろいろなところをやることがあります。
やはり実務で全体を任せられることも普通はあまりないことかなと思うので、個人開発というか、Webサービスを0→1で作ってみると、いろいろなところの解像度が上がっていくのかなと思っています。
例えばテストメーカーの場合ですが、とある格安のサーバーのサービスを契約したら、リージョンが海外だし、謎に落ちるし、サポートが雑というような経験をして、「やはりAWSやGCPって値段が高くて、IAMとか設定も大変で手間もかかるけど、相応のメリットがあるよね」みたいな気づきを得たりしたので、すごく良い経験かなと思っているところです。
5つ目が、要件定義の経験ができるところです。個人開発は自分が企画から実装までをやるので、課題を解決するためにはたくさんの手段があって、その中から自分が決める経験ができると思っています。
要件まで固まってから開発チームに要件が降りてきて、そのとおりに開発するというところでは、設計や実装に集中して仕事をする方も多いのかなと思います。
個人開発では、サービスやそのサービスで解決したい課題は自分が一番わかっているし、そういう点では、要件定義にチャレンジする上での知識的な障壁がほとんどない状態になっているので、挑戦するには打って付けだなと思っています。
最後の6つ目です。表現がアレですけど(笑)。汚いコードを書けばどんな目に遭うかわかるところです。これはふだん自分も仕事でコードレビューをする時に、つくづく思うところです。
実務だと、コードに問題があった時にソースレビューで弾くことが多いと思うので、リリースしたり、保守することがないと思います。
保守されることがないから、「こういうコードを書いたら具体的にどんな目に遭うのか」は、頭ではわかっていても、実体験が伴わないことがあるのかなと思っています。
例えばコードを見た時に「こういうことで困りそうだから、このコードはダメだよね」じゃなくて、「なんかDDDっぽくないよね」とか、「責務違反だから」みたいな感じに至りがちなのかなと思っています。
個人開発だと、ファットコントローラーや、すごく大きいモジュールとかが思いっきり書けるので、そういう状態で思いっきりリリースしてみて。
機能をどんどん追加するとえらい目に遭ってしまうので、そうすると、やはり「どういうコードを書くとより保守性の高いアプリケーションを作れるのか」が逆にわかってくるのがすごくいいところというか、自分なりの砂場を持つメリットかなと思っています。
最後にまとめです。個人開発は、自分のキャリアにおいて不確実性に投資するための手段の1つだと思っています。別のLTであったように、収益を上げたり、ユーザーさんから「いつも助かっている」というメールを受け取ったりするとか、そういうところはうれしいというのもありますが、今回のLTではあえて個人の利益に着眼してみました。
というのも、他の人に使えるかどうかはコントロールはできないですが、自分がその個人開発にどんなふうに取り組むかはコントロールできるので、そういうところを考えてみるのもちょっとありかなと思ってLTをしてみました。
最後に一瞬宣伝です。テストメーカーは有料版もありますが、無料でもそこそこ使えます。知り合いに学校の先生などがいたらぜひ布教や紹介をしてもらえると、とてもうれしいです。
あとは普通の宣伝ですが、私がCTOを務めているマナリンクではエンジニアを募集しています。私も含めて、個人開発で収益化しているメンバーが複数名在籍しているという、謎の特徴があります。
良かったらTwitterのDMとか、あとはカジュアル面談もよくやっているので、連絡をもらえればうれしいです。以上です。ご清聴ありがとうございました。
関連タグ:
2024.10.29
5〜10万円の低単価案件の受注をやめたら労働生産性が劇的に向上 相見積もり案件には提案書を出さないことで見えた“意外な効果”
2024.10.24
パワポ資料の「手戻り」が多すぎる問題の解消法 資料作成のプロが語る、修正の無限ループから抜け出す4つのコツ
2024.10.28
スキル重視の採用を続けた結果、早期離職が増え社員が1人に… 下半期の退職者ゼロを達成した「関係の質」向上の取り組み
2024.10.22
気づかぬうちに評価を下げる「ダメな口癖」3選 デキる人はやっている、上司の指摘に対する上手な返し方
2024.10.24
リスクを取らない人が多い日本は、むしろ稼ぐチャンス? 日本のGDP4位転落の今、個人に必要なマインドとは
2024.10.23
「初任給40万円時代」が、比較的早いうちにやってくる? これから淘汰される会社・生き残る会社の分かれ目
2024.10.23
「どうしてもあなたから買いたい」と言われる営業になるには 『無敗営業』著者が教える、納得感を高める商談の進め方
2024.10.28
“力を抜くこと”がリーダーにとって重要な理由 「人間の達人」タモリさんから学んだ自然体の大切さ
2024.10.29
「テスラの何がすごいのか」がわからない学生たち 起業率2年連続日本一の大学で「Appleのフレームワーク」を教えるわけ
2024.10.30
職場にいる「困った部下」への対処法 上司・部下間で生まれる“常識のズレ”を解消するには