見出し画像

1年間の振り返りとエンジニアがPjMやってみて今後のキャリアを考える。

この記事は株式会社LabBase テックカレンダー Advent Calendar 2022 7日目の記事です。

はじめに

最近まで大きめなプロジェクト(私にとって)のリリースを完了させました。メインはエンジニアをやってきた私にとって新しい経験し、今後のキャリアについて考える時間ができたのでつらつらと思いを吐き出していきたいと思います。あまり読んでも身にならない振り返りなので興味ある方は最後だけ読んでください。内容についてはあくまで個人の意見なので会社のメッセージとイコールではありませんのでご注意ください。

1年前に始まったプロジェクト

リリースは2022年10月末ごろに完了しましたが、このプロジェクト自体は2021年9月頃から始まりました。技術的な内容については触れませんが、弊社LabBaseで取り扱っているほぼ全てのサービスに関わる認証基盤とだけ言っておきます。
最初は複数のサービスをまたぐ基盤周りをマイクロサービス化しようかとか、フロントエンドの機能を統一しようとか、なかなか手をつけられないところ少しずつ変えていこうかみたいなプチプロジェクトとして始まりました。なので、この時は1年間続くようなプロジェクトとは思いもしませんでした。
部署内で色々とアイデアを出し合う中で一番大きなものとして認証基盤を統一したいというところがあり、これを進めていこうということになりました。弊社は複数のサービスを持っていてそれらの認証基盤は統一されておらず、今後サービスリリースしていく上でもプラットフォームとして拡大がしづらい状態でした。これは私個人としてもLabBaseにとって長期的にみて必要だと思っておりチャンスだなと思いました。

設計と挫折

認証基盤の統一ということで私は全体の技術選定とアーキテクチャの設計をやらせていただきました。基本は一人でやりつつチーム内でレビューもらいながらブラッシュアップをしていきました。この時は自分の中で今ある技術を総動員して設計しました。サービスが多い中複雑さをうまく吸収しながら統一できそうな基盤でした。すごく自信を持って設計をしていました。しかしある日、現CTOにこれでやってみないという技術的提案を受けました。これは私が設計していた前提条件を覆すものでした。確かにこれができたらいいけど私にはまだまだ知識の足りない技術を使っていてできるかどうかわからないものでした。でも提案されてハッとさせられ、自分の技術力の足りなさに自信を失いました。エンジニアとして学びを続けていましたがこの時は何かそれ以上の差を感じました。自分の範疇の中でしか設計してもめちゃくちゃいいものはできないと気付かされました。気付いたのでくよくよせずCTOに提案されたものの技術的検証を早速始めました。

チームリーダーから始まる

技術検証を進めながらこれはいけそうだということになったので、とりあえず単独で認証基盤を作っていこうということになりました。この頃は数名で画面設計しつつやフロントエンド、バックエンドの開発を行なっていました。チームリーダーはこれまでも経験があったのでスケジュール管理もしていました。ここで一旦落ち着くのでが今年の4月ごろでした。

プレイングマネージャーの限界

一旦落ち着き別プロジェクトに少し入った後、5月に大きくプロジェクト転換がありました。これまでは単独で作った認証基盤を新しいサービスに導入しつつ、既存のサービスにも導入するのは徐々に行う予定でした。これ自体明確に決まってなかったもののそこまでリソースはつぎ込まないと私は思っていましたが、ここで8月末までにほぼ全てのサービスに認証基盤を導入することが決定しました。びっくりでした。設計開発箇所の洗い出しと概算見積した上で8月末までにやるにうちのエンジニアの8割程度が入れば入りそうという肌感でプロジェクトは新たにスタートしました
ここで私は明確に職能を分けるような役割を決めていたわけではありませんが、全体の技術的なリードとプロジェクト管理、そして開発もするというプレイングマネージャー的なことをやるようになりました。実はプレイングマネージャー自体はこれまでの私の未来のキャリアパスとして理想的な役割でした。プロジェクトマネジメントをしつつエンジニアとしてコードも書くという側から見ればパーフェクト超人みたいなことで、すごい憧れていました。ですが実際には全然力足らずなので、複数の役割が重なり、余ったタスクを全て私の中で抱え込んでしまうという悪循環に陥り、全く身動きが取れなくなりました。

成り行きのPjM

