Coding Chats

I got into computers to avoid people then they put me in charge of them!

Coding Chats

Show Notes

Coding Chats Episode 78 - John Crickett talks to Robert Harris, an experienced engineering leader. Robert shares hard-won lessons from years of leading software teams, drawing on a distinctive "human systems" lens to explain why so many engineering organisations struggle — not because of bad people, but because of broken systems, misaligned leadership, and invisible cultural forces.

The conversation weaves together philosophy, practical management advice, and candid personal anecdotes, making it equally relevant for first-time engineering managers and seasoned CTOs. The central thread throughout is that software is fundamentally a human endeavour, and leaders who treat it like a purely technical one will keep running into the same problems.

Chapters 0:00 — Every Problem is a Systems Problem 3:00 — Labelling vs. Diagnosing: The Human Systems Approach 6:15 — Poor Performance Is a System Failure, Not a People Failure 9:10 — AI, Flat Orgs, and the Pressure on Engineering Managers 11:30 — Diagnosing a Broken Team: A Real-World Turnaround 24:05 — People Are Not Interchangeable Components 26:00 — Culture: What Happens When Nobody's Watching 33:00 — The Power Gradient and Cross-Team Collaboration 39:00 — The C-Suite Distance Problem 42:00 — Building Culture in Remote and Distributed Teams 46:00 — Software Engineering Is a Humanity

Robert's Links: https://www.linkedin.com/in/robert-n-harris/coded2lead.com

John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social

Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills.

Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track.

Takeaways People run on emotion and safety, not logic — lead them accordingly. When someone underperforms, look at the system before you look at the person. Labelling people as "difficult" or "lazy" is a way of avoiding the real problem. AI is accelerating code generation, but the human bottleneck downstream is getting worse, not better. The institutional memory inside a team is worth far more than anything in your wiki. Culture is what happens when nobody's watching — not what's written on the wall. If you send Slack messages at 10pm, your team will think there's no such thing as work-life balance. Only authorised people should authorise work — casual remarks from leaders land as commands. Co-location without connection isn't culture, it's a terrarium. Computers are a science, but software is a humanity.

More from Coding Chats

Oct 22, 2026

Coding Chats Episode 83 - In this episode, VB from OpenAI’s developer experience team explains why he thinks plan mode is obsolete and how coding agents have shifted from step-by-step instructions to outcome-driven, long-running work. We cover how to write a good agents.md, why tests still matter when agents write the code, spec-driven development, and why cloud agents may be the future of dev tooling.

Oct 15, 2026

Coding Chats Episode 82 - John talks with Dave Westgarth, head of delivery at a Databricks consultancy. Dave shares his path from a psychology degree and McDonald's into tech, and they discuss why the Scrum Master role is so misunderstood, how it differs from a delivery manager, and whether either needs to be technical.They also look at how AI is changing delivery work. Faster code just moves the bottleneck upstream, John argues there's no AI-specific skill you can't learn in a day, and engineering fundamentals are what make AI useful.

Oct 8, 2026

Coding Chats Episode 81 - Ben Howdle talks to John Crickett about being a first time CTO in a start-up. Ben, author of The First CTO, shares what changes when you move from building technology to leading a technical team: the pressure, the trade-offs, and the realization that writing code is only part of the job.Drawing on startup experience and lessons learned the hard way, Ben discusses how to balance quality against runway, manage people, and communicate technical decisions in terms that founders and other non-technical stakeholders can understand. He also explores why resourcefulness, resilience, and comfort with ambiguity matter so much—and why CTOs often spend more time selling ideas than they expect.Whether you’re stepping into your first CTO role or leading a technical team at an early-stage company, this conversation offers candid insights into the realities of technical leadership.

May 28, 2026

Coding Chats Episode 80 - start-up advisor Alexander Berkovich shares his expertise on building successful start-ups, hiring strategies, CTO roles, and the importance of communication between technical and business teams. Discover practical tips for navigating the challenges of early-stage companies and how to align technical excellence with business goals.

May 21, 2026

Coding Chats Episode 79 - Richmond Alake, Director of AI Developer Experience at Oracle, joins John to discuss agent memory — how AI agents store, retrieve, and adapt to information. He argues that developers building memory on flat files are naively reinventing the database, and that once you factor in concurrency, security, and scalability, a proper database is inevitable. The conversation covers the full memory stack and how Oracle's AI database keeps embeddings and data together without shipping sensitive information to external providers.

See all episodes →