You are a Director of Engineering, walking into a new company - where do you start?

Here's a 30 day plan that will cover all the tasks that you should consider. Some won't be relevant to your role or company, but many will be.

I prefer the readability of Mind Maps, so I created one using MindNode:

It's a work-in-progress (isn't everything?) so please download the latest version from github, where you'll also find it in PDF, PNG and markdown format.

The big three

The bulk of the tasks fall under Culture, Project Management and Engineering - and you'll see that there are as many tasks under Culture and Project Management as there are under Engineering.

That's deliberate - you'll need to focus as much on those as "pure Engineering tasks". In fact, at some companies, they will need more attention, and quickly. It's likely that you'll be filling the shoes of someone leaving a bit of a mess behind.

It's also deliberate that Engineering is #3 on the list.

Yes, you absolutely need to deal with culture first.

You'll find a recurring theme here. You're already a very technical person, but in this role you'll need to be a people person too - and a believable one.

You'll need empathy to be highly successful. Engineers can smell bullshit a mile away -and you may have walked into a culture where no-one is used to people who Tell Them Everything.

Reviewing your Project Management is #2 - you need to immediately get a firm grip on all of the projects under your control. There may be fires raging out of control already.

Trust me, your teams grasp on Engineering issues like coding standards, gitflow, CI/CD or DoD can wait a week or two.

Introducing yourself to the team

Before you join the company, ask the hiring manager to setup a meeting on your first day to meet the team. Ideally at 11am, with lunch catered afterwards to meet the team in a social setting. You'll only need 30 minutes.

At the meeting, in order to start gaining the trust of the team, be open and honest with them when you first meet.

  • Start with a brief run-through of your biography so that they can identify with you and trust your technical experience.
  • Explain your philosophy, and share your 30 day plan (below) so they know what to expect.
  • Highlight that your first task will be setup 1-1's with them all, so you can get their perspective on the status-quo.

Your first 30 days

Here is the same list in outline form, acting as an index and linked to relevant blog posts. It will help you even in summary form as you get started.

Good luck! Don't hesitate to ask questions.

Culture

Project management

  • Review existing process
    • Daily standups
      • Process
      • Who attends?
      • Who leads?
      • Who takes part?
      • Product owner?
    • Weekly product demos
      • Who attends?
      • Product owner?
      • Engagement?
    • SDLC process
      • Scrum
      • Kanban
      • Waterfall
      • What does Agile mean?
      • Historical data
    • Retrospectives
    • Planning sessions
    • Estimation
      • Historical data
      • Accuracy
      • Repeatability
    • Reporting
      • Weekly status report
      • Team utilization
    • Project / task prioritization
    • Requirements
      • How detailed?
      • How often do they change?
      • Acceptance criteria
    • Resource allocation and assignment
    • Billing and invoicing
    • Timesheets
    • Profitability
  • Review commitments
    • Existing deadlines
    • Ongoing projects
    • SOW’s
    • Legal commitment
    • Prioritization
  • Review PM role
    • Defines and runs workflow/process
      • SOW
      • Review
      • Retrospective
      • Approvals
      • Weekly reports
    • monitor team communication channels
      • Monitor morale
      • Raise issues
      • Servant leader
      • Remove impediments
    • PM’s more experienced balancing constraints, LOE, MVP etc
      • Free up & Focus Sr Engineers
      • review tools & processes
      • Responsible for (over) communication
      • Standardization of process
      • Identify Budget Constraints across projects
      • forecasting tools

Engineering

  • Review tools and processes
    • Branching
    • Pull requests
    • Code review
    • Architectural review
    • Technical debt
    • Build process
    • Deployment process
    • Dashboards
    • Engineering metrics and reports
    • Definition of Done
    • Communication tools
      • IM, e.g. Slack
      • Video conferencing, e.g. Zoom
    • Identify and measure churn
      • From requirements
      • From QA
      • From support
    • Infrastructure
  • Education
    • Brown bags
    • Pair programming
    • User groups
    • Meetups
    • Conferences
    • In-house training
    • Video course, e.g. Pluralsight
    • External training
    • Hackathons
    • Shared Library
      • Books
      • Whitepapers
      • e-books
      • Audiobooks
      • Podcasts
  • Review budget
    • Staffing
    • Equipment
    • Software
    • Training
    • Historical data

Product Management / Ideation

  • Review product lines
  • Meet product owners
  • Product demos
  • Product documentation
  • Product roadmaps

Recruiting / HR

  • Review onboarding process (100 point checklist)
  • Review Interview Process
    • Engineering
    • Support engineer
    • QA
    • PM
    • DevOps
  • Review Career Matrix
    • Career ladder
    • Salary bands
    • Define promotion steps
    • Roles and responsibilities
    • Annual salary reviews
    • Share simple bonus/profit-sharing formulae
      • Job type
      • Seniority
      • Experience
      • Location
  • Review existing staff
    • Salary
    • Last raise
    • Bonus
    • Career guidance and plans
    • Performance reviews
  • Develop hiring plan
    • Review project milestones
    • Prioritize needs
    • Budget approval
    • Recruiting sources
  • Review policy
    • Firing policy
    • Layoff policy
    • PIP policy
    • Resignation policy
    • WFH policy
    • PTO policy
      • Rollover
      • Capped
      • Gifting PTO

Cross team pollination

Triage

  • Review triage process
    • Gather data; request/response
    • Review of issue
    • Assign priority
      • Site priority
      • Issue severity
      • Time of day
    • Assign technical team
    • Create ticket
    • Communicate
    • Track
    • Report
    • Escalation process
  • Review Support Engineer Roles
  • One owner; QA, Support, DevOps?
  • Use appropriate tools; PagerDuty, OpsGenie etc

Quality Assurance

  • Review QA Roles
  • Review product-specific QA
  • Automated testing
    • Unit test coverage
    • Integration testing
    • Functional testing
    • Load testing
    • Performance testing
    • Installation/Update testing
    • Compatibility testing
  • Manual testing
    • Usability testing
    • Security testing
    • Focus groups

Have you read about our online community for Engineering Directors?