即戦力に!開発組織にジョインしたらまずキャッチアップすべき16のポイント
はじめに
これはオープンロジアドベントカレンダー24日目の記事です。
私ごとではありますが、2024年2月 株式会社オープンロジに入社いたしました。転職回数は3回目(出戻り含む)で、良し悪しは別として転職には慣れたものの未だに転職後に活躍するにはどうすれば良いかよく分かっておりません。同じ悩みを抱えている方も多いのではないでしょうか?
そこで今回は転職などにより新たに開発組織にジョインした際に即戦力となる方法をキャッチアップに着目して執筆したいと思います。
なお筆者はプレイヤーとして転職しているため、EMなどマネジメント層として転職する場合にキャッチアップすべきこととしては内容が薄いかもしれないですが悪しからず。
なぜキャッチアップが重要なのか?
キャッチアップすべき!と一言に言っても、その重要性が明確でなければモチベーションも湧かないと思いますので先に転職後のキャッチアップの重要性を記載させていただきます。
キャッチアップが重要な理由を一言で表すならば即戦力化です。転職先にて早期から組織やサービスに貢献することにより自分への評価が高まり、よりよい待遇や地位, 労働環境, 人間関係の獲得に繋がります。
その重要性をさらに分解して説明すると以下の通りとなります。
- 業務の効率化
キャッチアップによって、組織内での業務フローやルールを把握できるため、効率的に業務を進められるようになります。特に大規模な開発組織では、共通の開発プロセスやツールが存在するため、これを理解することで他メンバーとのスムーズな連携が可能になります - 信頼関係の構築
キャッチアップを早めに完了することで、チームメンバーや他部署の関係者と円滑なコミュニケーションを図れるようになります。新しい組織で信頼関係を築くためには、自分の役割を理解し、期待される貢献を果たす姿勢が重要です。キャッチアップの姿勢を見せることで、積極的かつ責任感のあるメンバーとして認識されやすくなります - 自己成長とキャリアの向上
新しい環境でのキャッチアップは、これまでの経験をさらに強化し、自分のスキルセットを拡張する絶好の機会でもあります。新しい技術スタックやプロセスに触れることで、知見を広げ、自己成長を促進することができます
早期のキャッチアップは、エンジニアとしての活躍の土台を築く最初の一歩です。スピード感を持って新しい環境に適応し、必要な知識や技術を吸収することで、短期間で即戦力としての存在感を発揮できます。これにより、周囲からの信頼を得やすくなるだけでなく、プロジェクトへの貢献度も増し、チーム内での自分の価値を証明することができるのです。キャッチアップが早いほど、活躍の場も広がりやすく、キャリアのスタートをより強固なものにできます。
人・組織
新しい組織に入ると、技術的な面だけでなく、関わる人や組織の文化を理解することがとても重要です。この「人・組織」に関するキャッチアップによって、コミュニケーションがスムーズになり、組織内での信頼関係が築きやすくなります
以下のポイントを意識することで、組織に早くなじみ、安心して働ける環境を整えましょう
組織文化
組織の価値観や雰囲気はそれぞれ異なります。たとえば、コミュニケーションがオープンであるか、形式的であるか、フラットな構造か階層的かなどです。まずはその組織がどのような文化を大事にしているのかを理解し、自分の行動や姿勢を適応させていきましょう。定例のミーティングや交流イベントなどを観察すると、その文化が見えてきます
組織図と関係性
自分のチームが組織全体でどのような位置にあり、どの部署と関わるのかを知ることは、業務を進めるうえで重要です。組織図や役職リストを参照し、役割や責任者を把握しましょう。特に、頻繁にやり取りをする他チームやステークホルダーを把握しておくと、連携がスムーズになり、業務上の課題解決も早くなります
また、部署やチームが抱えているミッションを把握することで、相手の視点に立った発言・行動が起こしやすくなります
社内ルール
当たり前のことと蔑ろにしがちではありますが、社内ルールも確認しましょう。勤務時間やリモートワークの可否などは転職前から把握されているかと思いますが、出退勤のルールなど基本的なことでも前職とは異なる可能性が高いです。
また、使用しているツールや社内ポリシー(コンプライアンス、セキュリティガイドラインなど)も理解しておくことで、安心して業務に取り組むことができます
自分に求められる期待
新しい職場では、役職や役割に応じて求められる成果や期待が異なります。上司やチームリーダーと話し合い、業務での目標や期待される役割を把握しましょう。これまでの経験から活かせることもあれば、不足しているスキルもあるかと思います。今の自分には何が出来て何が出来ないのかを再認識することは自己成長に繋がります
また評価基準やフィードバックの頻度も確認し、自己成長やチームへの貢献に向けた行動ができるように準備を整えることは重要です
プロダクト・サービス
新しい組織で提供するプロダクトやサービスを理解することは、自分の業務の価値を実感し、ユーザーの視点に立って開発を進めるために欠かせません。この「プロダクト・サービス」に関するキャッチアップを行うことで、プロジェクトへの貢献がより効果的になり、チーム全体の成果にも繋がります
目的と存在意義
なぜこのプロダクトがつかられたのか、組織や社会にとってどのような役割を果たしているのかを把握することで、自分が携わる業務の意義が見えてきます。プロダクトがどのような問題を解決し、ユーザーや市場にどのような価値を提供するかを示しており、日々の業務がそれらにどう貢献するかを考える指針となります
また組織が目指している長期的な目標や社会的なインパクトを理解することで、日々の業務がどのように大きなビジョンに貢献しているのかを意識しながら働くことができます。ビジョンの共有はチームの一体感にも繋がります
ビジネスモデルと収益構造
プロダクトやサービスがどのように収益を上げるか、どのようなビジネスモデルに基づいているかを把握することは基本概念の理解に役立ちます
またビジネスとしての成果を測る指標や、これらの数値の改善がどのように目標達成に貢献するかを理解することは業務の理解にも繋がります
競合と市場環境
プロダクトやサービスの競合や市場での位置づけについても理解しましょう。ユーザーが何を求めていて、自社や競合はユーザーに対して何を提供しているのか、していないのかを理解することにより自社プロダクトやサービスが効率よく成長できる戦略的な開発の実現に繋がります
主要機能
プロダクトやサービスの全機能を把握するのは難しいです。そのためまずは主要機能から把握していき、そこから派生して機能を把握することで機能を抑えていくことができます
機能を把握することはサービスの理解に加えて、修正による影響範囲やコンフリクトの理解に繋がります
課題と改善点
プロダクトの課題と改善点にも目を向けましょう。現在の課題や、ユーザーかあら寄せられている改善要望を把握することで、プロダクトの品質向上やユーザー満足度の向上に貢献できます
開発
新しい開発組織に参加する際には、開発プロセスや技術的なルール、チームでの取り組み方についても理解することが重要です。この「開発」に関するキャッチアップを通じて、プロダクトの効率的かつ一貫した開発へ貢献できるようになります
開発プロセス
開発プロセスを理解することで、チームでの作業の進め方や流れを把握することができます。アジャイル開発やウォーターフォール開発など、組織の開発プロセスを確認することで、チームが目指すべきゴールと効率的なコラボレーションが可能になります。また、スプリントのサイクルやタスクの進行状況の管理方法も理解しておきましょう
技術スタック
プロダクトで採用されている技術スタックの把握は転職前から把握されているかとは思いますが、バージョンなど詳細に把握するようにしましょう。使用する技術を理解しておくことで、コーディングやデバッグがスムーズに行えるだけでなく、既存のコードやシステムを維持しやすくなります。
また技術選定の背景や意図も確認することで、将来の技術的な意思決定にも役立ちます
まだ身につけていない技術スタックが採用されている場合は自己成長のチャンスでもあります
アーキテクチャ
プロダクトのアーキテクチャを理解することで、システムの全体像や各コンポーネントの役割を把握しやすくなります。アーキテクチャの理解は、スケーラビリティやパフォーマンス、セキュリティの観点からも重要です。
またアーキテクチャに関する知識があると、効率的な機能開発や調査対応に役立ちます
コーディング規約
チームが共有するコーディング規約を理解することで、他のメンバーとコードのスタイルや品質を揃えることができます。CIにより自動で規約違反のチェックが行われる場合はそこまで意識せずに済みますが、自動化が行われていない場合は無駄にレビュアーのコストが嵩むことになってしまいますので、コーディング規約を把握していることはチーム全体の生産性の観点からも重要です
インシデント対応フロー
開発中やリリース後に発生する障害や不具合に対して、どのような対応フローが用意されているかを確認しておきましょう。インシデンと対応フローを理解しておくことで、迅速なトラブル対応が可能になり、サービスの信頼性を保つことができます。エスカレーションの方法や対応担当者の役割も把握しておくと、緊急時の対応が円滑に行えます
ログ
調査対応時やデバッグ時にログを確認したい場面は多々あります。各環境におけるログの確認方法を把握しておくことは非常に重要です。プロダクトがどのようにログを記録しているか、またログのどの部分を注視すべきかを把握することで、効率的な調査対応やデバッグが可能になります。またエラーや警告の通知先を把握することで、問題の早期発見と解決に貢献できます
ドキュメンテーション
開発に関するドキュメントや仕様書、技術資料などの管理方法を理解することで情報をスムーズに参照できるようになります。ドキュメントの管理場所や更新ルールを把握することで、他のメンバーとの情報共有がしやすくなり、開発や運用の効率が向上します
またジョイン後のキャッチアップした情報をドキュメントにまとめておくことで、将来エンジニアが新たにジョインした際に役立ちますので積極的にドキュメンテーションするようにしましょう
おわりに
新しい開発組織へ参加した際にチーム, プロダクト, 開発プロセスについてキャッチアップすることは、最初の一歩を成功させるために非常に重要です。ここでご紹介した内容を参考に、各分野の知識を身につけることで、スムーズに業務へ貢献できるようになります。また、プロジェクト全体の目標や方向性を理解しておくことで、自分の役割や価値がより明確に感じられ、開発に対するモチベーションも高まるはずです
キャッチアップは一度きりのものではなく、常に変化する環境に適応し続けるためのプロセスでもあります。今後も積極的に学びを深め、チームとの信頼関係を築きながら、プロダクトの成長に貢献していきましょう!
Discussion