Unified a post-merger SharePoint ecosystem with MS Graph-driven automation and Kafka microservices for real-time report processing across business units.
Following the merger of a petroleum business into a larger enterprise, the combined organisation had two distinct SharePoint environments, separate reporting workflows and document management practices that were not aligned. The integration required more than a technical migration - it needed the business systems from both sides to operate as a single coherent collaboration environment without disrupting day-to-day operations during the transition.
The earlier phase of this engagement had established the core SharePoint architecture, document management framework and MS Graph automation for the acquiring organisation. The merger added a second business unit with its own SharePoint footprint, different reporting requirements and Kafka-based data infrastructure that needed to be connected to SharePoint document libraries.
MS Graph services for automation (C# / .NET)
The core SharePoint operations - document library management, permission provisioning, site creation for new projects, automated document tagging on upload - were managed through a suite of MS Graph services. These ran as scheduled jobs and event-driven processes, handling the volume of SharePoint operations that would be impractical to perform manually at enterprise scale.
The Graph API abstraction layer ensured all SharePoint operations went through a consistent service interface rather than being scattered across application code. This made it practical to maintain audit logging for SharePoint operations at a single point - every document creation, permission change and site modification was logged to a compliance store.
Kafka microservices for report processing
The petroleum business's operational reporting ran on Kafka - operational data flowed through Kafka topics and was consumed by downstream systems. The integration requirement was to surface processed reports in SharePoint document libraries so business stakeholders could access them through familiar SharePoint channels without needing access to the Kafka infrastructure directly.
We built .NET microservices that consumed Kafka topics, applied the necessary data transformation - converting structured records into formatted Excel and PDF reports - and published the output documents to the appropriate SharePoint libraries via MS Graph. Each microservice was responsible for a single report type, making deployment and scaling independent.
The Kafka consumer configuration was tuned for the operational cadence of each report: some processed in near real time for operational dashboards, others on a scheduled batch basis for management reporting.
Post-merger SharePoint unification
The business unit integration required migrating document libraries from the petroleum SharePoint environment to the main tenant with metadata and version history preserved, reconciling permission structures across two organisations with different approaches to role definitions and security groups and building cross-business web parts that aggregated content from both original environments during the transition period.
The migration was executed in phases, with shadow-copy validation before cutover and rollback procedures in place for each library batch.
Compliance and governance
Retention policies were extended to cover the petroleum business document libraries, ensuring the merged estate met the compliance requirements applying to both business units. Permission structures were audited against the combined organisation's access control policy, with Azure AD group management used to enforce boundaries between business units while enabling cross-unit collaboration where required.
Using MS Graph as the consistent interface for all SharePoint operations paid off during the merger. Graph abstracts tenant-level operations cleanly and the same service code could operate against either tenant during the transition, making the phased migration practical without a code fork.
The per-report-type microservice design for Kafka consumers added some deployment overhead but provided clear operational boundaries. When a specific report's format changed, only the relevant microservice needed updating - other consumers were unaffected.
The post-merger SharePoint unification was completed with no business disruption during the migration period. The Kafka-to-SharePoint pipeline brought operational reports into SharePoint within minutes of data availability, replacing a process where analysts had previously exported and uploaded reports manually. Retention policy coverage was extended to the full combined document estate, closing a compliance gap that had existed in the petroleum business's previous environment.