portfolio Anshul Bisen
ask my work

Cross-functional friction is a feature, not a bug, if you build the right feedback loops

For months I treated pushback from product, sales, and compliance as obstacles to velocity. The reframe: friction between teams is signal about misaligned priorities, and the right response is better feedback loops.

For the first year at FinanceOps, I treated friction with other teams as an obstacle. When product pushed back on my technical roadmap, I felt they did not understand the engineering constraints. When sales promised features we had not built, I felt they were undermining engineering. When compliance rewrote my API specs, I felt they were slowing us down. I spent an embarrassing amount of energy trying to reduce this friction by convincing other teams that engineering priorities should come first.

This is where the real argument actually lives.

By this phase the work was no longer “just build it.” It also builds on what I learned earlier in “TypeScript strict mode migration: the six-month project I wish I had done in month one.” Every architecture choice had a people cost, an audit cost, and a recovery cost when production disagreed with the plan. That is roughly when the line between FinanceOps systems and projects like flowscape or ftryos got interesting to me: the design only counts if the operators can live with it.

The operational artifact behind the argument.

The Reframe

The turning point came during a retrospective in June 2025. Our PM, Neha, said something that stopped me in my tracks: “Every time engineering pushes back on a product request, I learn something about a technical constraint I did not know existed. That pushback is the most valuable feedback I get. I just wish it came earlier and with less frustration.”

I had been treating cross-functional friction as a problem to eliminate. Neha was treating it as information to process. The difference is profound. If friction is a problem, the solution is to minimize it, which usually means one team dominating the others. If friction is information, the solution is to build better systems for processing it, which means building feedback loops that convert pushback into better decisions.

The realization was not that friction is pleasant or that disagreements are fun. It is that friction between teams exists because different functions have different perspectives, constraints, and incentives. Those differences are valuable. They represent a broader view of reality than any single team possesses. The dysfunction is not the friction itself. The dysfunction is the absence of processes that convert friction into action.

Three Feedback Loops We Built

After the retrospective, I worked with product, sales, and compliance to build three specific feedback loops that formalized how cross-functional friction gets processed.

The Technical Constraint Brief

Whenever engineering identifies a technical constraint that affects a product or sales request, we write a one-page brief that explains the constraint in business terms, describes the options with trade-offs, and recommends a path. The brief goes to the affected team within 48 hours of the pushback.

  • Replaces the old pattern of saying “no” in Slack and leaving the other team to guess why
  • Forces engineering to articulate the business impact of technical constraints
  • Gives the requesting team enough context to make an informed decision
  • Creates a paper trail that prevents the same constraint from being relitigated every quarter

The Feature Readiness Sync

A biweekly 30-minute meeting where engineering, product, and sales review the readiness level of every feature in the active pipeline. Features are classified as shipped, beta, committed, planned, or exploratory. The meeting catches misalignments before they reach clients.

  1. Product presents new feature requests with business context and client urgency
  2. Engineering provides feasibility assessment and timeline estimate in real time
  3. Sales confirms whether the timeline aligns with prospect commitments
  4. Disagreements are recorded and resolved by the end of the meeting with a documented decision

The Compliance Pre-Review

For any feature that touches financial data, authentication, or external integrations, compliance reviews the design before implementation starts. This flipped the old pattern of building first and discovering compliance issues during review. The pre-review adds one to two days to the design phase but eliminates weeks of rework.

The pre-review was the hardest loop to establish because it felt like adding a gate to the development process. Engineers saw it as slowing them down. But after three months, the team acknowledged that the pre-reviews had prevented four significant compliance rework cycles that would have collectively cost more engineering time than all the pre-reviews combined.

What Changed

The feedback loops did not eliminate disagreements. We still argue about priorities, timelines, and trade-offs. But the arguments are more productive because they happen earlier, with better information, and in a structured format that produces decisions rather than frustration.

  • Engineering-product conflicts dropped from weekly Slack arguments to biweekly structured discussions
  • Sales no longer learns about technical constraints from client calls. They learn from the readiness sync.
  • Compliance rework dropped from an average of 15 engineering hours per month to under 3
  • The average time from feature request to aligned decision dropped from 2 weeks to 3 days
Alignment usually looks like constraint made explicit.

This is where the role stopped feeling like senior-engineer-plus. Every decision had a human system wrapped around it: founders, customers, auditors, tired teammates. The same systems thinking bled into ftryos and pipeline-sdk, where defaults matter more than heroics.

Cross-functional friction is not a failure of collaboration. It is evidence that your teams have different information. The fix is not to eliminate the friction but to build loops that convert it into shared understanding. If engineering, product, and sales never disagree, one of them is not doing their job.

I used to walk away from cross-functional arguments drained and frustrated. Now I walk away with action items and documented decisions. The friction is the same. The process around it changed. That is the difference between a team where functions compete and a team where functions collaborate. The collaboration does not happen naturally. You have to build the systems that make it possible.