私が身動き取れなくなったことでたくさんの人に迷惑がかかってしまうため、CTOやテックリードに色々とフォローをいただき、私は開発はせずプロジェクトマネージャーとしての役割に専念することになりました。これが7月半ばごろでした。PjMに専念することで悪循環から抜け出し、身動きが取れるようになりました。8月には他部署との折衝も始まり、社会人8年目にもなってコミュニケーション下手が露呈しまくり、色々ご迷惑おかけしましたがなんとか仕事をこなすことができました。複数チームの進捗管理やいろんなところフォローしていくのはなかなか大変でしたが、それぞれのチームに何を任せ、どうやったらメンバーが動きやすくなるのかを考えるのは初めてだったのでいかに大きなプロジェクト動かしているのかを実感しました。(大きいといっても最大十数名程度ですが)
そんなプロジェクトの影響度が全体のサービスになること実感していくにつれ、非常に精神的なプレッシャーも大きかったです。体調を崩すことも多くあり、心療内科で抑うつの薬をもらったりして頑張っていました。初めての経験でPjMをやって、本当に世の中のPjMってすごいなと改めて感心しました。もうすごいよ(語彙力)。
最終的にはなんやかんやありながら開発の遅れや他部署との折衝不足もあり、リリースは10月末ごろに行いました。リリース後バグ対応で燃え上がっていたお話はまた機会があれば書きます。

プロジェクト終わってみての学び

終わってみて色々と振り返りをしました。いつもは2週間スプリントを行なっておりそこでも振り返りしていますが、プロジェクト全体としても振り返りを行いました。内容としては他部署とはプロジェクト初期から連携を取ろうとか、大きなリリースはせず、小さいリリースをしていこうだとか基本的なことに終始しましたが、改めてPjMはじめ、PdMやエンジニアの仕事って大変だなと思いました。今回のプロジェクトが報われるかどうかは今後の自分達にかかっているので精進します。

今後のキャリア

今後のキャリアについて思ったことは3点あります。

  1. PjMも悪くない

  2. でもやっぱりエンジニアもやってたい

  3. 私にとってプレイングマネージャーはしんどすぎるのでエンジニアとPjMでスイッチングできるといい

PjMも悪くない

今回大きなプロジェクトを動かすPjMという立場になって自分一人ではできない大きなことを成し遂げるということを実感することができました。元々前職がシステムエンジニアでPjMっぽいこともやっていたのですが、基本的にエンジニアとしてのプレイングもやっていたのであまりPjMを意識したことがなく、顧客にレビューで叩かれるPjMに魅力を感じることがありませんでした。これは私がみてきた人が悪いだけかもしれませんが。そう思っていたので今回のプロジェクトでPjMも悪くないなと思いました。これは経験してみないとわからなかったことなので成り行きだったとはいえよかったです。

でもやっぱりエンジニアもやってたい

これはやっぱり思います。ここ半年くらいコード書いてなかったので、もうコード書けないかもとも思うくらいこの短い間で周りとの差を感じるようになりました。かろうじてコードレビューはできるレベルです。そんな中こないだ久しぶりにまた書き始めましたが、なんとかなるもんでやっぱりエンジニアも楽しいなとしみじみしてました。

私にとってプレイングマネージャーはしんどすぎるのでエンジニアとPjMでスイッチングできるといい

この通りです。上でも書いてましたがプレイングマネージャーは理想形でパーフェクト超人ですが、こんなもの私には無理なのです。その場に合わせたり、やりたいことに合わせてエンジニアやPjMを切り替えれるようにキャリアをスイッチングできるといいなと思いました。よくマネージャーになったらエンジニアには戻らないことが多いのかもしれませんが、よくよく考えればそこは柔軟に切り替えられれば、会社としても個人としてもメリットが大きいと感じました。今後また PjMをやる機会が出てくるかはわからないのですが、またその時まで知識を蓄えていこうと思います。

おわりに

ここまで私の拙い文章を読んでいただきありがとうございます。今後もLabBaseで研究者のためになる良きサービスや機能を作っていきたいと思います。そのためによりよい自分のキャリアも築けるように精進していきます。
とりあえず私にプロジェクト終わったご褒美として誰かレヴォーグかMT車をください。

明日はキートンさんです。ご期待ください。


この記事が気に入ったらサポートをしてみませんか?