Engineering Management Fundamentals 101
Engineering Management Fundamentals 101
Introduction
- The path to leadership > 领导之路
- Understanding the role > 理解角色
- Surviving the first 30 days > 度过前 30 天
Goals
Build skills and knowledge to better understand engineering management > 建立技能和知识,更好地理解工程管理
Shine a light on the true on the “hidden work” of management > 为管理的“隐藏工作”照亮一盏灯
Provide tools to help navigate the transition and early days > 提供工具,帮助应对过渡和早期
Provide insights into common situations > 提供对常见情况的见解
Origin story > 起源故事
- What does “practical” mean? > “实际”是什么意思?
Prerequisites > 先决条件
- > 3 years of experience > 3 年以上经验
- willingness to learn new things > 愿意学习新事物
Who is this course for?
- software engineers > 软件工程师
- engineers managers > 研发主管
Definitions > 定义
- to succeed in doing something, especially something difficult > 成功做某事,尤其是一些困难的事情
What is Engineering Management
Business of Technology
What does it take to deliver a product? > 交付产品需要什么?
- Business development > 商业开发
- Finance > 财务
- Customer support > 客户支持
- Marketing > 市场营销
- Human resources > 人力资源
- IT > 信息技术
- Technical writers > 技术作家
- Internationalization > 国际化
- Legal > 法务
Code > 代码相关
- UI engineer > UI 工程师
- Designers > 设计师
- Backend engineers > 后端工程师
- QA engineers > 测试工程师
- Infrastructure engineers > 基础设施工程师
- Database engineers > 数据库工程师
- Technical program managers > 技术项目经理
- Site reliability engineers > 网站可靠性工程师
- Security engineers > 安全工程师
- Product managers > 产品经理
- Prototypers > 原型设计师
- Engineers leaders > 工程师领导
Management is a Role Change
- Thinking like a manager
People | Business | |
---|---|---|
Compensation > 薪酬 | ||
Hiring > 招聘 | ||
Expenses > 费用 | ||
Project prioritization > 项目优先级 |
- Software engineering is more than code
Transitioning to Management
Careers
Motivations
Making the move
Interviewing
Career path
- ~27 million software developers in the world > 全球约 2700 万软件开发人员
- ~4.4 million software engineers in the US > 美国约 440 万软件工程师
- ~500,000 software engineering managers > 约 50 万软件工程管理人员
As long as you stay in the industry
- Individual becomes code less important > 代码不在那么重要
- Business more important > 商业更重要
- Impact becomes broader > 影响变得更广泛
- “Big picture” technical understanding > “大局”技术理解
- fewer roles > 更少的角色
Being a soft manager is not a promotion, it’s just a role change > 成为软件管理人员不是晋升,而是角色转变
- It’s not a necessary career path > 这不是必要的职业道路
- It’s totally fine to stay as a software engineer > 作为软件工程师完全没问题
Roles Engineering Managers Play
- Coach > 教练
- Cheerleader > 啦啦队长
- Therapist > 治疗师
- Mentor > 导师
- Party planner > 派对策划者
- Social butterfly > 社交蝴蝶
- Rubber duck > 橡皮鸭
- Peacemaker > 和事佬
- Shot caller > 决策者
- Speaker of the house > 讲话者
- Notetaker > 记录员
- Project manager > 项目经理
- Salesperson > 推销员
You will not be good at every role.
Motivations to Become an Engineering Manager
- Common motivations
- Control > 控制
- Less control than before > 比以前控制力更小
- Software engineers have more fine-grained control > 软件工程师有更精细的控制
- You can’t “make” anyone do anything > 你不能“让”任何人做任何事
- Money > 钱
- Managers don’t always get paid more > 经理并不总是拿到更多的钱
- Fewer roles available > 更少的角色可用
- Less job security > 更少的工作安全
- Prestige > 声望
- Respect is earned > 尊重是赚来的
- You’ll start at zero > 你将从零开始
- Management is role change > 管理是角色转变
- Impact > 影响
- Less tangible > 更不可触摸
- Takes a long time to see > 需要很长时间才能看到
- More scrutiny > 更多的审查
- Growth > 成长
- Takes time > 需要时间
- Outside of your control > 在你的控制之外
- One of the most satisfying aspects > 最令人满意的方面之一
- Challenge > 挑战
- Always learning something new > 总是学到新东西
- Control > 控制
Ask an Engineer Manager
- 最初也是由于意外(有人离职)才成为管理者
- 现在是因为喜欢跟人打交道
- 成为管理者之后,比起代码缩进、使用什么框架,更关注的是这些新框架是否能带来更多的价值,集成新框架的成本是多少,我们当前的痛点是什么,新框架能否解决这些痛点
Truths about Engineering Management
- You will be less technical > 你会变得不那么技术
- Micromanaging is easy, trust is hard > 微观管理很容易,信任很难
- No one will tell you how to spend your time > 没有人会告诉你如何花时间
- No one will tell you what to do > 没有人会告诉你该做什么
- Leadership is lonely > 领导是孤独的
People Leadership
People are squishy > 人是变化无常的
Being an engineering manager: Are you sure? > 成为工程管理人员:你确定吗?
You have to be better > 你必须更好
“You manage things; you lead people.” - Grace Hopper
- There are many paths to management > 有许多通往管理的道路
- Engineering management is difficult > 工程管理是困难的
Exercise: Self Reflection and the Path to Leadership
Becoming an Engineering Manager
Paths to Management
- Accidental > 意外
- Rapidly growing company > 快速增长的公司
- EM leaves > 工程管理人员离职
- Team lead -> EM > 团队领导 -> 工程管理人员
- Deliberate
- Apply directly for roles > 直接申请角色
- Company growth plans > 公司发展计划
- Role transition over time > 随着时间的推移角色转变
Management as a Skill
- You will have to learn new skills
unconsciously incompetent > 无意识的不称职 -> consciously incompetent > 有意识的不称职 -> consciously competent > 有意识的能干 -> unconsciously competent > 无意识的能干
Critical Skills for Management
Communication > 沟通
- Almost everything distills down to communication > 几乎所有事情都归结为沟通
- Written > 书面
- email, memo, project docs, Slack/Teams > 电子邮件,备忘录,项目文档,Slack/Teams
- Verbal > 口头
- 1:1’s, meetings, video calls > 1:1,会议,视频通话
People > 人
- Conflict resolution > 冲突解决
- Growth > 成长
- Mentoring > 指导
- Coach > 教练
- Team cohesion > 团队凝聚力
- Hiring > 招聘
- Recruiting > 招聘
Business > 商业
- Budgeting > 预算
- Project management > 项目管理
- Long-term strategy > 长期战略
Technical > 技术
- Understanding code without writing it > 不写代码也能理解代码
- Necessary to understand team challenges and make informed decisions > 必须了解团队的挑战,并做出明智的决策
- Articulate strategy and tradeoffs to partners > 向合作伙伴阐明战略和权衡
Building up your skills > 建立你的技能
- Talk with your manager about your goals > 与你的经理讨论你的目标
- Talk with other managers internal/external > 与其他经理内部/外部交谈
- Ask your manager and managers for tips for how to move into management > 询问你的经理和经理如何进入管理的技巧
- Books > 书籍
- Conferences > 会议
- Observation > 观察
- Mentor > 导师
- Take on proximate roles > 承担近距离角色
Exercise: Self Skill Assessment
Finding a Role & Interviewing
Interviewing for a Manager Role
- Finding a role > 找到一个职位
- Internal roles > 内部职位
- familiar culture > 熟悉的文化
- familiar domain > 熟悉的领域
- work towards over time > 随着时间的推移工作
- low availability > 低可用性
- External roles > 外部职位
- have to sell yourself > 必须推销自己
- tailor your resume for the role > 为职位量身定制你的简历
- may have to move to smaller companies > 可能要搬到较小的公司
- Internal roles > 内部职位
Looking for your First Role
- What to look for in a first role > 在第一个角色中要寻找什么
- Similar domain/language/technology > 相似的领域/语言/技术
- Healthy team size(6-10) > 健康的团队规模(6-10)
- Healthy org/company culture > 健康的组织/公司文化
- Manager willing to invest in you > 经理愿意投资于你
- Keywords to avoid > 避免的关键字
- seasoned > 经验丰富
- experienced > 有经验
- senior > 高级
The Manager Interview
- Leadership > 领导力 j
- Describe your management philosophy > 描述你的管理哲学
- What does “influence without authority” mean? > “无权影响”是什么意思?
- Partnership > 合作
- How do hold your partners accountable? > 你如何让你的合作伙伴负责?
- How do deliver results for your partners? > 你如何为你的合作伙伴提供结果?
- Technical > 技术
- What is your strategy for project estimations? > 你的项目估算策略是什么?
- How do you think about prioritization? > 你如何看待优先级?
Interviewing Takeaways
- Many skills are required to be a good leader > 要成为一名优秀的领导者需要许多技能
- You should build up stills in advance > 你应该提前建立技能
- Take advantage of opportunities > 利用机会
- The interview is a measure of your potential > 面试是你潜力的衡量标准
The Role of a Manager
What Do Manager Do
As an engineering manager at a fast-growing startup, I spend most of my time coding and hiring. > 作为一家快速增长初创公司的工程管理人员,我大部分时间都在编码和招聘。
As an engineering manager at a mid-sized company, I spend most of my time mentoring and doing project management. > 作为一家中型公司的工程管理人员,我大部分时间都在指导和进行项目管理。
As an engineering manager at a FAANG company, I spend most of my time chilling and eating free food. > 作为一家 FAANG 公司的工程管理人员,我大部分时间都在放松和吃免费食物。
Size of team > 团队规模
experience > 经验
scope > 范围
relation to the business > 与业务的关系
size of the company > 公司规模
role of the team > 团队角色
What are EM’s responsible for? > 工程管理人员负责什么?
- Business
- People
Engineering Manager Responsibilities
- Management
- Hiring > 招聘
- Terminations > 终止
- Compensation > 薪酬
- Leave of absences > 请假
- Vendor management > 供应商管理
- Purchasing > 采购
- Expenses > 费用
- Filing tickets > 提交工单
- Engineering
- Charter > 宪章
- Communication > 沟通
- Long-term strategy > 长期战略
- Work prioritization > 工作优先级
- Context setting > 上下文设置
- Partner and stakeholder management > 合作伙伴和利益相关者管理
- Project management > 项目管理
- People
- Recruiting > 招聘
- Team development > 团队发展
- Performance coaching > 绩效辅导
- Team health > 团队健康
- Conflict management > 冲突管理
- Onboarding > 入职
Daily, Weekly & Yearly Tasks
Business | People | |
---|---|---|
Day to day | Talk to people | talk to people |
Week to week | email/slack/docs/admin tasks | ensure team is unblocked |
Quarter to quarter | OKR’s and others objectives | exam team processes/growth |
Year to year | Long-term strategy and vision | hiring |
- Your role is to manage the team in the context of the business
Meetings
How do EM’s spend their time > 工程管理人员如何花费他们的时间
- Meetings > 会议
Meeting types > 会议类型
- 1:1’s > 1:1
- Project meetings > 项目会议
- Planing/strategy > 计划/战略
- All hands > 全员会议
- Team meetings > 团队会议
- Social events > 社交活动
- Retrospectives > 回顾
- Staff meetings > 员工会议
- Stand ups > 站立会议
Purpose of meetings > 会议目的
- Planning > 计划
- Brainstorming > 头脑风暴
- Alignment / making a decision > 对齐/做决定
- Morale / culture > 士气/文化
- Sharing information > 分享信息
- Receiving information > 接收信息
Exercise: Meeting
Purpose of a Meeting
Section Recap
- What do EM’s do: it depends but people are at the center > 工程管理人员做什么:这取决于人们是中心
- Take advantage of every meeting > 利用每次会议
- Managing your time is a critical > 管理你的时间是至关重要的
Your First 30 Days
What is the Different
Surviving engineering management
- Your first 30 days
- Mistakes to avoid
- Managing up
Perspective > 观点
- Staff meetings aren’t as full of secrets as you thought they’d be > 员工会议并不像你想象的那样充满了秘密
- You know how much everyone on your team makes > 你知道你团队中每个人赚多少钱
- Your calendar is all meetings > 你的日历都是会议
Team > 团队
- Your manager is higher up > 你的经理更高
- You’re responsible for running a lot of meeting now > 你现在负责运行很多会议
- Your “first team” are other managers > 你的“第一个团队”是其他经理
What Should You Be Doing
Listen
be curious
running meetings
- 1:1’s
- team meeting
- team standup
meeting partners
examining processes
might have to hire
Mistakes to Avoid
- Micromanaging
- Over-promising
- Trying to stay too close to the code
- Over thinking decisions and second guessing
- Not letting go
- Putting too much pressure on yourself
Managing Up
What are their expectations? > 他们的期望是什么?
What is the important to them right now? > 他们现在最重要的是什么?
What information do they care about? > 他们关心什么信息?
What can they help with? > 他们能帮忙什么?
All can be answered on 1:1’s / staff meetings > 所有问题都可以在 1:1/员工会议上回答
Don’t try to do too much in the beginning > 不要在开始时做太多事情
Course Takeaways
Software engineering is more than code
Engineering management is a role change
There are many paths to management
It’s important to have the right motivations
Engineering management is difficult
Many skills are required to ba a good leader
You
canshould build up skills in advanceTake advantage of opportunities
The interview is a measure of your potential
To succeed in doing something, especially something difficult > 成功做某事,尤其是一些困难的事情