What does a CTO do?

  1. Who does the CTO report to? Does their voice get a sufficient hearing at board level?
  2. Does the CTO ‘own’ the product?
  3. Is the team outsourced? and can I move it in-house?
  4. What level is the team at?
  5. Do I have the right people in place?
  6. Is it a greenfield or legacy codebase?
  7. Is the codebase well architected?
  8. What is the level of the technical debt?
  9. What processes, methodologies and practices are the team using?
  10. What’s the hosting situation?
  11. Is the app/infrastructure/codebase secure enough?
  12. Who is supporting the software 24 x 7?
  13. Is the language / framework right for the application?
  • Hiring & org structure, what the ideal team structure?
  • When to hire Senior/Mid/Junior developers
  • Do I need a test team? /Hiring a test team.
  • Creating and maintaining a relationship with the developer community
  • Should my team by made up of contract, permanent or mixed?
  • What’s our policy on Remote working?
  • Outsourcing & Offshoring staff, how to make this work if needed
  • Creating and ensuring a good staff culture
  • Empowering the team
  • What working hours should we have?
  • Staff appraisals & ongoing monitoring
  • If B2B, How to we support a sales process (pre/post)
  • Creating a technology strategy for the business
  • Working with other teams: sales, marketing, finance, managing upwards etc
  • Budgeting accounting & fundraising responsibilities (What involvement should a CTO have in a fundraising exercise?)
  • Working with the board
  • Management reporting
  • Assessing the current level of Agile implementation
  • Implementing Scrum & XP e.g.
  • Running Sprints / stand-ups / meetings / roles / training
  • TDD/BDD — time consuming but productive (avoids technical debt)
  • Pair Programming
  • Outside In (design first)
  • Buy don’t build
  • Refactoring practices
  • Code reviews
  • Product VS development team
  • Does the product management / ownership sit under tech?
  • How to work with a separate product team
  • Scrum master VS product manager
  • Creating/understanding users, Journeys and Wireframes (Oh My)
  • Writing stories / features
  • Working closely with the customer to iterate on the wireframes, stories and code releases
  • Product design and user experience (UX)
  • Creating and maintaining a product roadmap
  • Creating a maintaining reports and business analytics
  • Finding and implementing product management tools, software and web apps
  • Technology implementation plan / roadmap
  • Database and data structures, sourcing, input, strategy
  • Choosing a tech stack
  • Moving stack
  • Frameworks
  • Which modules, api’s third parties should we use?
  • Software architecture
  • Keeping third party software up to date
  • Where to host?
  • Hosting internally VS Cloud hosting
  • Security / security testing
  • Continuous Integration / Deployment and source control
  • Platform and application support (24 x 7?)
  • Staff resourcing and training
  • secure design patterns in development
  • auditing legacy codebases

--

--

--

Interim CTO, advisor and mentor (recovering startup founder)

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Dan Jacobs

Dan Jacobs

Interim CTO, advisor and mentor (recovering startup founder)

More from Medium

Ports and Adapters on a legacy code base

A rough outline of what the domain does. It imports the document client, gets customer application from state, fetches bearer token, error if already sent to checkout, build request for checkout, return to client.

Mourning, staff engineers and successful onboarding

What is Software Supply Chain Security?

Reproducible builds don't make sense in a cloud-native world