A comprehensive CTO checklist that technology leaders keep circling around, and the three main categories such as:
- People
- Processes
- Technology
CTO Checklist
People
Your team
- Develop your leaders
- The very best leaders develop their team to the extent that their leadership position can be successfully handed on to one of the team (Level 5 leadership) - Delegate to your leaders (more on this later)
- Stay in touch with your whole org
- Meet with individual teams, listen to what they have to say
- Do skip-level 1–1s with a broad range of your org - Lead with trust and transparency to get the best out of your team
Personal development
- Have a documented career ladder
- Have good definitions for each level of the ladder, including examples of meeting and exceeding expectations
- Technical training matrix with expectations for each role
- Management training program
- Ensure that every single person in your org has a career path and a development plan to help them get there
- Have a robust, transparent performance review process
- Set expectations that feedback will be given throughout the year — promptly and constructively. There should be no surprises at annual review time.
Exec team
- Invest in your relationship with key execs
- Understand key opportunities and challenges your company faces
- Contribute to company strategy
- Ensure tech strategy exists and supports company strategy
Delegation
- Be clear on what responsibilities you own and what you delegate
- Set clear expectations when delegating
- Use delegation as growth opportunities for your team
Culture
- Develop psychological safety in your team — lead by example
- Enable innovation by setting guard rails and pushing down decision making
- Move at the right speed — not too fast, not too slow
Networking
- You won’t have a peer who is a CTO at the company — find some who are at other companies then speak to them regularly
- Present at public events: paying it forward / back and raising the profile of your company
- Consider writing articles from time to time, e.g. on your company tech blog
Processes
Hiring
- Have a quick hiring process — you can’t hire the best candidates if you don’t move on them quickly
- Build a team whose priority is hiring
- Ensure your hiring team runs consistent interviews (different questions but with clear goals) and have consistent expectations for each role
- Plan ahead for open roles
- Market your company
Scaling
- Know the roles you need to fill to support company growth
- Know the team structure that can support growth
- Know how many member changes a team can tolerate in a year
- Be prepared for your company to switch from a small company culture where everyone knows each other and rules are in people’s heads, to a large company culture where teams work independently and rules are documented
Getting shit done
- Identify the people who can help you get shit done and build a relationship with them, e.g. Product
- Have a clear vision and a strategy to guide how you realise it
- Build momentum — make sure there is a constant stream of delivery
- Ensure the small frequent deliveries contribute to your larger goals
Budget
- Know your budget and share it with your teams
- Know where your budget is being spent
- Give teams a budget where possible — push decision making down
Change
- Have a robust company-wide change process, e.g. DACI Framework
Technology
Architecture
- Document high level principles: what and why
- Document guard rails (the goal is autonomy and alignment)
- Document golden paths for common needs, e.g. distributed tracing
- Document coding standards
Data
- Document guidelines for source data, data lake, data warehouse
- Process for moving data between source, lake, WH
- Top level schema for warehouse data
Security
- Application, OWASP top 10
- Network, Principle of Least Privelege
- Ongoing testing
- Pen testing
- White hat hackers, e.g. bugcrowd
- Vulnerability scanning
- Static code analysis - Compliance
Software delivery
- Developer tooling — IDEs
- Source control
- Build processes
- Release pipeline
- Observability
- Pre-prod development & testing environments
Infrastructure
- Infrastructure-As-Code
- Dev, Sandbox, Prod environments
Software delivery monitoring
Testing and quality
- Document clear expectations on quality
- Static analysis
- Merge Request expectations - Quality assurance processes
- Testing expectations
- - Coverage levels
- Test execution time
- Test plan expectations, in dev and prod
- Defect density
Developer productivity
- Use DORA metrics to help understand productivity
- Understand feedback loops
- Dev productivity dedicated team / individuals
SRE
- Operations or SRE team
- Monitoring and alerting
- SLAs, SLOs, SLIs
- Incident response procedure
Documentation
- Best practices
- Guardrails
- Projects
- APIs & UI based applications
Industry trends
- Have a process for staying up to date with industry trends
Refer: https://medium.com/@tom-neal/cto-checklist-1a2ef3d6502