はじめに
はじめまして @toitech です。
私は、エンジニア歴10年強の中堅(中年?)エンジニアで、2年前に副業で起業しシステム開発を行っています。
先日、テック人材向け情報共有コミュニティYard の クローズドβ版をリリースしました。
(テストユーザーを希望する方は、 @toitech までDMください。)
また、以下のページでクラウドファンディングにも挑戦中です!もしよろしければ、ご支援ください!
さて、今回は上記のサービスを一人で開発(個人開発
)したことにより、エンジニアとして得られた恩恵について、まとめてみたいと思います。
対象読者は、30代のWebエンジニアです。それではどうぞ!
エンジニアとしての限界
起業前の私は、大手IT企業でデータエンジニア組織のマネージャーとして働いていました。
マネージャーになった当初は、チームのメンバー数も5人程度だったので、プレイングマネージャーとしてシステム設計やコードを書いたりもしていました。
しかし、事業や組織が拡大するにつれて自分のチームのメンバーが最終的に15人ほどになり、ピープルマネジメントや事務手続きに忙殺されるようになりました。
結果として、日々目まぐるしく変化する最新技術にキャッチアップすることが難しくなり、今後のエンジニアとしてのキャリアパスに危機感を持つようになりました。
個人開発を通じてリスキリング
そんな中、自分で手を動かす機会を増やすために、副業でシステム開発を行う会社を起業しました。
起業した会社の業務内容は、
- 他社システムの開発・運用のサポート
- 技術コンサル
- 自社サービスの開発(
個人開発
)
といった感じです。
これらの業務を通じて、本業では触れられない技術を身につけながら、次の10年も通用するエンジニアを目指す狙いでした。
特に、「自社サービスの開発(個人開発
)」においては、フルスタックなスキルが必要になり、より広い経験をすることができました。
本業の大手IT企業でエンジニアをしていた際は、専門領域ごとにチームが細分化されており、自分の担当領域の専門性は伸びる一方で担当外の技術を触れる機会は少なかったため、個人開発
を通じて成長できた面は多くあったと思います。
ただし、設立当初は、フルタイムの本業があったので、使える時間は休日や平日夜のみで、両立は大変でした。
それでも、新しい技術に触れられる機会は、とても充実したものでした。
個人開発で得られたもの
起業後に習得した 技術スタック
としては、以下のものがあります。
- Next.js(TypeScript, prisma, graphQL, MUI...)
- AWS App Runner
- Vercel
- Cloud SQL
- Supabase
- Stripe
- Algolia
本業では、データエンジニアとしての業務が中心だったので、フロントエンド・バックエンド・インフラのモダンな技術に触れられたのは貴重な経験でした。
(それ以前は、フロントはjQuery + bootstrapでとまっていた...)
また、エンジニアのハードスキル以外で言うと、
- 技術選定における視野の広がり
- 顧客のニーズの把握能力
- 営業力・交渉力
- よりマクロなコスト管理
- 事業開発力
-
アクセシビリティ
を考慮したデザイン
などは、(まだまだ成長途上ではありますが)以前に比べると成長があったと思います。
さらに、Yardの開発を通じて多くの仲間と出会えたことが最大の収穫かもしれません。
ここでいう仲間
というのは、親密な関係というよりは弱い紐帯といった感じではあるものの、実践的な情報や気づきを交換しつつ、切磋琢磨できる関係です。
少なくても100人以上の方とYardの開発を通じて出会えたことに感謝です。
さいごに
今回は、中堅エンジニアが個人開発
を通じて新たなスキル獲得に挑戦した話を紹介しました。
ある程度、業務経験を積んだ中堅エンジニアが、本業以外の活動を通じて視野を広げる・視点を変えるというのは、次の10年を見越したエンジニア生存戦略として有益なアプローチだと思います。
私のような起業する方法以外にも、「副業・複業する」、「OSS・コミュニティ活動をする」、「休日に自己研鑽の時間を設ける」でも良いと思います。
- 普段の業務とは別の視点で技術と向き合う
- 普段の業務で関わらない人と接する
ことが重要なポイントだと思います。
そんなわけで、皆さんもエンジニアとして楽しく歳をとりましょう!