この記事は個人アプリ/サービス開発の進め方と運用、得た学び - 02【PR】 Lenovo Advent Calendar 2020の20日目の記事です。
Skillfulsについて
2ヶ月前の10/18日に Skillfuls というプログラマのスキル記録サービスを個人開発でリリースしました。
リリースしたときに、技術構成などは以下のQiita記事に書いたところ沢山のLGTMをもらうことができ、とても励みになりました。
[プログラマのスキルを記録できるサービスを作ってみた【個人開発】]
(https://qiita.com/HYuta999/items/28f1526447637ad87941)
最近はあまりSkillfulsの開発の時間をとれず、新機能などは実装できなかったので運用面とアクセス解析をまとめてみます…
数字で見るSkillfuls
2ヶ月の間にデータベースに記録されたレコードを集計して表にしました。
単純計算で1ユーザあたり6つのスキルを登録してくれている計算になりますが、実際には多い人と少ない人が極端なような気がします。
チームでスキルマップを作れるという機能を頑張って実装したのに、あまり使ってもらえず少しショックでした😓
項目 | 結果 |
---|---|
ユーザ数 | 252 |
スキルの種類 | 115 |
全ユーザの登録スキル | 1595 |
チーム数 | 10 |
👑 登録数ランキング
ユーザが登録したスキルのトップ5は以下のようになりました。
GitHubなどが発表している人気言語ランキングとそんなに変わらないような感じですね。
順位 | スキル | 登録数 |
---|---|---|
1 | JavaScript | 102 |
2 | Python | 89 |
3 | HTML | 69 |
4 | Java | 68 |
5 | PHP | 67 |
📈 成長させたいスキルランキング
また、全ユーザの登録スキルのうち成長させたいと思っているスキルの数は352で、上位のスキルは以下のようになりました。
1,2位は登録ランキングと変わらずで、3位にTypeScriptがランクインしていますね。
ここ数年で一気に注目されていますし、成長させたいと思っているエンジニアも多いのでしょう。また、Node.jsやReact,Vueが17人で同順の5位になりました。
順位 | スキル | 登録数 |
---|---|---|
1 | JavaScript | 34 |
2 | Python | 29 |
3 | TypeScript | 22 |
4 | docker | 19 |
5 | Node.js | 17 |
5 | React | 17 |
5 | Vue.js | 17 |
運用について
インフラの構成は前の記事に書いた通りで、HerokuでNuxtのProxyとSSRを行っていて、nest.jsで開発したAPIサーバはGoogle Cloudの2コア/2ギガのVMで動いています。
料金は月額700円くらいです。
メモリは割と余裕があるはずなのですが、たまにpm2がフリーズしてしまうことがあるのでCloud Monitoringで5分毎にリクエストを投げて死活監視をしています。リクエストが失敗するとGoogleCloudのスマホアプリにインシデントとして通知が来るので、現在は手動で対処しています。時間があるときに原因解明をしたいですね…
余談ですが、APIのリクエストを複数リージョンから送信できるのですが、サーバ費用の安いUSリージョンに置いているため、アメリカに比べてアジアからだと6倍位レイテンシが大きいことがわかります。やはり、東京リージョンを使うのが一番いいですね…
個人開発のモチベーション
ユーザが登録して継続的に使ってくれるようなサービスを開発したのは、Skillfulsが自分にとっては初めてでしたが、252名の方に使ってもらえたのでとても嬉しく思いました!
ただ、チームの機能を想定していたほど使ってもらえなかったりと、思い通りにいかないということも実感しました。また、継続的に利用してもらうのはスマホアプリに比べて難しそうです。
ドメインはとりあえず1年で契約しているので、最低でも1年間は運用していこうと思います!
では、21日の記事は「Qiita殿堂入りアプリを作成した話(二番煎じ)」です!
おまけ
このAdvent Calendarは個人アプリ/サービス開発の進め方と運用、得た学び - 02【PR】 Lenovo Advent Calendar 2020ということで、Lenovoさんがスポンサーなので少しThinkPadの話をします。
僕はThinkPadファンで、現在もRyzen7,16GBのThinkPad X395というノートPCを使っています。
以前はX1 Carbonという上位機種を使っていましたが、Ryzenを使ってみたかったので昨年このThinkPadに買い替えました。
ThinkPadはキーボードが打ちやすかったりハードウェアがしっかりしているなど、好きなところは色々ありますが、自分にとって一番嬉しいのがLinuxとの互換が割としっかりしているところです。
個人的に開発OSではUbuntuが一番使いやすいと思っており、このSkillfulsもUbuntu上で全て開発しました。
公式サイトで情報を公開されており、UbuntuやREHLが使えるそうです。WIFIや指紋認証なども、Ubuntuで特に問題なく使えているのでとても助かります!
(発売直後はドライバが無い場合もありますが…)
https://support.lenovo.com/jp/ja/solutions/pd031426-linux-for-personal-systems
以上、あまり知られていないかもしれないThinkPadの魅力でした。