こんにちは。曽根壮大(@soudai1025)です。 私は今、業務委託をメインにした合同会社HaveFunTechを一人で経営し、予防医療テックを提供する株式会社リンケージのCTOも兼任。 プレイヤーとマネージャーの二足のわらじを履いています。
もう少し私の職歴をご紹介すると、今回でCTO就任は3度目となっており、Webアプリケーションエンジニア→最初のCTO→CRE→2度目のCTO→独立→3度目のCTOと、プレイヤーとマネージャーを交互に経験するようなキャリアを歩んでいます。 CTOを通じたマネージャー経験は3回とも規模が違いますが、「強くてニューゲーム」できるというメリットがあり、回数を重ねるごとに違った経験と成長があります。
同じようにプレイヤーとマネージャーを行ったり来たりして、キャリアは一見、「振り子」のように見えますが、同じ場所には戻っておらず、実は「螺旋」のようにつながっています。 またマネージャーやリーダーを経験した後のプレイヤーは視座が高く、視野も広く、視点も鋭くなっていると感じています。
今回は私のちょっと変わった「キャリアの螺旋」についてお話しします。
- エンジニアの成長は30代で鈍化する
- できることの延長線上で「必要なことをやる」
- 「キャリアの螺旋」を歩んで分かったこと
- エンジニアコミュニティに「恩送り」をしていきたい
- 【アーカイブ動画】Findy Engineer Lab アフタートークイベント
エンジニアの成長は30代で鈍化する
エンジニアはどのようなタイミングで成長するのでしょうか。 私は次のように考えています。
- 問題を解決するために行動したとき(そしてその最中)
- 結果を振り返ったとき(失敗、成功を問わず)
つまり日頃から業務や私生活を通じてさまざまな問題解決を繰り返す中で成長のチャンスがあります。 しかし、これには一つ大きな罠があります。
10代、20代の頃はいろんな新しい出会い、新しいチャレンジがあって経験が積まれていき、自然と成長できます。 ですが、そのまま30代になったとき、成長の速度が鈍化することがあります。 なぜなら、30代にもなってくると仕事を通じての新しい経験が少なくなってくるからです。
また、業務としても安定した成果を求められるようになります。 そのために効率の良い方法は一度解いたことがある方法を再現することです。 そうなるとどうでしょう、似たような問題を似たような方法で何度も繰り返し解くようになります。 もちろん、小さな工夫を繰り返すことで成長できますが、20代のような連続的な成長は難しくなり、ここで成長が鈍化してしまいます。
仕事で新しい経験を積めない場合はプライベートの時間で学習するという手もあります。 もちろん素晴らしいアクションですが、30代から40代の同世代を見ていると結婚、出産・育児、両親の介護などさまざまな理由で20代の頃よりも学習時間を確保することが難しくなります。体力の衰えなどもあって学習する速度が鈍化してしまうことも珍しくありません。
人生の優先順位は適宜変わるものですから、別に悪いことではなく、これで良いと私は思っています。 つまり30代以降はさまざまな要因によって連続的な成長が難しい、だからこそ突然訪れるような「非連続的な成長」が必要になってくるのです。
非連続的な成長には「適切なサイズの問題解決」が必要
30代になっても成長するためには 自分の能力よりちょっと大きな「適切なサイズの問題解決」 を経験していくことが重要になります。そんなきっかけを得る方法はいくつかあります。
プライベートの時間を通じてきっかけを得る方法はエンジニアコミュニティを活用することです。 エンジニアコミュニティを通じたいろんな人との出会いは、新しい経験を与えてくれます。 また、コミュニティ活動を通じた学習が新しい知識を磨くきっかけになることも多々あります。 しかし、業務内でコミュニティ活動ができる会社は多くありません。 そのため、どうしてもプライベートの時間を活用することになり、自分のライフサイクルとマッチしないこともあります。
そうなると、やはり仕事を通じて成長できることが大切になります。 仕事で成長する一つの選択肢は転職です。新しい職場は新しい出会いや経験を得るチャンスでもあります。 しかし、転職は時と場合によるので必ずできるわけではありません。 また、変化の幅も大きくリスクもあります。
リスクを避けて小さく変化させる方法を考えてみましょう。 そうです、ロールチェンジです。 異業種にロールチェンジするのはハードですが、同じ会社でリーダーやマネージャーのロールを経験するのはどうでしょうか。 逆にリーダーやマネージャーのロールにいる人はプレイヤーに戻ってみるという手もあります。 今からプレイヤーに戻るのは不安があるかもしれませんが、その不安を乗り越えたときこそ、新しい成長が待っています。
昨今は「IC」というマネジメントの責務のない専門職も浸透しつつあるようです。マネージャーを経験してから、ICの道を進む人もいます。
▶生涯現役のソフトウェアエンジニアでありたい。IC(Individual Contributor)のキャリアパスがあると自覚するまで10年の軌跡
できることの延長線上で「必要なことをやる」
新しいチャレンジといっても、できないことを無理にやる必要はありません。 あくまで問題設定は ちょっとだけ大きい こと、つまり、「コンフォートゾーン」を出て「ラーニングゾーン」に行くことが重要です1。 大き過ぎるチャレンジは「パニックゾーン」に行ってしまい、大きく成長するチャンスもありますが、疲弊することも避けては通れません。 重要なのは現場に 必要なことをやる だけです。
必要なことをやる上で重要なのは、プレイヤーもマネージャーも役割でしかないと認知することです。 プレイヤーからマネージャーになったばかりの人は「マネージャーの仕事とは何か」という点を理解していないため、まだまだできないこともあるでしょう。
しかし、プレイヤーの頃の経験から現場に必要なことを想像できるはずです。 プレイヤーが必要としていることをうまく進められるように、一つ先のアクションを整えてあげましょう。 そうすると自然と仕事がスムーズに進むようになります。
プレイヤーの経験がマネージャーになったときに生きた事例
実際に私がプレイヤーの経験を生かせたケースを紹介しましょう。株式会社オミカレのCTOとして開発チーム全体のマネージャーを行ったときのことです。開発が順調だと毎日なんらかのリリースがあり、どんどん機能開発されていきます。
そうなると営業やCSから、「今どの機能がリリースされていて、どのバグが修正されたのか知りたい」といった要望が上がるのですが、リリースが多過ぎてBacklogの情報が追いつかないという問題が発生していました。 直前で自分は株式会社はてなでMackerelのCREをしており、営業やクライアントへのテクニカルサポートなどを行っていた経験から、実際にどのようなユースケースで困っているか容易に想像でき、そして「これは大きな課題だ」と認識しました。
そこでマネージャーとして開発フローについて見直し、スプリントレビューとは別に週間報告の時間を設けるようにしました。 また、報告作業が増えると現場の負荷が増えるのは明白だったので、Backlogのチケットのテンプレートを整理した上で、毎週自動的に集計してレポートを作成するようにしました。 そのときに書いたコードがこちらです。
マネージャーからプレイヤーに戻ったときにCTOの経験が生きた
これはプレイヤーからマネージャーになった際の話でしたが、逆にマネージャーからプレイヤーに戻った人はマネージャーがどんなことに悩んでいるか、決断のためにどんな情報が必要か、想像できるはずです。 それをチームの中からプレイヤーとしてサポートすることで、チームの動きがスムーズになっていきます。
私が2回目のCTOから起業し、HaveFunTechの業務委託のエンジニアとしてプレイヤーに戻ったときにはCTO時代の経験が生きました。 2020年から始まったコロナ禍でのリモートワーク体制では、多くの会社がコミュニケーションに困っていました。 複数の会社で業務委託として働く中で、マネージャーがコミュニケーションの難しさに悩んでいるときに、私は現場でマネージャーの代わりに発言の意図を伝えたり、マネージャーにフラットな立場から現場の意見を伝えたりしました。
このようにマネージャーとプレイヤーの接点になるハブのような役割を、トム・デマルコ氏は著書『デッドライン』で「触媒」と呼んでいますが、私はチームのコミュニケーションを円滑に進める触媒となり、結果としてチーム全体の生産性を高めることができたのです。 縁の下の力持ちのようなアクションを自然と取れるのも多くのロールを経験したからこそだと思っています。
これらはほんの一例ですが、皆さんも同じようにロールが変わっても過去の仕事の経験を生かす先があるはずです。 もちろん新しいことにチャレンジすることも大事ですが、まずは 自分のできることの延長線上でやっていく ことが適切なサイズの問題解決のコツなのです。
そして、新しいチャレンジにおいては自分一人ではできないこともたくさん出てきます。 そのようなときはチームの仲間を頼りましょう。 いきなり全てできる人はいません。 できることしかできないのです。 しかし、チームで取り組むことで一人ではできないことを解決する方法が見えてきます。 そのような経験がまた、新しい経験を生み、成長につながるのです。
「キャリアの螺旋」を歩んで分かったこと
このような取り組みを繰り返してきて分かったことがあります。
ロールを変えると視座・視野・視点が磨かれる
まず視座、視野、そして視点が変わってきます。 視座・視野・視点は以下の図がとても分かりやすいですが、この3つをバランスよく磨いていくことが重要です。
視座・視野・視点
ではそれぞれどのような場面で磨けるのでしょうか。 私は次のように考えています。
- 視座は責任と裁量と挑戦で上がる
- 視野は知識と自己研鑽と現場の経験で広がる
- 視点は多様な経験と出会いで磨かれる
つまり、決断を繰り返したり、マネージャーやリーダーを経験したりすることで視座が高くなります。 視野は自己研鑽でも磨くことができますが、プレイヤーを通じた現場の経験で広がることも多々あります。 そして同じ視座、視野を持っていても視点が違えば見えてくるものが変わってきます。 マネージャーとしての視点とプレイヤーとしての視点はもちろん違いますし、先ほどお話しした通り、2度目のプレイヤーやマネージャーで視点ももちろん変わってきます。
この視座、視野の成長と新たな視点の獲得が、プレイヤーとマネージャーを交互に経験することでの成長のポイントなのです。
同じ職場にいても、過去のロールに戻っても成長できる
ここまでのお話の中で「キャリアの螺旋」の成長の仕組みが伝わったことと思います。
キャリアの螺旋は同じ職場、同じプロジェクトでも立場が変わればもちろん変わりますし、転職先で過去に経験したロールに戻ることにも意味があります。 視座、視野、視点が変われば、プレイヤーとマネージャーの往復であっても、決して同じ仕事の進め方にはなりません。 そして2度目、3度目と同じ問題に直面しても、よりうまく片付けられるようになり、30代で求められる仕事の安定性も高まります。
このようにキャリアの螺旋は日々の仕事の中で新しいきっかけを生かして成長しつつ、自分のスキルを伸ばしていける方法なのです。
soudaiさんの「キャリアの螺旋」
人生を変えるような出会いのチャンスが生まれる
キャリアの螺旋を進んでいくとロールチェンジなどのタイミングで仕事の内容、人間関係、学ぶべき対象……さまざまなことが都度変わります。 そのたびにいろんな出会いがあり、そして 時には人生を変えるような出会いに発展する ことがあります。 例えば、学ぶ内容が変われば読む本も変わりますし、人間関係が変われば新たな縁にも恵まれます。 このような出会いの中で新たな視点を獲得したり、視座が高まったり、視野が広がったりしていくことを繰り返して成長が生まれます。
つまりキャリアの螺旋はこのような出会いを偶発的に起こしやすくする戦略とも言えます。 これは 計画的偶発性理論 といって、教育心理学者のジョン・D・クランボルツ氏が1999年に発表したキャリアに関する理論に沿った戦略です。 計画的偶発性理論を実践する上では以下のスキルが重要とされています。
- 新しいことに興味を持つ好奇心
- 失敗を恐れない楽観主義
- 失敗しても諦めない持続性
- 多様な価値観を認め、学ぶ柔軟性
- リスクを恐れず、未知の領域に飛び込む冒険心
これらはまさにキャリアの螺旋を登っていく上で非常に重要なスキルです。 自ら接触機会を増やし、自分が成長するためのアクションと自分が変われるチャンスは意外と身近にあります 。 そこに自覚的になった上で、キャリアの螺旋を進んでいくことが肝要なのです。
エンジニアコミュニティに「恩送り」をしていきたい
ここまで私が歩んだキャリアの螺旋の話をしてきました。 このようなキャリアを歩み始めたきっかけは、10年以上前に勤めていた会社の上司に「面白い人ともっと会った方がいい」と言われて連れて行かれたエンジニアが集まる勉強会でした。 この勉強会をきっかけに、エンジニアコミュニティに参加するようになり、多くのソフトウェアエンジニアと出会い、さまざまな経験をして成長し、成功体験を積んできました。
今思うと、コミュニティに参加することは、プライベートな時間で行える計画的偶発性を狙ったアクションだったのです。
そのエンジニアコミュニティで私は人生を変えるような出会いをし、そこからプロダクトを、世界を、そして自分自身を変えるためにコードを書くようになりました。 他にも先人の人が綴ってくれた本、Webサイトなどから知識や経験を授かってきました。 私自身、公私共に多くの人から恩を受けてキャリアを積んでいます。
恩を受けた人ではなく、別の人に送っていくことを「恩送り」といいますが、今、私は「恩送り」をしていきたいと日々考えています。
この記事を読んだ皆さんが何かのアクションを起こしたとき、私は受け取った恩を次の人へ送ることができると思っています。 この恩送りが今まで育ててくれた人たちへの、私なりの恩返しだと思っています。 そして、また皆さんが次の世代に恩を送る――。「恩送りの螺旋」が続いていくのです。
ここまで読んでくださった皆さんに最後にアドバイスです。
たしかに10代でしか出来ないこともあるが勉強は今からだって出来るし、コードは今からでも書けるので遅いということはない。今始めるのがいつだって一番早いんだ。
— そーだい@初代ALF (@soudai1025) October 30, 2019
図:ハマダナヲミ
制作:はてな編集部
【アーカイブ動画】Findy Engineer Lab アフタートークイベント
そーだいさんと並河さんに聞くエンジニアキャリア論〜30歳からの非連続的な成長を考える〜 -Findy Engineer Lab After Talk Vol.3-
・開催日時:2023/3/7(火)12:00~13:00
・アーカイブ視聴方法:こちらから
※視聴にはFindyへのログインが必要です。ご登録いただくと、Findy上でその他の人気イベントのアーカイブ視聴も可能となります。
- ノエル・M ティシー氏が提唱している。参考:GLOBIS知見録「コンフォートゾーンとは、そこから抜け出して成長する方法とは?」↩
曽根壮大(そね・たけとも)
合同会社HaveFunTech代表 / 株式会社リンケージCTO。数々の業務システム、Webサービスなどの開発・運用を担当し、2017年に株式会社はてなでサービス監視サービス「Mackerel」のCRE(Customer Reliability Engineer)、株式会社オミカレ副社長兼CTOを経て現職。コミュニティでは、Microsoft MVPをはじめ、日本PostgreSQLユーザー会の理事として勉強会の開催を担当し、各地で登壇している。builderscon 2017、YAPC::Kansaiなどのイベントでベストスピーカーを受賞し、分かりやすく実践的な内容のトークに定評がある。他に、岡山Python勉強会を主催し、オープンラボ備後にも所属。『Software Design』誌で、データベースに関する連載「RDBアンチパターン」などを執筆。
ブログ:そーだいなるらくがき帳