【月次報告】エンジニアになって20ヶ月が経ちました
こんにちは、しゅんです。エンジニアになって20ヶ月が過ぎましたので今月も振り返りをしていきます。
※エンジニアになって19ヶ月目の記事も投稿しています。お時間ございましたらご覧ください。
■エンジニアになって20ヶ月が経ちました
全体を通して
8〜12月で携わっていた案件の休日稼働の反動で1月は本業が週3稼働になっています。そのため週2休暇を使って業務委託先に出社しプロダクト開発にコミットしていました。(本業DM承認済みです。)
業務委託に関して
先月から述べていたように業務委託の開発に注力していました。コミット量が増えたこともありますが、偶然施策の多い月だったこともありかなりバタバタしていました。
プロダクトはEC側(EU向け)とアドミン側(自社向け)の2つに分かれるのですが、最近はアドミン側の機能開発・改修がメインになってきています。
業務委託メンバーなのにも関わらず購入導線周りの実装や改修も任せていただけたのでStripe, Cloud Functionsのユースケースに触れ、認識をアップデートできたり(今まではFirebase Extensionでごまかしていたので。。)EUが商品を購入した後にロジティクスのメンバーが作業しやすいような機能追加を主に担当しました。
特に購入「後」のフローについて知ることができたのはよかったのです。サービスを使っている側や個人開発レベルの実装規模ではどうしてもブラックボックスになりがちなところだと思うので開発を通してどういった機能が必要になるのか、どういった導線を敷く必要があるのかが勉強になりました。
もちろんタスクとしてEC側も振られることがありますが今までのプロダクト開発を通して得た成功体験からアドミン側の実装・改善にやりがいを感じるようになりました。
単純かもしれませんが改善するたびにロジティクスのメンバーからslackで「ありがとう」とメンションを飛ばしてもらえたことが嬉しかったからです。
逆にEC側の実装をしてもEUからはフィードバック(ネガティブなコメント)をもらうことが多かったのでどちらがモチベーションに繋がるかというとアドミン側かなといったところです。
ネガティブなフィードバックと言いましたがユーザーにとって便利な機能は使っている意識から外れやすいことが関係しているのではないかと思いました。どこかでそういった本を読んだ気がします。
そもそもそういった機能が追加されたこと自体、認識されにくいのでしょうか。(体調不良になって初めて健康なことに感謝する感じでしょうか。)
業務委託とはいえ自社プロダクトの開発に携わって半年以上経ち、好きなプロダクトに関わるとどうなのか?toC向けの開発はどうか?業務委託を始めた当初の目的「エンジニアとして自分は何に興味があるのか」が少しずつではありますが見えてきた気がします。
技術面に関して
今月はslack通知導入の記事を書きました。slack通知を導入するまでの手順が主な内容になっていますが、こういった外部連携をする実装はそのサービスのAPI生成などのコンソールの操作は地味にハードルが高いと思うので個人用のメモとして書きました。
また、Firebaseの実装に関しても複合インデックスやバッチ処理、トランザクション処理など個人開発では手の届かなかった実装に携わることができ、こういったときに必要になるのだなとインプットすることができました。こちらに関してもアウトプットしていきたいです。
■20ヶ月目を過ぎて思ったこと
業務委託先の全社会・新年会に参加しました
1月末に業務委託先の全社(共有)会・新年会に参加させていただきました。
普段自分は開発オンリーなのでビジネス側がどのような取り組みをしているのか、自分たちの開発がどのように利益に繋がったのか知ることができる機会でした。
ユーザーインタビューやインフルエンサーとの連携、競合比較・類似のサービス形態を持つ企業との情報交換など、ビジネス側が何に取り組んでいるのか、どの分析があって、どの施策を行うのか、不明なビジネス単語もあって全て理解できたわけではないのですが熱量を持ってみんな取り組んでいるところにモチベーションを感じました。
みんなが一つのプロダクトに対してそれぞれのポジションからアプローチしていて、時には方向性が異なって不満がぶつかったりして(開発中に突発的に起きたのでびっくりしました。)成熟しきっていない、伸び代しかないベンチャー感溢れる疾走感に面白さと魅力を感じました。
こういう体験は納品して関係性が終わる、ビジネス側と関わりのない受託企業では得られない経験だと思いました。思ったよりも自分の環境(受託企業)はプロダクトに対する想いがドライなのでしょうか。
去年の業務委託先のエンジニア交流会に引き続き新年会で出てきた料理もすごく美味しかったです。転職の面接でオフィスの近くに美味しいお店があるのか聞いてみるのも良いかもしれないなと思いました。
バックエンド側の知見を増やす
業務委託ではアドミン側の実装に尽力したいのもあるのですが、そうするとバックエンド側(Firebase, Express, Stripe)の知見をより深く学ぶ必要があります。
方針としては今まで本業・個人開発で扱っていて業務委託でも絶賛取り扱っているのFirebase, Node.js(Express)を本格的に学んでいこうと思っています。
軸はフロントエンドにするのは決めていますが、しばらくはFirebase, Node.js(Express)で進めていき、もしスタックが変わるならNest.js, Python, Goあたりをやりたいと思っています。
1月末にちょうどNode.jsの技術書が出たので読み込んでみようと思います。ヤフーエンジニアが筆者なので技術書にどのような知見を落とし込んでいるのか気になります。
■最後に
2月も引き続き本業は週3稼働になるので空き時間は業務委託にコミットしていこうと思っています。
が、現在本業では2つの案件を持っていてVue.js2, JavaScriptの案件とNuxt Composition API, TypeScriptの案件を。さらに業務委託でNext.js, TypeScript, Firebaseのプロダクトも持っていることになるので技術スタックだけでも統一できないのかなあと思うこの頃です。
そう思うと受託会社のように案件でブレる技術よりも腰を据えた開発のできる自社企業に行きたい、先に述べたように熱量を持ったプロダクト開発をしたいですね。
今後も継続して月次報告をしていこうと思っています。是非今後ともよろしくお願いいたします。駆け足になりましたが最後までご覧いただきありがとうございました。