PINGDOM_CHECK

Memo to CTOs: Don’t build the product

Zyte’s CTO says great tech leaders don’t work on software, they work systems that make software.

Jan Seidler · CTO

2 min read ·

Memo to CTOs: Don’t build the product

Becoming chief technology officer (CTO) at Zyte in 2025 prompted me to look back on the lessons in my two-decade career in various CTO and CIO roles.

One reflection stands out as a temptation familiar to almost every technology leader. 

Early in my career, I was often the troubleshooting engine of the organization: close to the code, managing every detail, fixing problems personally, micromanaging the roadmap. For a time, this approach even worked—at least on the surface. But it was never truly sustainable, and it certainly didn’t deliver lasting value.

Now, with years in the CTO seat across startups and enterprises, I can say with certainty: the real job isn’t building the product yourself, but building the system that builds the product.

What is a system, really?

A system isn’t a JIRA board or a CI/CD pipeline. It isn’t a set of velocity metrics or a perfectly color-coded roadmap. Those things are tools, not systems.

A true system is a living environment—a set of shared language, decision-making principles, and cultural norms. It’s a framework that supports thousands of micro-decisions every day, without losing sight of what matters: customer impact, trust, and ownership.

If you only build for what’s needed right now, you’ll always be chasing your tail. The better path is to design for resilience: engineer feedback loops, build autonomy structures that survive doubling or tripling in size, and invest in observable infrastructure that makes issues obvious before they become catastrophic.

Today, systems thinking means designing not just for humans, but for machines, like bots and AI agents. If you don’t build for that reality, your team and your business will struggle. Managing humans is hard. Managing a blend of humans and AI agents is harder still. Without a strong system in place, it’s simply unmanageable.

Culture over code

The CTO’s real job is to replace themselves with an environment—a culture, a platform, an architecture—that allows talented people to deliver excellence, reliably and repeatedly, even under intense pressure.

I’ve seen first-hand how empowering teams to own their work and building structures for autonomy leads to better outcomes, both for customers and for the business.

For example, at Zyte, I’ve watched engineers transition into product owner roles and immediately build greater trust with customers—not by being the loudest in the room, but by truly understanding the product and asking the right questions. Trust skyrockets, outcomes improve, and the system gets stronger for everyone.

No sergeant makes a good general—unless they embrace that their job has changed. As leaders, we must move from being the hero to being the architect of environments where others can excel.

The work is never done

System building isn’t a project with a start and end date. It is a continuous evolution.

That’s what gets me up in the morning: fighting for every inch of improvement, side by side with great people, building systems that last and make excellence repeatable. The privilege isn’t just in the delivery, but in enabling others to deliver—over and over, no matter the pressure or the pace of change.

If you’re in technology leadership, my advice is simple: stop trying to be the genius who delivers the product. Instead, build the system that allows greatness to emerge—again and again, no matter who is in the room.

That’s the legacy worth fighting for.

Try Zyte API

Build your first scraper in minutes

Free trial, no credit card. From a single request to production in an afternoon.

Get started

Continue reading

The harness matters more than the model - Podcast EP07
AI-assisted data extraction

The harness matters more than the model - Podcast EP07

"The model is the engine — but the harness is everything else." In Episode 7, we dig into why the infrastructure layer around your AI model matters more than the model itself, rank the best models available right now, and ask whether the open-weighted revolution is about to make frontier subscriptions obsolete.

John Rooney11 min read
How to build your first Scrapy extension
Developer interest

How to build your first Scrapy extension

My Scrapy project now plays a triumphant fanfare when a crawl finishes clean and a sad trombone when it doesn't, which is also how I finally learned what Scrapy's extension points are actually for.

Ayan Pahwa11 min read
Now what exactly is loop engineering? And where do Anthropic's Fable 5 model and web scraping fit in?
Developer interest

Now what exactly is loop engineering? And where do Anthropic's Fable 5 model and web scraping fit in?

A viral clip from Claude Code's creator put a name to something a lot of us have been circling: loop engineering. Here's why web scraping may be its best-fit domain — and what that means in practice.

Ayan Pahwa12 min read
Automate deployment of your web scraper on VPS with Ubuntu 24.04 cloud-init
Developer interest

Automate deployment of your web scraper on VPS with Ubuntu 24.04 cloud-init

Your VPS is ready, but now you need to work through the same sequence you have run a dozen times before: apt update, apt install python3-pip, pip install scrapy, playwright install chromium, the Chromium dependency list that never installs cleanly on the first try, Redis, possibly Postgres, whatever else this particular project needs.

Ayan Pahwa9 min read
NotAnInterview: “I Have Superpowers Now"
Developer interest

NotAnInterview: “I Have Superpowers Now"

The problem was a project with 12,000 websites to crawl, and there’s no world where you write custom spiders for 12,000 websites, not with a human team and certainly not sustainably. So Javier built a workflow: a set of AI prompts that could analyze a website, figure out its structure, and generate a crawl configuration that a generic spider could then use.

Neha Setia Nagpal9 min read
Flatcar Linux for web scrapers: deploy immutable containers with just one config file
Developer interest

Flatcar Linux for web scrapers: deploy immutable containers with just one config file

The next time you spin up a VPS to give it a persistent home, you spend the better part of an afternoon rebuilding from memory. Here's a tool to help using Flatcar Linux

Ayan Pahwa11 min read

The Community · Newsletter

The best of Zyte and the data web, in your inbox.

One curated edition — new articles, product updates, and the stories shaping the data web. No noise.