Saqib OS / Selected Work

Systems that make complex work clearer.

A portfolio of CRM modernization, product engineering, integrations, and the technical leadership behind them.

3 projects
17 workstreams
Back to profile

Selected Projects

Each project opens into the challenge, approach, and outcome. Follow the work from the index or browse in sequence.

Return to professional profile

Cubic Transportation Systems

CRM Email Connector

High-Level Architecture — Exchange Online ↔ CRM Email Connector ↔ Dynamics CRM
Windows Service Runtime

Designed and implemented a polling-based Windows Service that orchestrates concurrent inbound and outbound email processing with health monitoring, idle recycling, and graceful shutdown.

Challenge
The service must run unattended 24/7 on on-prem infrastructure, recovering from transient CRM and Exchange failures without operator intervention while keeping memory usage stable over long uptimes despite known framework-level memory leaks in the CRM connection model.

Approach
Built a poll-loop architecture with a cached CRM connection that self-heals on fault, configurable health-check intervals that avoid unnecessary load, and an idle-recycle mechanism that rebuilds internal state and reclaims memory after prolonged inactivity. Graceful shutdown uses a two-phase model — signal stop, wait up to 60 seconds for in-flight work, then force-cancel remaining operations.

Outcome
Production service sustains weeks of continuous uptime with stable memory footprint (~40-50 MB working set), sub-second cycle overhead, and zero unplanned restarts.

Service lifecycle — startup validation through continuous polling with self-healing
Microsoft Graph Integration

Integrated Microsoft Graph for incremental mailbox sync, outbound email sending with reply-header threading, and automated folder lifecycle management (Processed, Quarantined).

Challenge
Graph sync tokens can become invalid or drift past unprocessed messages; outbound emails must carry correct reply headers so Exchange threads replies into the same conversation; and the Graph client accumulates internal state over long service lifetimes.

Approach
Implemented multi-layer sync resilience: token retry, CRM-timestamp fallback for fresh syncs, and drift detection that re-queries when the token returns zero but the inbox has messages. Outbound uses a create-draft then send pattern to capture the Exchange-assigned message ID, with standard reply-threading headers so recipients see a threaded conversation. The Graph client is automatically recycled every 30 minutes to prevent state accumulation.

Outcome
Reliable incremental sync that recovers from expired tokens without reprocessing the entire mailbox. Outbound replies correctly thread in recipients' email clients. No token-corruption incidents have caused permanent pipeline stalls in production.

Inbound email processing pipeline — Graph fetch to CRM case creation
Outbound email sending pipeline — CRM queue to Exchange delivery
CRM / Dynamics Integration

Built the CRM integration layer for email activity creation, contact resolution, case management, processing-state tracking, and outbound queue processing — all over the on-prem Dynamics service endpoint.

Challenge
Dynamics CRM on-prem uses connections that can drop on transient network issues, rejects certain Unicode characters, and leaks memory when connections are created frequently. The service must handle create operations that are not idempotent and distinguish network failures from business-logic errors.

Approach
Wrapped read/update operations in an automatic retry envelope that detects connection faults, recreates the connection, and retries once. Create operations are never retried (to prevent duplicates); instead, orphan recovery on the next cycle detects partially-created records and resumes. Unicode encoding errors trigger a sanitize-and-retry. A cached connection factory provides thread-isolated connections for parallel workers while sharing a single long-lived connection for the main loop.

Outcome
Zero data duplication from retried creates. Transparent recovery from intermittent network issues. Production deployments support both Active Directory and claims-based authentication modes without code changes.

CRM connection model — cached singleton with fault recovery and worker isolation
Email Threading & Case Resolution

Designed a deterministic, multi-strategy email threading model that resolves inbound emails to existing or new CRM cases with configurable precedence and fallback behavior.

Challenge
Email clients produce inconsistent threading signals — some include reply headers, some strip them; tracking tokens only work for connector-originated threads; and conversation IDs differ across Exchange and CRM. A single missed correlation creates orphan cases, while over-matching merges unrelated threads.

Approach
Implemented a priority-ordered resolution pipeline: (1) reply-header parent-email lookup, (2) subject tracking-token extraction [CASE:xxx], (3) conversation ID mapping, (4) normalized subject + sender matching within a configurable time window. Each strategy logs its decision for full audit trail. Resolved-case reactivation is opt-in so replies to closed cases can reopen them instead of creating duplicates.

Outcome
Deterministic, auditable threading with explicit precedence visible in logs. Operators can tune or disable each strategy independently. Compared to Server-Side Sync's opaque smart-matching, this approach eliminated mis-threaded cases and gave support teams confidence in case assignment.

Email threading resolution — reply header → tracking token → conversation → subject match
Admin App (WinForms Control Plane)

