エンジニアになって2本目のサービスをリリースしました
はじめに
最近はブログを書く頻度も減り、あまり何をやっているかがわからない感じになっていたかもしれません。実はプライベートの開発は継続していて、新しいWebサービスを考案してからちょこちょこと実装をしていました。
それがようやくお披露目できる程度の仕上がりまできたので(といってもだいぶ粗く、未実装の機能もたくさんありますが)この記事でご紹介させていただきます。
サービス紹介
今回作ったのがこちらの「BestCode」というサービスです。
どんなサービスか?
このサービスは「レビュワー」と「レビュイー」をつなぐマッチングサービスです。この構想については実をいうと「PushRequest」というサービスに先を越されていました。作りたいと思ったときには誰かが作っている、といういつものパターンです。
その時は「やられた!」と思いましたが、開発者の寒河江兄弟にお願いをし、少しだけ(といっても1PRだけですが)お手伝いをさせていただいた、なんてこともありました。そして、PushRequestの方針や想いを聞かせていただき、自分の考えていたサービスの構想と競合しないだろうということがわかったので、改めてこのBestCodeの開発をはじめました。あのときはどこの馬の骨ともわからない私にPushRequestへ関わらせていただき、この場をお借りして寒河江兄弟にお礼を申し上げます。
少し話がそれてしまいましたが、BestCodeがどんなサービスか?という話に戻ります。先程書きましたがBestCodeは「レビュワー」と「レビュイー」のマッチングサービスです。
サービスの流れとしては、レビュワーが作成した部屋にレビュイーが入室し、その部屋でチャットベースで質問をしたり、レビュー依頼をしたりといったことができます。レビュワーはレビューをすることで実績や評価を得ることができ、更に多くのレビュイーの支援をすることが出来るようになります。非常にシンプルな作りです。
もう少し詳しい使い方が気になる方は、是非サービスにサインアップして触ってみてください笑
なぜ作ったか?
さて、どちらかというとなぜ作ったのか、が今回の本題です。
私はかつてエンジニアを目指していた頃に下記の記事を書きました。この記事では「自分がどうやってエンジニアになったのか」について書いています。興味がある方は読んでみてください。(自分で読み直して少し恥ずかしくなりましたがw)
そして、この記事の中で以下のようなことを書いていました。
ここでいきなり再現性が薄くなってしまうような話になるのですが、私の場合はとあるイベントにお誘いを頂き登壇の場を設けて頂き、その主催者の方にコードレビューを受けながら自分のアプリケーションを作りました。ここが割りと肝な気がしていてどうにか上手く再現できる方法がないものかと考えました。近くに知り合いのエンジニアがいればその人に頼み込むとか考えましたが、ハードルは高いですよね。
まさにこの部分が、今回のサービスを作成した一番の理由です。
エンジニアを目指して「一人で勉強をする」というのは、言うほど難しいことではありません。本人の気力さえ持てばいくらでも続けられるからです。
しかしながら、「現役エンジニアの方からコードレビューを受ける」というのは、そう簡単ではありません。当時の自分は本当に運が良かったなぁと思っています。もしあの時、声を掛けられていなければ、今こうしてリモートでエンジニアができていなかったと思います。
それくらい、当時のコードレビューを受けた経験は欠け替えのないものでした。それと同時に、限りなく再現性が低い方法でもありました。
なので、どうにか再現できないかどうか?ということを考え、行き着いたのがBestCodeの構想でした。「レビューをしてもいいよ!」という方が待ち構えている中に、「レビューをしてほしい!」という方が気軽に入っていける、そんなサービスがあったらいいな、と思い作成しました。
今後の構想について
今回このサービスを公開しましたが、フェーズとしては実はまだ1にも乗っていないフェーズ0.5くらいです。最低限使える機能は実装したけど、本来的な姿としてはまだまだ出来上がっていないという感じです。That's MVP!
どんな感じで発展をさせていこうと考えているかについてさわりの部分をお伝えできればと思います。
フェーズ1:サブスクリプション型サービス
レビュワーが部屋を作ってレビュイーが入室するという流れは実現できているのですが、現状はレビュワーが無償でレビューをする形となっています。コードレビューを行うことで逆にレビュワーが学ぶ機会となることは大いにあります。といってもレビュワーの負担を考えるべきなのは確かです。
そこで考えたのが、コードレビューや諸々の質問に答える代わりに月額をレビュイーから受け取れる仕組み(サブスクリプション)です。これによってレビュワーは空いた時間にレビューを行うことでちょっとしたお小遣い稼ぎが出来るようになります。自身の学びに繋がりかつちょっとした副業が出来るので一石二鳥です。
一方のレビュイーは多少の金額負担は出てきてしまうものの、実務を経験しているエンジニアからコードレビューを受けられるので、いわゆるエンジニアスクールよりも場合によっては安価に経験を積むことができます。
こうすることで、互いのメリットのバランスを取りながらサービスを利用いただけるかなぁと、考えています。
フェーズ2:HR領域への拡大
これはだいぶ先になる、ないしは、力尽きてるかもしれないので、完全なる妄想話として読んでください笑
採用市場において「現役エンジニアからコードレビューを受けた初学者」というのは、価値が高いんじゃないかなぁと感じています。現役エンジニアからコードレビューを受けながら実装する=実務とほぼ変わらない、と考えているためです。
そして、エンジニア不足と囁かれる昨今において、「ちゃんと学習をしている初学者であれば育成枠で検討したい」という企業もそこそこあるんじゃないかなぁと考えています。現に弊社はそんな感じです。
とはいえ、これは自身の知見の範囲でのみの話なので、本当に踏み切るのであれば市場調査は必須です。その時が来たら実施しようと思います。
ちょっと回りくどくなりましたが、「コードレビューを受けている初学者」と「育成枠でもエンジニアを採用したい企業」を繋げる仕組みを、フェーズ1の延長線上に作れるかなぁと、おぼろげに考えています。これがフェーズ2です。
その他:スマホアプリ化・Webアプリ化
これは自身がスマホアプリやWebアプリ(SPA)の勉強をしてみたい、という欲求のもと、独断と偏見でやりたいと思っていることです笑
フェーズ1とフェーズ2の間くらいにやりたいなぁと考えています。UIもチャットベースだしスマホアプリやSPAとの相性はいいんじゃないかなぁと思っています。
学ばなければならないことは山程
おぼろげながらもやりたいことは見えているので、後は実装あるのみです。とはいっても、知識不足・経験不足は否めないので、インプットの量も本格的に増やさなければなりません。でも、逆にこういう機会だからこそちゃんと学びたいと思えるので、この想いを原動力に変えて学んでいきます。
学びたいことリスト
これだけで1〜2年掛かりそうな匂いがする(-_-;) でも目標があるっていいことですね。
最後は決意表明的な感じで終わってしまいましたが、興味のある方は是非BestCodeも触ってみていただけると非常に嬉しいですm( )m ご一読いただきありがとうございました。