Software Design & Development
Manufacturing

Enabling Growth at Scale Through a Unified Graph

Trility was hired to build a centralized GraphQL architecture that unifies data across systems, reduces response times, and supports rapid growth – enabling faster, more consistent customer service and a scalable path forward for new acquisitions. The solution also supported the client’s broader transition from Oracle Service Cloud to Salesforce.

Problem Statement

This century-old manufacturing client faced a common industry challenge: managing customer data scattered across disconnected systems and services. Following a series of acquisitions and a transition from Oracle to Salesforce, the client faced hurdles in integrating its rapidly growing ecosystem of tools and systems to ensure a consistent customer experience when interacting with the various digital platforms. Their existing point-to-point API architecture created inconsistencies and inefficiencies, which limited visibility and made it difficult to retrieve accurate data.

Customer support and dealer teams lacked a single source of truth, resulting in slow, fragmented service. A typical inquiry, such as a customer calling to check on an order, could take over 15 minutes to resolve. 

As the client prepared for continued growth, they needed a scalable, well-documented integration strategy that would connect systems cohesively, ensure consistent processes, and empower their teams to respond to customers quickly and confidently.

Solution Approach

Trility helped the client reimagine how their systems communicated by implementing a unified GraphQL API layer with Apollo Federation. This included defining the GraphQL schema, architecting integrations with all source systems, establishing Apollo Federation as the foundation for scalability, and helping consuming teams leverage the graph in their user-facing tools.

This architecture enabled data from disparate systems – such as six different product manufacturing companies and multiple parts systems – to be represented consistently, without requiring those systems to be tightly coupled.

To support this flexible and scalable system, Trility implemented the observer design pattern using tools like SNS, SQS, and Kafka. This publisher/subscriber model ensured that changes in legacy systems, including Oracle, could be published to the Graph and served to other systems or clients in near real-time. 

Outcomes

By implementing a unified GraphQL architecture using Apollo Federation, the client significantly reduced the time it took support teams to access accurate customer and service information. The graph now serves as the backbone of user-facing applications, providing a single, consistent interface for accessing data across the enterprise. 

Trility enriched and extended existing subgraphs, such as the customer API, by adding queries and mutations and populating them with complete datasets. These enhancements expanded usability beyond individual business units, enabling broader access and impact across teams.

Dealers and customer service representatives now have fast, consistent access to the data they need. Standardized integration patterns, along with clearly defined authentication and authorization protocols, tightened endpoint security and improved system reliability.

Documentation and guidance in Confluence provide a clear path for onboarding newly acquired companies into the graph ecosystem, equipping the client with scalable infrastructure to support continued growth.

Project Attributes

  • Reduced COO
  • Reduced Risk
  • Reduced Technical Debt
  • Accelerate Delivery
  • Increased Uptime
  • Increased Automation
  • Increased Scalability
  • Reusable Patterns
  • Increased Capabilities
  • Increased Security

Technologies Used

  • Javascript
  • Terraform
  • NodeJS
  • ExpressJS
  • PostgreSQL
  • Flyway
  • Apollo
  • GraphQL
  • AWS Kubernetes Service (EKS)
  • AWS Simple Queue Service (SQS)
  • AWS Simple Notification Service (SNS)
  • AWS S3
  • Databricks
  • Apache Kafka
  • Jest
  • LogScale