3 years as a CTO - Another follow up
Posted by HornyMaryPoppins@reddit | ExperiencedDevs | View on Reddit | 41 comments
For the last couple of years I have been writing a yearly post talking about my experience as a small company CTO. You can check them here. As last time, I got some very interesting comments, some thoughtful DMs and some nasty responses. I said it last time and will say it again, if you don't find these posts interesting, downvote and move on, no need to be an asshole. You never know what others are going through.
So let's get to it. Long story short: first year was shitty, second year was less shity, third year has been slightly shitty. First year was a constant struggle with the former head of product and an outsourced team, eventually having panic attacks and wanting to quit. I fired the outsourced team and the head of productdecided to leave on his own. Second year was better, hired some great devs I can fully rely on and tried to create a healthier organization.
This third year has had it's highs and lows. The goal of this year was to build a new MVP for a new product we want our current clients to adopt. The development team has proven to be more than capable of achieving this goal, but we have been constantly slowed down by our new product team. This new product team is the result of hiring a new Product Owner that's very good at his job but keeping as Head of Product a boomer that's been on the sales team for years and wanted a promotion. This guy convinced the CEO he wanted the product leadership role without any other experience than being a sales rep for 20+ years . The result hasn ot been great and has caused lots of friction between him and my team, but also between him and the new PO. As a sales rep, his role has consisted in constantly pushing the team to deliver while not providing any kind of priorities nor making decisions about the product. At the same time he has prevented the new PO from making any important decissions and has systematically dropped most ofhis ideas. He is the kind of guy that does not want to make any decissions just in case anything goes south. In parallel, he does not rely on anyone else making decisions.
We were given a year to build this new MVP and for the first 9 months we barely did anything. I pushed this guy to make decissions, bypassed him and made those decissions with the other PO, argued constantly about how I was doing his job and suddenly it all stopped. He started being defensive and putting spokes in our own wheels. SOme of our devs started to speak up against him during meetings. Sprint plannings were miserable as the priorities where non-existent.
One of the greates examples was the decission to build a chatbot within our product (yes, again) that connects to ChatGPT and answers questions for our users. That would make sense if at that point we had had anything to answer questions about. It was a greenfield and almost no business logic had been developed at the time. When I confronted him about this decision his answer revealed what I already thought: he is a sales guy. He said "this will help us sell the product because everyone wants AI". First, I doubt that. Second, at these early stages the goal is to prove your product works and solves a problem, not selling.
While all of these was happening I was requiring the CEO to get this guy back to sales, where he should have always stayed. We've been discussing for severalm months that the product team should not be under his chair but mine. Our CEO does not have previous experience developing software so his POV is really far from reality.
In any case, the team kept somehow delivering and the feedback we have gotten so far has been quite positive although no sales yet. In any case, my team has decided to bypass the head of product and work closer to the other PO, who's been great so far. I also work close to this PO, and he is scared his boss is not happy about it, but I am working to protect the guy.
One of the toughest struggles this year has been the Claude Code hype, and I am already echausted. I don't want to sound like AI is the worst. I don't want to sound like I believe in software craftmanship. For me, software development has always been a job and any tool that makes it easier will be welcome. But, there are some problems that come with these tools.
- I do believe Claude Code makes developers faster. It has it's problems, but overall, it's working fine. My main concern with this tool is how it's being pushed as a KPI. The more tokens we use, the better. It reminds me of how, when I was very junior dev, a very old-school company I worked at measured our performance based on lines of code. The result was all of us changed our coding style and started adding empty lines and brackets in new lines and all kind of stuff that made the code worse. It's the same with tokens.
- Development speed has increased so the cost of development has shifted. It's not a matter of adding more, but prioritising according to the actual value users and clients will see. We can now prototype faster than ever to prove if a solution will work. The cost of delay has shifted from delivering slowly to delivering anything. A good Product Owner needs to know what to prioritise and that means dropping other things. When speed is no longer an issue, direction is. For the first time in my career my development team delivers faster than the Product team can define new features. This has taken us to develop low priority items that were there in the backlog. Add that to an incompetent head of product that boycots anything we try to work on. Not great.
- Collaboration is a must and devs need to be part of the cycle from the very early stages. AI is also isolating team members. Instead of asking for a second opinion we tend to ask Claude and asume it is right. As the cost of prototyping has decreased, one thing that's working wonders for us is meeting with the PO and our designer and discussing a feature on paper (or a digital whiteboard) and then spend a couple of hours building a prototype to show it in action. We then show the prototype to our designer and PO and either they approve or suggest changes. Once everything's clear, evertyhing's written down on a ticket and worked on from scratch and in a couple of days most it will be developed.
I don't want to sound like I know what I'm doing and others don't. I also messed up big time during this past year.
I had to let go the first developer I hired when I joined. He is a great guy, capable of the very best, but was struggling delivering. I tried talking to him and bring him back on track during almost six months but at some point other team members were tired of his performance and had to fire him. I still question myself about it. Not about firing him, but if it took me too long. Another one of the devs is very picky about how we structure our code and can be very strict when approving PRs to the point of rewriting features from scratch to prove a point. I had to sit down with him and ask him to stop because most of the times he was making a fuss over minor details. This did not really work and now he is being passive aggresive against his coleagues, which is not great andI'm afraid I'll have to seriously talk to him about it.
The biggest failure over this past year was not achieving the main goal. We were given a year to deliver an MVP and it's taken us almost 2 extra quarters to deliver it. I was explaining the CEO just the other day that the main issue was trying to goldplate everything. An MVP is an MVP and both, product and development teams, did not want to release because it was not ready. Looking back, we could have delivered and granted access to our existingclients forfree and most of the feedback we arenowgetting we would have gotten earlier. There are many things we developed assuming our clients needed that are now being rolled back.
Another big fuckup took place almost a year ago. We wanted to implement a workflow manager to allow users to program automations within the product without the need to code. Think of tools like make or zapier. It is quite a complex task and we did not know where to start at. I suggested we took two days and make teams of one frontender and one backender to prototype a solution. They competed, each team had a different approach and at theend of the day our Head of Product did not understand why the feature was not in prod yet. I was clear (or at least I thought I was) this was a prototype and anythig done during those two days would be discarded and started over, but of course they wanted it to get to production. In the end it took us a few weeks to have a first, very poor version of it, but truth be told, it's really easy to add new "boxes" to it, so new developments take a couple of hours (maybe a day or two if the inner logic is complex). This might sound like a win, but at that time it caused frustration and confrontation between product and development to the point we have forbidden the use of the word "hackathon".
As usual, some pieces of advice and some things I regret:
- Technical leadership is people leadership. We usually think a technical guy willnot manage people, but at theend ofthe day it all comes to agreements between developers. Managing egos (including our own) is a skill.
- When something's not working, act fast. Letting people go when it's right will be seen as strong leadership. Waiting until things are all fucked up will only cause more damage.
- Fail fast is a state of the mind. AI allows to prototype fast, but it comes with a new skill to learn, which is explaining those prototypes are not deliverables.
Anyway, interesting year. Better than the previous one, but also more exhausting. I really hope this helps anyone that's in a similar place. I'll read you in the comments. Be nice.
TLDR: Third year has had it's struggles, I have developed a love-hate relationship with Claude Code, but overall it's been better. Still learning though and I wish I was rich and did not have to work.
gburdell@reddit
Hey just out of curiosity, how many hours do you work per week? I've considered dropping down to a smaller company with some bullshit niche product for an increase in scope but also easier work. I'm at 60-70 hours right now and I can feel myself aging twice as fast as I should be.
cpayne22@reddit
Not sure if I’m missing something - it sounds like your processes are a little immature?
Where are the user stories? Where’s the accountability? Where’s the business cases?
Business case - some sort of AI integration. Will cost xxx and be delivered by yyy
POC - the POC will cover user stories A, B, D & F. C and G - J are out of scope. Success is defined as 1, 2, 3 etc
If the POC is a success, then the plan is….
You don’t have to do all (or any) of this, just ensure it’s done.
And AI tools are brilliant and writing this.
Your sale rep type of people always choke when they are on the line. Your challenge is to define the line (if they won’t) and then constantly refer back to it.
rosyatrandom@reddit
Look, if no-one else is going to say it, I will. Decision. One 's'
Leopatto@reddit
Boy, I would have fired your ass in month 2 lol. What in the fuck am I reading🤣
apartment-seeker@reddit
TBH, even if you have the title, you're not really the CTO. You're a hired Director of Engineering who is being treated as some even lower position. :/
ThlintoRatscar@reddit
I don't agree with this framing.
A CTO has a significant political dimension and navigating the personalities in an executive team, even a well functioning one, can be difficult and littered with compromise.
Product ownership under Sales and Marketing makes a lot of organisational sense and learning how to interconnect well can be challenging. A CTO feeling that the VP of Sales isn't doing a good product job is a common ( and sometimes, designed ) tension as both fight for the product with competing visions. The CEO not interfering with that tension is also common ( and sometimes, designed ).
OP is very much the CTO and their challenges sound very familiar, to me.
Have you sat in that chair before?
deathamal@reddit
Not if you're building a product.
Product is a science and requires engineering
Sales and marketing are full of emotion and "lets get it done"
Product should 100% listen to sales and marketing, but they should be separate and make their own decisions. As a CTO, I give the space to our product team to do that and work to split the capacity between engineering needs and product needs.
This is just my experience I suppose.
apartment-seeker@reddit
Yeah, but most that I have seen wouldn't get treated like a bitch who has to take on things like token usage KPIs they don't believe in.
There is a difference between having to navigate business people and work with sub-par product people and the kinds of things OP is describing, where is treated like a subordinate of the business and product people as opposed to their partner.
For context, I have worked at early-stage venture-backed startups my whole career, so maybe my view is skewed.
ThlintoRatscar@reddit
Fair shot.
A rookie CTO might not even know that they are being treated that way or know how to tell their CEO and peers to pound sand. Doing poorly at the politics is why they are being treated like a subordinate rather than a partner, but it's not intrinsic to their role.
FWIW, the token usage KPI is something I've seen investors throw around as a way to show value to shareholders and chase AI investment. I can see it being one of those frustrating reporting requirements imposed by ownership as part of Board oversight and conveyed by the CEO to their CTO.
My main concern was the assertion that they aren't in the CTO job. To me, they clearly are.
apartment-seeker@reddit
Hmm, yeah, I suppose a lot of CTOs have it worse than I have seen haha
hiddenhare@reddit
It's hard to tell, but looking at his earlier posts, I think OP's company only has a single-digit number of engineers. I'd be surprised to hear about this Game of Thrones stuff in a tech startup of that size - but maybe this story is coming from something like a logistics or manufacturing company, where engineering is only a small piece of the pie?
ThlintoRatscar@reddit
You'd be surprised how political a small organisation can be.
I appreciate the additional context though.
relaxed_lizzard@reddit
EM basically
CorrectPeanut5@reddit
These are typical issues in small organizations. In a bigger org the CEO would be way too busy to micromanage this stuff. And even in big orgs it's irritating when the CEO finds time to poke their nose into technology.
I actually think the bigger issue is the company it's three years in and the org is still small. Is there ANY growth in the org? If not it sounds like a zombie company making enough money to stay open, but not enough to grow.
apartment-seeker@reddit
I can believe it, but personally, I have worked at small companies my whole career, and have never seen a CTO being pushed around or micromanaged quite like what's being contemplated or discussed in this thread.
4tma@reddit
Can you please expand on this? I am curious to understand, as a complete ignorant of management responsibilities/politics.
hiddenhare@reddit
At most startups, the CEO and CTO are co-founders, and they have equal rank. The CTO should have final authority over all decisions related to software development, except perhaps stuff which overlaps with the business side, like the hiring budget and some external deadlines.
OP mentions many engineering decisions which are being made against his will. Notably, he describes a "product team" which is doing software development, but was somehow taken entirely out of his control, to be managed by the non-technical CEO. He isn't the head of engineering, he's just the head of certain teams (or one team?). It's a strange way to run things.
Wide-Pop6050@reddit
It can be really hard to go against the CEO if they're hellbent on doing something, even if you're the CTO. I guess if you literally were co founders that's one thing but a lot of CTO's are "technical co founders" that were hired or approached to execute the OG founders vision.
hiddenhare@reddit
I've seen it both ways. In highly technical companies, the CTO tends to have the Steve Jobs cult-leader personality type, with the CEO relegated to a glorified secretary dealing with the unimportant non-technical stuff.
Wide-Pop6050@reddit
Also possible! Yeah idk if the CEO and CTO are ever 100% equal. Maybe if they really started it together. It seems like it would be better to acknowledge that the CTO isn't 100% equal or whatever.
apartment-seeker@reddit
What /u/hiddenhare said
Beasticlese@reddit
Thanks for the perspective, it's helped me and given me another way to view our start up.
CiubyRO@reddit
Are you not the CTO of the organization? Who exactly is pushing this in such a way that you say the above?
HornyMaryPoppins@reddit (OP)
CEO and CFO.
deathamal@reddit
As a fellow CTO in a 50 staff SaaS company, I would tell them to shove it.
But.... I am a co-founder of this company and the CEO and CFO arent.
I don't have good advice for your situation, but I do feel for you.
Hugo0o0@reddit
My dude you are the technical chief. Can't imagine anth more technical than matrix multiplication.
You should decide how Claude is used.
tmarthal@reddit
It’s a KPI in the training data of the model that wrote the post
Deaths_Intern@reddit
VC / PE investors maybe
baezizbae@reddit
/r/ExperiencedDevs is being used as people's blogs now?
Competitive-Fun-7148@reddit
Using AI token count as a KPI is the 2026 version of measuring devs by lines of code. The incentives are wrong. It rewards volume and you end up with more code to maintain, not better outcomes.
What works for me: AI tools are like a fast junior. They produce output quickly, but you still review everything. The time save is on the first draft, not on skipping review. If your team is merging AI output without reading it carefully, the debt is piling up.
On the Head of Product thing, been there. Sales-to-product almost never works because the incentives run in opposite directions. Sales closes this deal.
Product builds something that scales. Your CEO probably won't respond to "the team is frustrated." Try: "we shipped 3 months late because no one was making decisions." Revenue impact lands harder than feelings.
menckenjr@reddit
I didn't need to read any further to pour one out for you. Salespeople make the worst product managers IME.
markedasreddit@reddit
About the first developer you hired when you joined ("..he is a great guy, capable of the very best, but was struggling delivering."). Why did he struggle delivering?
xpingu69@reddit
He probably checked out for some reason
HornyMaryPoppins@reddit (OP)
I never knew. He never said anything was wrong other than admitting he was not motivated and could not keep up with the workload.
seanlabor@reddit
Thanks for the interesting report.
Zeevo@reddit
I think I would leave my company if my CTO was posting on Reddit. Especially this subreddit.
t-tekin@reddit
How much engineering and management experience did you have before this job?
There are a couple sentences in here that tells me you either don’t have the authority you should have or you are not exerting the authority you need to. (Eg: The new PO convos and the AI tokens etc…)
And then there are a couple sentences that are so obvious that even a junior EM would know, stuff that would be obvious red flags during EM interviews. (most of the advice section)
And then there is the missing things you should be talking about but not. Like as the CTO, your job is not only being an EM or be in the execution space but also be a director. Part of the challenge for you shouldn’t be just building things. It should be setting direction, vision and strategy.
I see a very fractured leadership team, still struggling to get out an MVP after 3 years (what?), not working with agile principles. Well this sentence actually tells me the root problem of all: “Our CEO does not have previous experience developing software so his POV is really far from reality.”.
My advice?
* It sounds like you are learning. That’s the good news.
* Is it faster than the learning you could get at a good tech company with some good mentors? I don’t think so. This is at best a junior EM’s level of learnings. If I were to guess I would say these are the topics of someone with 5-6 years of engineering experience + 1 year EM experience.
* if learning is important for you, I would look for opportunities and test the market. I know it’s a tough job market out there but it’s not that bad for experienced folks.
* interviews will be rough. Serious tech companies will see what I see. EM positions are going to be the right tier.
* If product or the vision is why you are there, dude it’s been 3 years. What’s going on? Where is this going? Your CEO is also not experienced. This is a blind leading blind situation.
* The deck is stacked against this startup pretty hard. Well luck is something I don’t want to undermine. But if you guys succeed it will happen despite the leadership mishaps.
PS: I was at a startup as the 3rd hire my early-mid career. With an inflated VP of Eng title. And after wasting my 4 years, got convinced to join big tech. (Honestly initial motivation was that way more money) but after a year I realized how much my growth was lagging at that place.
gman2093@reddit
I have seen this end well exactly one time. Usually it doesn't make into the main branch.
FlattestGuitar@reddit
I'm scared of what's happening to my industry because of AI.
t-tekin@reddit
How much engineering and management experience did you have before this job?
There are a couple sentences in here that tells me you either don’t have the authority you should have or you are not exerting the authority you need to. (Eg: The new PO convos and the AI tokens etc…)
And then there are a couple sentences that are so obvious that even a junior EM would know, stuff that would be obvious red flags during EM interviews. (most of the advice section)
And then there is the missing things you should be talking about but not. Like as the CTO, your job is not only being an EM or be in the execution space but also be a director. Part of the challenge for you shouldn’t be just building things. It should be setting direction, vision and strategy.
I see a very fractured leadership team, still struggling to get out an MVP after 3 years (what?), not working with agile principles. Well this sentence actually tells me the root problem of all: “Our CEO does not have previous experience developing software so his POV is really far from reality.”.
My advice?
* It sounds like you are learning. That’s the good news.
* Is it faster than the learning you could get at a good tech company with some good mentors? I don’t think so. This is at best a junior EM’s level of learnings. If I were to guess I would say these are the topics of someone with 5-6 years of engineering experience + 1 year EM experience.
* if learning is important for you, I would look for opportunities and test the market. I know it’s a tough job market out there but it’s not that bad for experienced folks.
* interviews will be rough. Serious tech companies will see what I see. EM positions are going to be the right tier.
* If product or the vision is why you are there, dude it’s been 3 years. What’s going on? Where is this going? Your CEO is also not experienced. This is a blind leading blind situation.
* The deck is stacked against this startup pretty hard. Well luck is something I don’t want to undermine. But if you guys succeed it will happen despite the leadership mishaps.
Cons1dy@reddit
Pretty interesting, thanks! PM is so hit or miss and has so much more politics. I feel like AI making development faster is exposing a lot of them