天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます

最近の贅沢な悩み

今日は完全に個人向けのメモとして、最近の贅沢な悩み(来年の2月以降のキャリアパスの悩み)を書いておきます。
あとでふりかえった時に、こんなこと考えていたなあって思い出すのと、頭の中を整理する目的で書いていきます。

これまでのキャリア

これまでの5年間は数十年の歴史を持つプロジェクトでレガシーなシステムを保守したりエンハンス開発をしつつ、コンサルタント的なお仕事をしてきました。
1~2年目はひたすらスクリプトテストを叩いたり議事録とか会議の説明資料とかを作る日々がほとんどでしたが、3年目くらいからは要件定義~リリースまで一通りこなしたり*1、チームのプロセス改善をしたり、コンサルタント業をしたり、運用保守やカスタマーサポートをしたり、人事をしたり、ドメインエキスパートとして専門家たちと会話したり、徐々に仕事の幅が広がってきて、社会人5年目となった今では、かなり幅広いことを経験(浅くではありますが)することができました。

また、昨年の11月頃からは社外コミュニティにとってもお世話になり、アジャイル開発を中心に様々なことを学びました。

増殖する不安

幅広く経験できたことで得られたメリットはあった一方、常に色々なことを同時並行でやっているような状況で、何事も中途半端になっているような感覚が強くなっていきました。

関わり方が間接的になるような機会が徐々に多くなり、実際に自分で手を動かす機会が少なくなってきました。特に、自分自身で(少なくとも業務では)あまりコードを書いたりテストシナリオを作ったりせず、グッドプラクティスを教えたりレビューをしたりする機会が増えていくのは、自分が望んでいない、口だけ達者で現場で実際に手を動かしている人をないがしろにする姿に近づいているような気がしました。
そんな姿からなるべく遠ざかるために、2021年は毎日ソースコードを書いたり、イベントで参加したり本を読んで得た知識を現場で一度は必ず自分自身の手で試したりしていましたが、遠ざかるスピードが遅くなったものの遠ざかっている事実はあまり変わっていないような実感がありました。

また、エンジニアの仕事が好きな自分にとっては、現場でメインで使った経験がある技術要素が SVN, Maven*2, Linux, 相当古めなバージョンのJava*3...とかなり古めで、クラウドやWeb系開発の経験もないという、エンジニアとしてはこの先中々しんどそうなキャリアになったことにも焦りを覚えるようになりました。*4

相談してみる

会社の人たちに相談した所、役員の方々まで出てきてくれて、自分の悩みに真剣に向き合ってくれました。
そして、会社としての期待や自分の希望をすり合わせた結果、2022年2月でプロジェクトを移動し、新しいチャレンジをすることになりました。チャレンジの選択肢は大まかに言うと以下の2つです。

アジャイルコーチ・スクラムマスターになる

一つ目が、アジャイルコーチやスクラムマスターとして、社内外のチームを支援するという方向性です。
チームの支援を通して得た知見は、仕事として社内外に発表します。

また、自分の知識を深める&会社のブランディングを目的として、カンファレンスや勉強会への参加も支援してもらうことができそうです。

これまで、平日の社外イベント参加は見送ることが多く、カンファレンスで登壇する時に話せる内容も立場上限定せざるを得なかったのですが、この制約がなくなるのは自分にとって大分プラスに働くと思います。

ネックとしては、エンジニアとしてのキャリアに対する不安は拭えなそうなところでしょうか。(もしかすると諦めがつくかもしれませんが)

エンジニアとして研鑽する

これまで経験のない性質のプロジェクトで、エンジニアとしての役割に集中して力を磨くというプランです。

実際にエンジニアとして手をずっと動かす立場を経験することで、エンジニアとしてのキャリアに対する不安はある程度は払しょくできそうです。
また、プログラムを書くのは純粋に好きなので、仕事も楽しくできそうです。

ネックとしては、現状から出せる価値が大きく下がるという所でしょうか。Web系のシステムでドメイン知識もリセットされれば、未経験同然からスタートすることになります。
また、配属されるプロジェクト次第な所はありますが、社内ではアジャイル開発はあまり浸透していないため、WFでユーザーと開発チームが分断されているような境遇にあるプロジェクトに配属される可能性もありそうです。

今後どうするのか

今の所は正直全く答えが出ていません。

また、プロジェクトの異動を持ちかけられたものの、全く別軸の話として、今自分が所属しているチームを離れることへの躊躇も実はあります。
コミュニティに参加してから、ここ1年で沢山のことを学んで実験して自分のチームを良くしようとしてきて、メンバーは変わりつつも少しずつ自分が目指していた姿に近づいていきました。*5
もっと成果をチームで出して、社内外でロールモデルとなるようなチームを作りあげたいという想いがあります。

基本的に、自分がどうしたいか、というのを大事にしてくれる会社なので、もう少しゆっくり悩んで、自分にとって納得のいく選択をしたいな、と思います。

*1:WF開発もアジャイル開発も経験しました

*2:最近はGitやGradleを使っているが圧倒的にSVNMaven歴が長い

*3:具体的なバージョンは伏せます

*4:5年間同じプロジェクトにいたことで、特定領域のドメイン知識やレガシーなシステムとの付き合い方は成熟した面はありますが...

*5:本番障害が0になった、リリースした機能を使ってもらえるようになった、顧客やチーム内のコミュニケーションが活発になった...