Developed a desktop application that provides setup validation, real-time monitoring, operational tools, configuration editing, log viewing, and audit logging — sharing the same configuration layer as the Windows Service.

Challenge
Operators need a GUI to validate connectivity, inspect processing state, manage quarantined emails, and edit encrypted configuration — all without requiring direct CRM or Exchange API knowledge or command-line access on production servers.

Approach
Structured the app with seven purpose-built panels (Dashboard, Exchange, CRM, Settings, Logs, Tools, Audit) sharing a runtime factory that instantiates the same service container as the Windows Service. The app auto-detects the installed service via Windows Registry, resolves the shared configuration file, and provides encryption utilities for operator self-service secret management. All admin actions are recorded in an audit log.

Outcome
Non-technical operators can independently validate deployments, diagnose issues, reprocess quarantined emails, and manage service lifecycle without developer involvement. Audit trail provides accountability for configuration changes.

Admin App panel structure and shared runtime integration
Resilience & Error Recovery

Engineered comprehensive error handling including per-message isolation, attempt-tracked quarantine, orphan recovery, sync-token replay, and operational alerting to ensure the pipeline never permanently stalls.

Challenge
A single poison message (malformed body, CRM error, oversized attachment) must not block the entire inbound pipeline. Partial failures (email created but case link failed) must self-heal without creating duplicates. Operators need proactive notification of degraded state.

Approach
Per-message processing is isolated — one failure does not stop others. Each failure increments an attempt counter; after a configurable limit the message is quarantined and processing advances past it. Orphan recovery detects partially-processed records and resumes from the last successful step. The sync token is withheld on failure (allowing replay), but force-advanced after 5 consecutive stalled cycles to prevent permanent blockage. Throttled email alerts fire for critical conditions.

Outcome
Production pipeline handles poison messages gracefully — quarantining them while continuing to process healthy emails. Orphan recovery resolves ~95% of transient partial failures automatically on the next cycle. Alert cooldowns prevent notification storms during extended outages.

CI/CD & Deployment Automation

Created an Azure DevOps pipeline that builds, packages, and deploys both the Windows Service and Admin App with zero-downtime service management and configuration preservation.

Challenge
Deployments must preserve machine-specific encrypted configuration, handle first-time installs vs. upgrades differently, and ensure the Admin App always shares the same settings file as the service — all on self-hosted Windows agents.

Approach
Pipeline uses a Build → Deploy two-stage model. Deploy replaces binaries while preserving configuration. A hardlink binds the Admin App's settings to the service's copy. Service registration respects prior state — only restarting if it was running before deployment; new installs are left stopped for first-time configuration.

Outcome
Repeatable, safe deployments across multiple environments (Dev, QA, Prod) with zero manual file copying. Configuration is never overwritten by deployments, and first-time setups are left in a safe state for operator onboarding.

Logging & Observability

Built a structured logging system with per-email correlation, PII masking, resource telemetry, and automated daily archival — providing full lifecycle traceability for every email processed.

Challenge
Support teams need to trace an individual email's journey from mailbox fetch through CRM case creation without wading through unrelated log noise, while compliance requires PII to be masked and log retention to be bounded.

Approach
Implemented separate log channels (service, inbound, outbound) with per-email correlation IDs and per-cycle resource telemetry (memory, CPU, timing, counts). PII masking runs on all log output when enabled. An archive service runs daily, moving logs to timestamped folders and purging archives beyond the retention window.

Outcome
Any individual email can be traced end-to-end via its correlation ID across all log channels. Resource telemetry enables proactive detection of memory leaks or performance regression. Automatic archival keeps disk usage predictable without manual intervention.

Cubic Transportation Systems

Dynamics CRM v8 to v9 Upgrade

V8→V9: Upgrade & Modernization

Modernized a heavily customized Dynamics CRM v8 platform and moved it to a stable, supported v9 environment.

Challenge
The organization relied on a heavily customized CRM v8 system with deprecated APIs, outdated JavaScript, unsupported Angular components, and WCF‑based integrations. The platform was approaching end‑of‑life and could not adopt new Microsoft features or UI frameworks.

Approach
Performed a full customization audit, modernized plugins and workflows, replaced deprecated APIs, updated JavaScript libraries, and resolved solution layering conflicts. Coordinated regression testing, UAT cycles, and cross‑team collaboration to ensure compatibility across all modules.

Outcome
Delivered a fully modernized v9 platform with zero downtime during cutover. Improved maintainability, reduced technical debt, and enabled adoption of the Unified Interface and future Microsoft roadmap features.

V8→V9: UI Modernization (Angular → Fluent UI React PCF)

Rebuilt legacy Angular components as reusable Fluent UI React PCF controls for the Dynamics Unified Interface.

