Building and operating a communications platform forced a useful kind of honesty. Weak product decisions eventually surface as confusion, repeated manual work, or unreliable systems. The software had to explain itself, operate reliably, and keep the work around it manageable.

Support is part of the product cost

A feature is not finished when it ships. Its real cost includes documentation, questions, failure modes, training, and every manual action it creates later. This changes how you evaluate product ideas. A smaller feature that customers can understand and operate may be more valuable than an impressive feature that creates permanent overhead.

Automation should remove waiting

I care most about automation when it gives time back to a customer or teammate. Provisioning, compliance checks, billing, fraud response, and routine operations are not places where people should wait for someone to press a button. The best automation makes the organization feel more responsive, not less human.

Ownership shortens the feedback loop

When the people designing a system also see its support cases, sales objections, and operational failures, decisions improve. The distance between cause and consequence becomes short enough to learn quickly.

Constraints are not automatically virtuous. But they can teach a durable principle: build as though the consequences will remain yours. Usually, they will.