How to read a tech job description

Most CTO job descriptions are written by people who have never done the job. That's the first thing to understand. The second is that even well-written ones are political documents as much as they are specifications.

Reading between the lines matters more at this level than at any other. A junior developer can take a JD at face value. You cannot. The gap between what's written and what's actually needed will define your first year in post.

The opening paragraph tells you who wrote it

If the opening talks about "driving digital transformation" or "leveraging cutting-edge technologies", it was written by HR or a recruiter working from a template. That's not necessarily fatal, but it means you'll need to work harder to understand what's actually going on.

Strong JDs open with context. Why does this role exist right now? What changed? Is it a replacement, a new creation, or a rescue mission? The best ones are honest about the mess you're inheriting.

When you see vague aspiration instead of specific context, assume the hiring manager wasn't deeply involved in writing it. That tells you something about how the role is actually valued.

The reporting line is half the story

Who you report to shapes everything. Reporting to the CEO means technology is understood as strategic. Reporting to the CFO often means it's seen as a cost centre to be optimised. Reporting to the COO suggests operational focus, probably with significant legacy infrastructure challenges.

None of these is inherently wrong, but each creates different constraints and opportunities. A finance-led structure will never give you the budget freedom of a product-led one, no matter what the JD promises about investment.

Also notice who else reports to your potential boss. If you're one of eight direct reports, you'll be fighting for attention. If you're one of three, you'll have more access but possibly more scrutiny.

The technical requirements reveal their sophistication

When a JD lists specific technologies, ignore them. You're not being hired for your Vue.js expertise. But do pay attention to how they're listed.

A shopping list of buzzwords (AI, blockchain, cloud-native, microservices) suggests they don't actually know what they need. A description focused on outcomes ("rebuilt our deployment pipeline to enable daily releases") suggests they do.

The worst JDs ask for everything. Ten years of experience in a five-year-old technology. Hands-on coding plus board-level strategy. Global team leadership plus deep infrastructure knowledge. When they want a Swiss Army knife, they're probably hiring their first proper technical leader and haven't yet accepted the trade-offs that come with seniority.

The problems they mention versus the problems they avoid

Technical debt appears in honest JDs. If they admit they're running legacy systems that need modernising, they're at least clear-eyed about the situation. If everything is described in aspirational terms ("world-class engineering culture", "innovative tech stack"), be sceptical.

Also notice what's completely absent. No mention of the team? Either it doesn't exist or it's a problem. No mention of process? Probably chaos. No mention of the product? Likely an internal IT role dressed up as a CTO position.

The problems they're willing to name in writing are smaller than the problems you'll actually face. If they're admitting to technical debt, you're walking into technical bankruptcy.

The soft skills section is where truth hides

When they emphasise stakeholder management and communication skills, translation: the previous CTO couldn't work with the rest of the exec team. When they stress change management and influence, translation: you'll have no formal authority and will need to persuade people who don't want to be persuaded.

These aren't necessarily dealbreakers. Sometimes that's exactly the challenge you want. But understand what you're signing up for. Political skills will matter more than technical ones in these environments.

What's negotiable and what's fixed

Everything in a JD is negotiable except the things that aren't. The actual constraints are usually structural, not skill-based. Budget is fixed by the funding round or the annual planning cycle. Reporting lines are fixed by org politics. Location flexibility is fixed by executive team norms.

The "required" technical experience is almost always flexible. The "nice to have" soft skills are usually absolutely essential. Job descriptions are written in reverse.

Your negotiating position depends on how desperate they are and how clearly they understand what they need. If they've been searching for six months, you can probably reshape the role significantly. If the JD is crisp and specific, they know what they want and you'll have less room.

The real question

After all this analysis, the question isn't whether you match the job description. It's whether the job description matches a role you'd actually want.

Most CTO roles fail because of misalignment, not incompetence. The exec team wanted a cost-cutter but hired someone who wanted to build. The board wanted strategic transformation but the CEO wanted reliable delivery. The JD promised innovation but the budget assumed maintenance.

Read the job description as evidence, not instruction. Then use the interview to test whether your interpretation matches their reality.

If you want a structured way to assess the gap between what a role claims to be and what you're actually looking for, the JD Gap Analyser can help you map that systematically before you invest time in applications.