CHALLENGE
The original workflow was a familiar one: an analyst needed data, submitted a request, and waited. A developer wrote a GraphQL schema by hand, built the query, ran it, and returned the result. Turnaround: days. For a team making operational decisions from data, that lag had a real cost.
The second phase addressed the manual schema work. We built an auto-generation layer that inspected the database at startup, built types and filter trees in memory using C# reflection and expression trees, and exposed a complete GraphQL API across a hundred-plus tables — no hand-written resolvers, no developer required for schema maintenance. It was technically sophisticated and genuinely effective.
But field-level business context — the descriptions, relationships, and domain meaning behind each column — still required manual documentation. As the underlying data structures changed, keeping that layer current became the new bottleneck. The system worked. Maintaining it required the kind of specialist knowledge that doesn’t transfer easily, and in practice, doesn’t transfer at all when the original team moves on.