You are currently viewing Engineering and Tech Due Diligence for VCs

Engineering and Tech Due Diligence for VCs

  • Post author:
  • Post category:Product

This post is a complementary check-list for these SLIDES HERE.

Tech

  1. 4 key metrics
    1. Lead time for changes (the time it takes to go from code committed to code successfully running in production)  – good is less than an hour
    2. Deployment frequency – good is releasing changes multiple times per day
    3. Mean time to restore from a failure – good is less than an hour
    4. Change fail percentage – good is less than 15%
  2. Automated tests? Testing pyramid – Unit, integration, functional.
  3. Code reviews?
  4. Continuous integration and automated deployment pipelines? Tests, code coverage, code quality metrics, complexity metrics included?
  5. One-click rollbacks?
  6. Infrastructure – Cloud Provider? E.g. AWS, Google Cloud
  7. Monitoring – infrastructure and exceptions? E.g. Sentry, NewRelic
  8. Alerting? E.g. OpsGenie
  9. Logging? E.g. Papertrail
  10. Infrastructure as code? E.g. Terraform, Docker, Kubernetes

Code

  1. Hireable stack? Is it a niche technology or plenty of talent? Onboarding speed?
  2. Architecture – monolith, micro services, serverless? Apps – native or not?
  3. Clean code? SOLID principles?
  4. Using common patterns and known technologies?
  5. What is the bus factor of the modules of code?
  6. Modularisation – are abstractions in the right places e.g. around external integrations? 
  7. Domain driven design?
  8. Well structured APIs, e.g. RESTful?

Product

  1. Lean thinking? Building MVPs?
  2. Customer centric goals?
  3. Talking to end users? When was the last time? Last week? 
  4. Doing user testing? Preferably periodically e.g. have 4-5 users coming in every Tuesday and Thursday
  5. Can separate problem and solution domains?
  6. Data driven culture? Opinions matter less than data? “Feature X should increase conversion 10% from baseline, because every 10th user has a problem onboarding…”
  7. Using prototypes and mockups to iterate and gather user feedback?
  8. Ruthless prioritisation? Measuring customer impact?
  9. Defined clear KPIs? Single focus. KPIs should be comparative, understandable, usually a ratio or a rate, actionable.

Culture

  1. Flat organization? Innovation bandwidth is wide?
  2. Hire smart people and trust them? People want autonomy, mastery and purpose
  3. Have a planning cycle? For example weekly, monthly, quarterly plannings. Working proactively or reactively? Weekly sprints, daily standups, using a kanban board, prioritizing the backlog, having retrospective meetings.
  4. Teams autonomous in creating their plan and executing it? Seeking for feedback?
  5. During retrospective are they failing smart – learning from failures?
  6. People in the team working towards a single goal or KPI, treating roles as equals with special skill sets?
  7. Independent cross-functional teams? Teams have all of the competences to execute their plan e.g. product owner, engineers, design? Instead of layered interdependent teams like operations, back-end, front-end, design, business, etc. Avoids finger pointing and excuses.
  8. Product engineering mindset? Can an engineer in the team talk to the end user, figure out a test, what to build next, code and ship it and measure the impact?