Challenge
Legacy Angular components were incompatible with v9’s Unified Interface and no longer supported. They caused UI inconsistencies, performance issues, and blocked the upgrade path.

Approach
Reverse‑engineered Angular components, extracted business logic, and rebuilt them as reusable PCF controls using Fluent UI React. Integrated the new controls into CRM forms and datasets, ensuring full compatibility with v9’s UI framework.

Outcome
Delivered modern, responsive UI components that improved usability and reduced UI‑related defects. Enabled full adoption of the Unified Interface and eliminated unsupported Angular dependencies.

V8→V9: Data Migration Using SSIS + KingswaySoft

Migrated configuration and transactional data from CRM v8 to v9 through validated SSIS and KingswaySoft pipelines.

Challenge
The legacy v8 system contained inconsistent data structures, custom schema extensions, and legacy Pivotal CRM mappings that needed to be reconciled before upgrading to v9.

Approach
Built ETL pipelines using SSIS + KingswaySoft to extract, transform, and load data. Performed schema mapping, automated validation, and iterative test migrations to ensure accuracy and integrity. Coordinated with business teams for UAT validation.

Outcome
Achieved a 100% successful data migration with no post‑go‑live data defects. Reduced manual cleanup through automated transformations and enabled a smooth upgrade path.

V8→V9: Service Modernization (WCF → Web API)

Replaced tightly coupled WCF services with scalable REST-based ASP.NET Web API endpoints.

Challenge
Existing WCF services were tightly coupled, difficult to maintain, and incompatible with modern authentication and integration patterns required by v9.

Approach
Analyzed WCF operations, redesigned service boundaries, and rebuilt endpoints using ASP.NET Web API. Implemented modern authentication, structured logging, error handling, and versioning. Coordinated with integration partners to validate new endpoints.

Outcome
Delivered modern, scalable APIs that improved integration performance and reduced maintenance overhead. Enabled future integrations to adopt standard REST patterns.

V8→V9: Leadership & Team Management

Led developers, QA engineers, and consultants through the CRM upgrade, modernization, testing, and delivery program.

Challenge
The upgrade involved multiple teams working across UI, data, integrations, and platform modernization, with high risk of regression and cross‑module conflicts.

Approach
Directed sprint planning, estimation, sequencing, and execution oversight. Facilitated daily standups, issue triage, and cross‑team communication. Mentored developers on v9 SDK changes, PCF development, and modernization patterns.

Outcome
Delivered the upgrade program on schedule with all modules modernized and validated. Improved team productivity, reduced rework, and strengthened internal CRM capabilities.

Personal Project

Saqib OS

A durable knowledge graph turns one body of career knowledge into many professional views.
Personal Knowledge Graph

Structured professional experience, projects, skills, technologies, education, and certifications as connected Markdown nodes.

Challenge
Career information was distributed across resumes, profiles, project notes, and other documents, making it difficult to keep every version complete and current.

Approach
Designed a Markdown-based knowledge graph with YAML frontmatter, explicit relationships, graph traversal, backlinks, and validation.

Outcome
Created a durable source of truth that can be queried and reused across professional documents and AI experiences.

Markdown nodes flow through the graph into portfolios, resumes, and AI assistants.
MCP Server and AI Integration

Exposed the career graph through the Model Context Protocol so AI clients can answer questions using structured professional evidence.

Challenge
AI clients need reliable access to career context without relying on copied or outdated resume text.

Approach
Built a FastMCP server with graph lookup, traversal, evidence, profile, experience, project, and resume tools.

Outcome
Enabled AI clients to learn about Saqib through a controlled, evidence-backed interface.

The MCP interface turns natural-language questions into evidence-backed career context.
Generated Career Consumers

Generated resumes, portfolio pages, LinkedIn content, and job evaluation reports from the same graph, with CI/CD publishing updated artifacts when changes are committed.

Challenge
Each professional output has different presentation needs while the underlying career facts should remain consistent.

Approach
Created Python generators and reusable rendering templates for HTML, PDF, DOCX, Markdown, and evaluation artifacts.

Outcome
Reduced duplicated authoring, made tailored professional views reproducible, and enabled committed knowledge changes to trigger automated artifact generation and deployment.

The same career graph produces portfolios, resumes, LinkedIn content, and job evaluation reports.
Administration and Deployment

Added an admin application and CI/CD pipeline for managing nodes and publishing generated artifacts.

Challenge
Updating source knowledge and publishing fresh public artifacts should be simple, repeatable, and versioned.

Approach
Built a Next.js admin interface with Git operations and automated artifact generation through GitHub Actions and Cloudflare Pages.

Outcome
Established a workflow where updates to the knowledge graph can become published career views through a reviewed commit.

A reviewed knowledge change moves through GitHub Actions into the published artifact bundle.