Apitore blog

Apitoreを運営していた元起業家のブログ

[EMBook] (仕切り直し)より良いエンジニアリングマネージャーになるために

前回までの活動

blog.apitore.com blog.apitore.com

なぜ仕切り直すのか?

ChatGPTを使う場合、英語の方が精度が良いということを思い出したから。

新しい目次

ということで、ChatGPTに聞いてみた。

Q. Could you help me to write a book titled "How to become a great engineering manager"? What ToC is needed?

Certainly! Writing a book on "How to Become a Great Engineering Manager" is a valuable endeavor. Here's a suggested table of contents (ToC) to help you structure your book:

**Table of Contents**

**Introduction**
1. Understanding the Role of an Engineering Manager
2. The Importance of Effective Engineering Management

**Part I: Preparing for the Role**
3. Transitioning from Engineer to Manager
4. Developing Leadership Skills
5. Building Technical and Industry Knowledge

**Part II: Managing Teams**
6. Team Building and Team Dynamics
7. Hiring and Onboarding Engineers
8. Motivating and Retaining Talent
9. Handling Team Conflicts

**Part III: Project and Product Management**
10. Setting Clear Goals and Objectives
11. Project Planning and Execution
12. Product Development and Release Cycles
13. Prioritization and Time Management

**Part IV: Communication and Collaboration**
14. Effective Communication for Managers
15. Cross-functional Collaboration
16. Stakeholder Management

**Part V: Personal Development and Growth**
17. Continuous Learning and Skill Development
18. Mentoring and Coaching
19. Balancing Work and Life

**Part VI: Challenges and Solutions**
20. Dealing with Technical Debt and Legacy Systems
21. Handling High-Stress Situations
22. Adapting to Rapid Technological Changes

**Conclusion**
23. The Ongoing Journey to Greatness

**Appendices**
A. Recommended Reading and Resources
B. Sample Templates and Checklists
C. Interviews with Experienced Engineering Managers

Remember to include real-world examples, case studies, and practical advice throughout the book to make it more engaging and helpful for your readers. Good luck with your writing project!

すでに良書の予感がする。

第1章 エンジニアリングマネジメントの基礎

全体の目次

blog.apitore.com

第1章 エンジニアリングマネジメントの基礎

目次

  • エンジニアリングマネジメントの役割と重要性
  • エンジニアリングマネージャーのスキルセットと資質

エンジニアリングマネジメントの役割と重要性

ChatGPTに聞いてみた。

エンジニアリングマネジメントの役割と重要性


エンジニアリングマネジメントはエンジニアリングに関するプロジェクトを成功に導くために重要な役割を持ちます。たとえば

  1. プロジェクトの調整 - プロジェクトの計画を見渡し、スケジュールとリソース配分を決める。プロジェクトが決められた予算の中で期限内に完了することに対してコミットする。
  2. チームのリーダーシップ - エンジニアチームをリードし、動機づけを行う。チームがイノベーションを起こしたり、問題を解決したりできるように、相互に協力し合える環境とマインドセットを育てる。
  3. リスク管理 - リスクを特定し、リスクを緩和する。潜在的な挑戦を評価し、ネガティブなインパクトを最小化するように戦略を立てる。
  4. 品質保証 - 高い水準を維持することは必須である。品質をコントロールするプロセスを設計する。与えられた要件を満たし、顧客の期待に応え、プロダクトやプロジェクトに対してコミットする。
  5. リソース配分 - 効率的にリソースを配分する。リソースとは、個人、物資、施設を指す。プロジェクトのリターンを最大化し、コストは最小化する。
  6. コミュニケーション - ステークホルダーとコミュニケーションする。ステークホルダーとは、依頼主、上司、チームメンバーを指す。明確で透明性の高いコミュニケーションをする。
  7. イノベーションとテクノロジー - 業界のアップデートを常にキャッチアップする。トレンド、最近の流行技術など。そしてその知識をチームや組織に導入し、イノベーションを加速させる。
  8. コストコントロール - 予算を管理する。さもなくば利益は縮小し、会社は経済的に安定性を失う。
  9. コンプライアンス - 法や規制には従う。エンジニアリングプロジェクトがコンプライアンス違反をおこしていないことを保証する。コンプライアンス遵守によって、会社の良い評判を維持する。
  10. 戦略立案 - 会社のゴールを達成するために、会社全体を成功に導くために、戦略を立案する。

上記は ChatGPT の出力を私が翻訳したものだ。全体的に同意できる。

ChatGPT が見落としている点はないだろうか?

エンジニアリングマネージャーの仕事は上記以外にも色々とあるが、「会社におけるエンジニアリングマネジメントの役割」としては、上記の記述は適切だと思った。エンジニアリングマネージャーは会社の成功にコミットする。成功のために、戦略を立てる。各部署にはそれぞれ会社の中で役割があり、会社の成功と戦略を自身の役割の中で再構築して実行に移す。

