Work
Selected work: connecting systems, data, and reporting
For nonprofits, connected intake, dependable reporting, and usable systems matter. These examples show how we approach those technology challenges: start with the workflow, then design the architecture. Professional experience is not presented as work commissioned through VerdaStat; architecture designs are not presented as deployed client solutions.
Start with a free 30-minute introductory consultation to discuss your organization's needs. This introduction is separate from paid assessments and implementation.
How The Work Is Framed
The problems below illustrate why understanding workflows and dependencies matters before choosing technology. They do not imply historical use of the 6W Framework. Need clarity? Explore an Assessment. Have defined requirements? Request an Implementation Quote.
Filter Work
Professional Delivery · Anonymized
Funder and government reporting
Funder and government reports took about a week to turn around, and quarterly reporting took two weeks to prepare.
Migrated reporting from Tableau to Power BI, redesigned data models with executive and BI leadership, and defined Dynamics 365 KPIs and reporting criteria for a federal funding program.
Reporting moved from a one-week turnaround to on-demand access. Quarterly reporting preparation dropped from two weeks to 3–4 days.
Professional Delivery · Anonymized
AI-assisted lead qualification
Qualifying incoming leads required significant staff time.
Led a five-phase initiative delivering a four-agent application built with Claude's API and structured Markdown instructions, coordinating stakeholders and technical delivery.
Lead qualification time fell by approximately 75%. This professional delivery example demonstrates workflow automation, not a new standalone service.
Professional Delivery · Anonymized
Delivery at scale
Technical delivery of 200+ enterprise-system enhancements.
Owned requirements, solution decisions, development, testing, and releases.
Shortened delivery cycles from 2–3 weeks to one week.
VerdaStat Build · Data Platform
Manitoba Business Intelligence Platform
Reliable information about tens of thousands of Manitoba businesses is difficult to collect, maintain, classify, and analyze manually.
Designed a reproducible ingestion and enrichment process around public Overture Places records and official Statistics Canada NAICS Canada 2022 reference data.
Built a structured PostgreSQL data platform containing 37,000+ Manitoba business records across industry, official NAICS classification, location, category, and company dimensions.
Created a maintainable foundation for structured business research and analysis. This VerdaStat build demonstrates data-platform capabilities; it is not presented as a nonprofit client deployment.
- Uses Python, Overture Places, REST APIs, PostgreSQL, Supabase, and official NAICS Canada 2022 files.
- Keeps source business records, official NAICS references, and custom category mapping logic separate.
- Potential applications are analytical possibilities and are not presented as deployed client programs.
Architecture Design · Azure SQL Backend
Structured service request foundation
Internal requests were scattered across email, chats, spreadsheets, and informal follow-ups, making ownership, status, priority, comments, and reporting difficult to manage.
Designed a normalized Azure SQL backend with request, category, status, comment, and assignment tables, plus keys, constraints, timestamp logic, seed data, and a reporting-ready view.
Structured tracking, cleaner data entry, and a foundation for future Power Apps integration and BI reporting. Presented as a backend design, not a deployed client solution.
- Modeled one-to-many relationships for requests, comments, assignments, categories, and statuses.
- Selected lookup tables and constraints so categories, statuses, and priorities use consistent values rather than uncontrolled free text.
- Created a readable SQL view for future operational reporting and analytics.
Architecture Design · BI Infrastructure
Refresh architecture migration
Scheduled BI refreshes depended on a gateway installed on a local workstation, creating a single point of failure when the machine slept, rebooted, disconnected, or became unavailable.
Designed a migration to a cloud-hosted Windows VM running the Power BI gateway while keeping the existing source, ingestion, storage, preparation, and query layers unchanged.
A refresh path with less workstation dependency, with planned monitoring, credential handling, backups, and future high-availability options. This is a migration plan, not a deployed client result.
- Selected a cloud-hosted gateway to address workstation availability without replacing the existing source, ingestion, storage, preparation, or query layers.
- Outlined VM setup, gateway installation, connector configuration, dataset mapping, and refresh testing.
- Included production recommendations for monitoring, recovery-key storage, service credentials, and gateway clustering.
Professional Delivery · CRM Automation
Website-to-CRM lead intake workflow
Business users were spending too much time manually handling website intake, CRM data capture, record creation, and follow-up, slowing response times and making lead activity harder to track.
Designed a website-to-CRM intake workflow using a Real-time Journeys form, Dataverse custom activity records, and interaction tracking for advisory follow-up and reporting visibility.
Reduced manual handling by approximately 95%, with faster client response, cleaner lead capture, fewer errors, and better follow-up visibility.
- Used a Real-time Journeys form as the intake entry point and Dataverse activity records to connect captured information with advisory follow-up and reporting.
- Used custom activity and interactions tables to support structured lead-generation activity.
- Gave the advisory team a cleaner path for follow-up instead of repetitive manual entry.
Architecture Design · Dataverse Integration
External business data API integration
External business records needed to be searchable inside a model-driven app without overwriting operational CRM accounts, creating duplicates, or relying on repeated manual imports.
Designed a low-code integration using a Power Platform custom connector, Power Automate, a separate Dataverse table, and scheduled append-and-update logic driven by stable external record IDs.
A controlled way to review external profiles, detect changes, and keep operational CRM records separate, with a proposed path to Azure Functions when low-code limits are reached.
- Proposed a separate Dataverse table so external profiles could be reviewed without overwriting CRM Accounts, Leads, or Contacts. This is an integration design, not a claim of a deployed client implementation.
- Defined duplicate prevention, field comparison, inactive-record handling, error capture, and scheduled refresh behavior.
- Designed model-driven views for new, updated, unchanged, inactive, and error records.
VerdaStat Build · Website Inquiry Workflow
Secure website inquiry workflow
Website inquiries can get lost in inboxes, copied manually into spreadsheets, or tracked without a clean contact history, making follow-up slower and harder to measure.
Built the inquiry workflow behind this website: Vercel forwards form submissions to Azure Functions for server-side validation and hCaptcha verification, with Azure SQL contact and inquiry records and Microsoft 365 notifications.
Valid submissions create inquiry records, contacts are matched by email, and message history is preserved. Future extensions could connect CRM, Teams, automation, or BI; these are not presented as already deployed.
- Used Vercel, Azure Functions, Azure SQL, hCaptcha, and Microsoft 365 SMTP instead of introducing a heavy CRM platform too early.
- Separated contact master records from inquiry messages so one person can submit multiple inquiries without duplicate lead records.
- Kept credentials and database access behind backend services while preserving a simple user experience on the website.
Professional Delivery · Dataverse Form Logic
Data-entry validation and auto-population
Standard business rules were not enough to control the form behavior users needed, leaving room for missing context, inconsistent records, and manual field updates.
Implemented JavaScript-based model-driven form logic using onLoad behavior to validate values and auto-populate fields where configuration alone was not sufficient.
Improved data completeness and reduced entry errors through validation and automatic field population at the point of entry.
- Used JavaScript where form-side business rules could not fully support the needed behavior.
- Guided users through validation and automatic field population during form load.
- Strengthened data quality at the point of entry instead of relying on downstream cleanup.
Professional Delivery · Azure Data Pipeline
Dataverse-to-SQL pipeline architecture
The existing Skyvia ingestion approach hit platform limits, creating scaling pressure for larger data movement and reporting needs.
Architected a Dataverse-to-Azure SQL pipeline using Azure Data Factory and Azure Blob Storage within the organization's existing cloud environment.
Processed 100K+ records per cycle, improved reliability, reduced manual work, created a cleaner reporting layer, and controlled cost through the existing Azure environment.
- Re-architected ingestion after the previous tool reached practical limits.
- Focused transformation work on reshaping columns for a cleaner SQL reporting layer.
- Used the existing Azure footprint to improve scalability without unnecessary platform spend.
Supporting Samples
Architecture examples behind the work.
Sanitized samples that support the backend design and reporting infrastructure examples above.
Azure SQL Backend
Service request table design
A normalized backend design for service request management, structured for future Power Apps, BI reporting, and operational tracking.
- Separated request records from reusable category, status, comment, and assignment tables.
- Used foreign keys, unique lookup values, and priority checks to reduce invalid or inconsistent data.
- Added timestamp automation and a reporting-ready SQL view so business tools can consume readable values.
Power BI Gateway
Refresh architecture migration
A migration plan that keeps the analytics pipeline intact while replacing a local workstation dependency with a cloud-hosted gateway path.
- Mapped the current source, ETL, storage, preparation, query, gateway, and service layers.
- Outlined VM provisioning, gateway installation, connector setup, dataset mapping, and refresh testing.
- Included production controls for monitoring, credentials, recovery-key storage, backups, and future gateway clustering.
Lead Capture System
Secure inquiry workflow architecture
A lean intake system that captures website inquiries, validates submissions, stores clean contact and inquiry records, and sends inbox notifications without adding a heavy CRM platform too early.
- Replaced manual follow-up risk with a structured workflow from website form to backend processing, database storage, and email notification.
- Used Vercel, Azure Functions, Azure SQL, hCaptcha, and Microsoft 365 SMTP to keep the solution practical, secure, and lower-cost.
- Created a clean foundation that can later connect to CRM, Dataverse, Teams notifications, automated follow-up, or BI reporting.
Results at a Glance
From the founder's professional delivery.
Anonymized professional experience, not VerdaStat client engagements.
~75% less time
To qualify leads using an AI-assisted workflow.
One week to on-demand
Access to funder and government reporting.
Two weeks to 3–4 days
To prepare quarterly funder reporting.
100K+ records
Processed per cycle in a cloud data pipeline.
2–3 weeks to one week
Delivery cycles across 200+ system enhancements.
Delivery Strengths
Execution that connects business requirements, technical quality, and operational continuity.
VerdaStat™ delivery includes stakeholder workshops, workflow design, UAT coordination, releases, documentation, and handoff so solutions stay usable after launch.
Problem Type
Disconnected reporting
When funder, board, or leadership reports depend on manual exports, reconciled spreadsheets, or fragmented dashboards.
Problem Type
Weak data foundations
When automation, CRM data, or analytics depend on incomplete records, inconsistent fields, or poor controls.
Problem Type
Delivery bottlenecks
When teams need practical implementation help to move from roadmap or concept into working solutions.
Start Building Clarity
Bring us the technology problem your organization needs to solve.
Your first conversation is a free 30-minute introductory consultation. Discuss intake, program systems, reporting, integration, automation, or modernization. Any assessment or implementation work is separately scoped and approved.
Discuss Your Project
Share the outcome, blockers, and support you need.