managing engineering teams
TRANSCRIPT
‣ Currently lead Engineering & Product Management at iMatchative
‣ Founded 2 startups: Hosting.com & ParkingCarma
‣ Led teams from 1 - 60 people
‣ Worked at 4 companies that were acquired
‣ Focus on Enterprise SaaS technology and products
CHRISTIAN MCCARRICKCTO, IMATCHATIVE
5
‣ What is an Engineering Manager?
‣ Skills
‣ Managing - The HR Basics
‣ Hiring
‣ Firing
‣ Being a Good People Manager
‣ Being a Good Project Manager
‣ Strategies for Working with your Boss
‣ Student Scenarios
AGENDA
6
‣ Understanding of the engineering manager role
‣ Structure for proper and effective one-on-one meetings
‣ How to set goals and team direction
‣ Hiring, firing, reviews and other HR requirements
KEY TAKEAWAYS
7
A Gallup poll of more 1 million employed U.S.
workers concluded that the No. 1 reason people
quit their jobs is a bad boss or immediate
supervisor.
Managing an Engineering Team
WHAT MAKES A GOOD ENGINEERING MANAGER
1. Amazing People Manager
2. Business-minded Strategist
3. Flawless Project Manager
4. Talented Technologist
List compiled by Kate Matsudaira (http://katemats.com)
13
MAIN RESPONSIBILITIES:
WHAT MAKES A GOOD ENGINEERING MANAGER
1. Be a good coach.
2. Empower; don't micromanage.
3. Be interested in direct reports, success and well-being.
4. Don't be a sissy: Be productive and results-oriented.
5. Be a good communicator and listen to your team.
6. Help your employees with career development.
7. Have a clear vision and strategy for the team.
8. Have key technical skills so you can advise the team.
15
WHAT EMPLOYEE’S VALUED MOST ACCORDING TO GOOGLE’S PROJECT OXYGEN:
HR BASICS
1. You must enforce a zero tolerance policy on any disrespectful behavior. No Exceptions!
2. As a manager, the team will look to your example. Be a positive role model.
3. When in doubt about anything ask HR, Legal and/or your boss. Their job is to support you.
4. Treat anything your employees tell you as confidential. Do not lose their trust.
19
ABSOLUTE REQUIREMENTS
HR BASICS
1. Have difficult conversations as soon as possible. Waiting will only make a bad situation worse.
2. People will push and prod to discover your boundaries. Knowing when to stand back and when
to stand firm is half the battle.
3. Occasionally someone will push too far. When they do, you have to show a rough edge or you’ll
lose authority with your team.
4. It is ok to include your boss or HR in any difficult meetings.
5. Always document everything.
20
TIPS
HR BASICS 22
YOU’RE THE ONE WHO MAKES HIRING AND
FIRING DECISIONS. EVERYTHING THAT
HAPPENS ON YOUR TEAM IS YOUR RESPONSIBILITY.
HIRING - RECRUITING 26
1. Be an expert
a. Stack Overflow
b. Quora
2. Engineering Blog
3. Give Talks / Meetups
4. Hackathon
5. Open Source Tools, etc.
OUTBOUND RECRUITING
INBOUND RECRUITING
1. Job Boards
a. LinkedIn
b. Careers 2.0
2. Recruiters
3. Cold Contacting
HIRING - RECRUITING
Required Skills:
• Proficient in Mac-based Photoshop, ImageReady/Fireworks, Illustrator and
Dreamweaver.
• Thorough understanding of the elements of good design, HTML production and
web process.
• Will be held accountable for the technical accuracy of their own work.
• Able to complete tasks independently and as part of a team.
• Possess effective communication of ideas/development of presentation skills.
• Ability to manage deadlines and production scheduling on numerous,
concurrent projects.
• Perform effectively in a demanding work environment and show resiliency to
stress.”
28
JOB POSTING - BAD
HIRING - RECRUITING
You
• Love seeing the world through someone else’s eyes and building an interface that fits their
mental model of the world.
• Are anxious to work on a variety of platforms and products (iPad, iPhone, Android, web
app, thick-client desktop, etc.)
• Can tell the story of a product or service with sharp copy and crisp imagery.
• Sketch out your ideas on paper before you dive into your prototyping tool of choice
(Photoshop, Illustrator, HTML & CSS)
• Know which details matter and how to push back and say “no.”
• Communicate your designs with developers and managers using the appropriate media
and fidelity.
• Think that copywriting is crucial to building a great UI.
• Can’t wait to see real people use your designs in usability studies — even if it makes you
grit your teeth.”
29
JOB POSTING - GOOD
HIRING - RECRUITING
1. First impressions count!
- Do not be late for a phone screen or interview
- Make sure to have someone properly greet people for an interview.
2. Use an application tracking system (like Greenhouse) or a Wiki to track candidates
3. Must respond extremely quickly - at every stage. < 24 hours.
4. Try informal meetings out of the office for initial meet and greets. Less pressure involved.
30
TIPS
HIRING - INTERVIEWING 32
HIRE FOR CULTURE FIRST
ABILITY TO SOLVE PROBLEMS SECOND
AND SPECIFIC SKILLS THIRD
HIRING - INTERVIEWING
- Make the candidate feel comfortable.
- Have an interview plan for each open position.
- Make sure different people do not ask the same questions.
- Do pair interviews.
- Have a dedicated laptop/computer hooked up to a monitor fully loaded with multiple developer
tools: Eclipse, PyCharm, Emacs, etc.
- Have the candidate work on real world problems.
35
TIPS
HIRING - INTERVIEWING
- Are you a US Citizen? - instead ask if they are legally allowed to work in the US
- What religion do you practice?
- How old are you?
- Do you have any children?
- Do you have any disabilities?
- Have you ever been arrested?
- Are you married?
- lots more.
36
THINGS YOU CAN NEVER ASK IN AN INTERVIEW
HIRING - MAKING AN OFFER
1. Do the work upfront - Have a compensation range (stock, equity, bonus, etc.) for the job
established when you write the job description
2. Don’t blow your budget to get a deal done and don’t skew the existing comp table
3. Be creative with title, work-from-home, perks, etc.
4. Have an offer ready with 24 hours if you decide to proceed (or have an offer ready before they
leave your office if you want to be aggressive. Always Call First!
5. Yes - References are mandatory. Get peers as well as supervisor
6. Have a document with all benefits, perks and compensation fully explained. (include stock
percentages, strike price, etc.)
38
TIPS
HIRING - MAKING AN OFFER
- Male candidates almost always tend to negotiate for their offer
- Female candidates are much less likely to negotiate
39
NOTE ON MALE VS. FEMALE CANDIDATES
HIRING - ON-BOARDING
- Include all needed confidentiality forms attached to the offer letter.
- Have all of their accounts ready to go before they start work (email, chat, wikki, git, etc.)
- Give them a reading list of things to prepare for before their first day
- Never have people start too early on their first day (10:00 works well)
- Make sure they can be productive from day one.
- Assign a “buddy” to the new employee for the first week.
- Pair-program for the first two weeks
44
ON-BOARDING STARTS THE SECOND THEY SIGN THE OFFER
FIRING 47
ILLEGAL REASONS
. in harassment based on or discrimination against your “race, religious creed, color,
national origin, ancestry, physical disability, mental disability, medical condition, marital
status, sex, age, or sexual orientation” [California Fair Employment & Housing Act; Title VII
of the Civil Rights Act of 1964]
. in retaliation for your blowing the whistle on illegal or improper conduct [California Labor
Code 1102.5; California Health & Safety Code 1278.5; etc.]
. in retaliation for your taking family medical leave [California Family Rights Act; U.S. Family
Medical Leave Act]
. in retaliation for your applying for workers’ compensation for a work-related injury
[California Labor Code 132a]
. in retaliation for your union activity or participating in union investigations [National Labor
Relations Act]
. for participating in an investigation for discrimination or harassment [California Fair
Employment & Housing Act; Title VII of the Civil Rights Act of 1964]
FIRING 48
LEGAL ISSUES
- Please talk to your HR and or legal department prior to letting any employee go.
- Good documentation goes a long way in mitigating an wrongful termination suit.
- So does not being a jerk!
FIRING 49
REASONS
- There are three main types of termination:
- For cause
- Not for cause
- Layoff
- Each type has its own specific legal nuances.
FIRING 50
REMEDIATION
- Performance plans
- Give feedback early and often
- The employee should not be surprised unless it is for cause.
- Working at a startup is slightly different as there are much fewer resources available
FIRING 51
HOW TO DO IT
The direct manager should always be the one to tell the employee!
- A second person should also always be in the room (HR, Legal, your boss, etc.)
- HR should have all the legal paperwork required by law ready to go
- The employee is entitled to their last paycheck and any/all vacation bonus payments
- Severance pay is optional (consult with your legal and HR team for your specific policy)
- In most cases the employee should leave immediately after being told
PEOPLE MANAGEMENT 55
GOALS
- Set both team and individual goals
- Make sure the goals are aligned with the company strategy / vision
- Make sure they are announced publicly (This makes people more accountable)
- Include professional development items as goals (attending workshops, meetups, etc.)
“Generally, people who think one-on-one
meetings are a bad idea have been victims of
poorly designed one-on-one meetings.” - Ben
Horowitz
Managing an Engineering Team
PEOPLE MANAGEMENT - ONE-ON-ONES
1. They are NOT a status update or project meeting. Use stand-ups and weekly emails for that.
2. Get personal (ask about hobbies, family, etc.)
3. Use this time to coach
4. Work on professional development items
5. Do an ad-hoc mini performance review
6. Always try to read between the lines and watch for reactions and moods
61
WHAT TO DO
PEOPLE MANAGEMENT - ONE-ON-ONES
63
⌚FIRST PERSON: 10 MINSECOND PERSON: 10 MIN
1. Take turns being the employee and the
manager.
a. Person with the lower letter first
name goes first as manager
2. Perform a quick one-on-one with each
other. When you are the employee, use
real world examples from your company
STRUCTURE
TASK
PAIRS
PROJECT MANAGEMENT
MANAGEMENT LESSONS
‣ DO:
‣ Communicate the most important issues / tasks for your team
‣ Know what every engineer is working on
‣ Be the tiebreaker when teams can’t (or won’t) decide
‣ Remove yourself from being the bottleneck
‣ DON’T
‣ Don’t get bogged down in fixing bugs or coding new features
‣ Micromanage
67
PROJECT MANAGEMENT
BE A SH!T UMBRELLA FOR YOUR TEAM‣ Keep all distractions at bay
‣ Your job is to maximize the
time they stay in “the zone.”
68
PROJECT MANAGEMENT
COMMUNICATION
‣ Agile project management tools (JIRA, Pivotal, Trello, Asana)
‣ Internal wiki (Atlassian Confluence)
‣ Internal chat (HipChat, IRC)
‣ Daily Standups
‣ Weekly team meetings
69
HOW TO WORK WITH YOUR BOSS
- Over communicate. Your boss should never have to ask you status
- Require your team to give you brief weekly status updates
- use iDoneThis or 15five.com
- Give your boss weekly status updates
- Highlights from the current week and top todos for the next week
- Include any business KPIs that he/she is interested in. (every boss has their favorites)
- Be prepared to justify the ROI for all requested expenses (staff, software, etc.)
75
WHAT TO DO
RESOURCES
- http://popforms.com
- http://atlassian.com
- http://greenhouse.io
- http://leadingsnowflakes.com
- http://15five.com
- http://idonethis.com
- http://trello.com
- https://asana.com
- https://slack.com
80