今後の章でグレードごとのエンジニアリングマネジメントの職責が明らかになっていくはずなので、上述以外のエンジニアリングマネジメントの仕事はそこで明らかになるだろう。

エンジニアリングマネージャーのスキルセットと資質

ChatGPTに聞いてみた。


エンジニアリングマネージャーが保有するスキルや資質は以下があります。

  1. 技術に精通していること - エンジニアリングマネージャーには強いエンジニアとしての経験が必要です。この経験によってプロジェクトの技術的複雑性を理解することができ、チームメンバーを尊重できるようになります。
  2. リーダーシップ - 効率的なリーダーシップは必須です。チームに影響を与え、動機を与え、導くことでプロジェクトのゴールを達成します。そのためには明確なビジョン、方向性の提示、そしてチームメンバーへの支援が必要です。
  3. コミュニケーションスキル - コミュニケーションは必須です。アイデアを共有したり、指示を与えたり、期待値を明確にするために役立ちます。よく聴き、よく伝える。両方のスキルが必要です。
  4. 問題解決 - 問題の特定および解決をする能力が必要です。クリティカルシンキング(論理的思考)およびシステム思考が必要です。
  5. 意思決定 - 上位から降りてきた意思決定を迅速にシェアします。技術的な懸念事項とビジネス目標、プロジェクトの制約事項の中でバランスをとります。
  6. プロジェクトマネジメント - プロジェクトマネジメント手法やツールに精通する。計画立案、スケジュール管理、プロジェクトの全体把握について効率的に行います。
  7. チームビルディング - チームを作り、維持する。ハイパフォーマンスなチームを作る。採用、育成。組織の人材を強化します。
  8. 柔軟さ - エンジニアリング業界の変化は早いです。状況に適応し、新しいことを常に学ぶ必要があります。
  9. 時間管理 - 多くのタスクや優先事項が存在します。時間管理を行い、プロジェクトを予定通り進行させ、提出期限に間に合わせます。
  10. 衝突の解決 - チームで衝突は起きます。建設的に衝突を解消することで、健全なチームを維持します。
  11. 戦略思考 - 会社の長期目標や戦略に寄り添って、様々な観点でチームの努力をゴールに向かわせます。
  12. 顧客志向 - 顧客の要求を理解し、顧客の要求を満たします。顧客満足度を重視します。
  13. 予算管理 - 予算とリソースを管理します。コストをコントロールし、経営計画を行います。
  14. 高い倫理観 - 高い倫理観を持ち、誠実であります。それが信頼を構築することに繋がります。
  15. リスク管理 - プロジェクトの進行をスムーズにするため、リスクを特定し、リスクを軽減するスキルを持ちます。

上記がChatGPTの出力を私が翻訳したものだ。

これについても考えてみたが、全面的に同意できる。一つ上で書いた「エンジニアリングマネジメントの役割」に沿った内容でエンジニアリングマネージャーに必要なスキルが書かれている。

じゃあ実際どういうスキルなの?

という問いには、私の経験の中で役立ったいくつかの本を紹介できる。先日ちょうど社内でエンジニアリングマネジメントにおすすめの図書を紹介したのでこちらでも紹介する。

エンジニアリングマネジメント

プロダクトマネジメント

なお、エンジニアリングスキルについてもいくつか良い本があるので、どこかでまとめたい。私が過去に読んでよかった本は以下のページにもまとめている。

blog.apitore.com

レファレンス

ChatGPTの回答 https://chat.openai.com/share/8477a0a1-e532-4a86-864c-1b5a741c9106

より良いエンジニアリングマネージャーになるために

LinkedInによると、私がエンジニアリングマネジメントをやり始めて3.5年も経ったようだ。これまでに多くの挫折と困難を経験した。そんな私の短いエンジニアリングマネジメントの経験の中で言えることは、エンジニアリングマネジメントは専門技術であるということだ。エンジニアが SOLID 原則やDDDを学ぶように、エンジニアリングマネジメントも学ばないといけないことがたくさんある。

自分が VPoE や CTO になるために、エンジニアリングマネジメントについてもっと勉強しよう。仮に本が書けるレベルになれば、エンジニアリングマネジメントについてかなり詳しくなったと判断できるのではないか?

ということで ChatGPT に目次を書いてもらった。

この内容に沿って記事を書いていけば、必然的に自分の中で知識が怪しいところや経験が乏しいところが見えてくるはずだ。それらを追加で勉強し、まとめた内容を文章にする。この一連の活動によって、私の中にエンジニアリングマネジメントに対する知識体系が出来上がるはずだ。

1週間に1章・・・書く・・・。

続きを読む