Chuma Nnolim, Software Developer in Blaine, MN, United States
Chuma Nnolim

Software Developer in Blaine, MN, United States

Member since November 25, 2020
Chuma is a software engineer who has spent the last 15 years helping organizations and businesses understand and simplify their data and processes in their own language. He specializes as a database developer with the unique experience of managing and supporting a business intelligence platform for the supply chain line of business at Wells Fargo, amongst other engagements.
Chuma is now available for hire


  • CNSolutions
    ASP.NET MVC, C#, Azure, JavaScript, Three.js
  • Wells Fargo
    IBM Filenet, C#, Oracle, SQL Server 2008 R2, Functional Design, ASP.NET...
  • Freelance
    Database Development, IIS 7, RDLC+ReportViewer, Ajax Control Toolkit...


Blaine, MN, United States



Preferred Environment


The most amazing...

...thing I've designed and implemented is a custom workflow engine to replace a component of an OpenText Document Management system to enable its retirement.


  • Principal | Software Engineer

    2019 - PRESENT
    • Led business development, internal research, sales, client sourcing, and software development.
    • Developed a website using ASP.NET and Azure platform as a service (PaaS).
    • Modified a speech-to-text application to optionally use Azure cloud cognitive services for voice recognition.
    • Created a desktop application to search and display the human body using the Helix Toolkit (WPF), BodyParts3D Foundational Model of Anatomy (FMA) database, SQL Server, and C# with Entity Framework 6.
    • Modified MindWave desktop applications to be OSC protocol compliant to prepare for Simmetri VR integration with the existing MindWave applications.
    • Completed BodyParts3D, a diagnostic web application utilizing FMA data stored in an SQLite database, allowing the ability to navigate from one part of the body to another. Used the Three.js library for manipulating 3D glTF objects.
    • Converted the existing website to ASP.NET Core MVC, using both controllers and Razor Pages.
    • Converted the FMA data and parent-child hierarchies to flat hierarchies and displayed them in Tableau Public.
    Technologies: ASP.NET MVC, C#, Azure, JavaScript, Three.js
  • Technology Manager

    2016 - 2018
    Wells Fargo
    • Led the application management, supported, and, where necessary, developed enhancements for the shared services accounting (SSA) imaging application and integrated PeopleSoft procure-to-pay application.
    • Re-architected and replaced a BPM application, OpenText Process 360, for the accounts payable department with simplified internal COE offerings in a service-oriented architecture (SOA) while significantly minimizing infrastructure costs.
    • Rebuilt and redeployed the PeopleSoft browser for the accounts payable line of business from VB6 to C# WinForms using Chrome APIs.
    • Мigrated the FINRA documents from the vendor repository to Filenet to meet the FINRA compliance requirements for the company. Designed and implemented a scalable process running on multiple servers to extract data from vendor repository to Filenet.
    • Added the PeopleSoft Financials app as an additional image capture source for invoices, designing a data model with the PeopleSoft team to move the self-service invoice uploaded by the end-user to centralized capture on the imaging side.
    • Designed a simplified data model in SQL Server to replace the vendor ERD model for capture, workflow, end-user processing, image archiving, and storage.
    Technologies: IBM Filenet, C#, Oracle, SQL Server 2008 R2, Functional Design, ASP.NET, Database Modeling
  • Independent Software Consultant

    2015 - 2016
    • Rewrote the warehouse and inventory system for the State of Minnesota Department of Public Safety from Visual Basic 6 to a robust web application in ASP.NET used by all public safety divisions to order and receive items from the state warehouse.
    • Gathered requirements from the fiscal admin and warehouse staff.
    • Provided the gap analysis between the old system and a targeted new system.
    • Helped the warehouse staff develop a business requirements document (BRD) and modify it for the new requirements.
    • Provided a functional systems design document (FSD) traceable to BRD to the warehouse staff and obtained approvals from stakeholders.
    • Implemented an issue and requirements list in SharePoint with traceability to requirements that allowed for proper lifecycle procedures in collaboration with the project team.
    • Designed and implemented a new database using SQL Server to accommodate the targeted web application.
    • Developed a web app using ASP.NET Entity Framework for data, ELMAH for error logging, XML for the activity tracking and row-level security, RDLC for reporting, Ajax and jQuery with WebUserControls, and NT authentication security.
    • Configured the IIS environment for a web application, exported settings for the deployment team's migration to testing, and later prepped for the client deployment team for migration to production.
    • Converted existing Crystal Reports tied to the VB6 desktop version to RDLC (local reports), which were displayed with the report viewer. Added additional Microsoft RDLC reports based on requirements.
    Technologies: Database Development, IIS 7, RDLC+ReportViewer, Ajax Control Toolkit, Microsoft Report Viewer, Error Logging Modules & Handlers (ELMAH), JavaScript, jQuery, ASP.NET, Databases, Reports, Microsoft SQL Server
  • Technology Manager

    2006 - 2016
    Wells Fargo
    • Managed direct reports across states (Utah and Minneapolis) and cities (Charlotte and San Francisco). Wrote and delivered employee evaluations and reviews.
    • Ensured real-time integration with PeopleSoft procure-to-pay application, including providing disaster recovery time (RTO) and recovery point objectives (RPO).
    • Conducted budget planning for cost center, managed hardware, and maintained vendor relationships for maintenance contracts with the supply chain department's help.
    • Performed application upgrades and hardware tech refreshes for all supported systems.
    • Led the creation of the accounting unit (AU) store report for all Wells Fargo branch locations, using Oracle BI Publisher.
    • Deployed an OBIEE analytics solution to the supply chain department tasked with generating three billion saves per year.
    • Migrated from OpenText RightFax to the enterprise FaxCom infrastructure.
    • Implemented several enhancements, including adding email as an image capture source in addition to fax and scan.
    • Migrated existing application infrastructure to the Wells Fargo Core Data Center to improve disaster recovery and redundancy for supported applications.
    • Upgraded OpenText Process 360 to the latest stable version.
    Technologies: Hyperion Enterprise, PeopleSoft, Crystal Reports, Star Schema, SQL Server Integration Services (SSIS), Oracle Business Intelligence Enterprise Edition 11g (OBIEE), IBM WebFOCUS, Oracle, Linux, C#, ASP.NET
  • Application Systems Engineer

    2000 - 2006
    Wells Fargo
    • Provided support to technical staff, initiated and implemented projects for end-users in corporate finance. Managed and verified assignments given to team members.
    • Re-architected the vendor BPM desktop applications to ASP and then ASP.NET Web, which allowed the Wells Fargo accounts payable department to have employees nationally and globally, as employees became fully location-independent.
    • Added multiple capture sources, such as fax and email, to an existing scan image capture, which allowed the Wells Fargo accounts payable department to better process and meet their SLAs for invoice processing to their customers.
    • Removed the image application dependency on vendor scripting languages such as Lisp and replaced them with Visual Basic for Applications (VBA) and .NET services to improve the system's supportability.
    • Eliminated remote users' access limitations on vendor-provided functionalities, such as fax splitting, existing only in desktop applications by providing those functionalities in web applications.
    • Designed and implemented a knowledge base application for fellow developers and support staff. Worked with the PeopleSoft team to develop a configurable file layout system to receive payment processing file uploads from vendors outside the firewall.
    • Designed and implemented a PeopleSoft web browser for the PeopleSoft team to handle the transition from PeopleSoft 7 (desktop) to PeopleSoft 8 (web-based).
    • Eliminated previous screen-scraping integration between PeopleSoft and BPM application (Viewstar) and replaced them with real-time integration of both systems, using Java RMI, GhostScript, and direct web calls.
    • Designed and implemented a custom image viewer to replace a vendor image viewer, which could not perform adequately on the new web applications.
    • Extended PeopleSoft Financials workflow to better integrate with the imaging system and new web-based PeopleSoft requirements. Created documentation and trained others for independent support.
    Technologies: GhostScript, Java RMI, ASP.NET, SQL Server 2000, Lisp, Visual Basic 6 (VB6), Visual Basic for Applications (VBA), PeopleSoft, PeopleTools, PeopleCode, ASP, Reports, Databases, Batch File Processing, CSV File Processing


  • 3D Body Diagnostics

    I initiated this project as a means towards a much larger goal of a functional motion-based model. This diagnostic tool provides the capabilities to search and navigate from one part of the body to another. It uses SQL common table expressions (CTE) to navigate through a hierarchical pair recursively.

    The hierarchical pairs consist of 3D points extracted from vertices of 3D object files representing parts of the body and matched up as pairs where vertices meet. Each body part exists as part of multiple hierarchies within the Foundational Model of Anatomy (FMA).

    There are options for avoiding different body part categories in the search. For example, I can avoid any paths that involve going through the skin when going from the tongue to the occipital lobe.

    The search is asynchronous and happens in parallel in three ways:
    - A task that traverses hierarchical pairs from the start node towards the end node.
    - A task that traverses hierarchical parts from the end node towards the start node.
    - A task that monitors the first two tasks can also end the search if the search goes beyond two minutes.

    Using the cancellation tokens concept, any task can quit the search if any of the tasks meet their goal.

  • Public Safety Warehouse Inventory and Sales Order System

    Re-tooled and re-platformed the existing VB6 system and database to an intranet ASP.NET application. The Public Safety divisions in Minnesota use the system to order and receive items from the Public Safety Warehouse.

    • Implemented a preordering functionality to improve self-service adoption for the public safety division admins, especially trooper districts, and removed the dependency on the data entry staff who manually entered orders received via fax from divisions around the state.
    • Integrated the system with Speedee shipping system.
    • Incorporated internal active directory groups as application groups within the app, controlled by warehouse admins for application data and object security.
    • Incorporated an "act as" functionality, allowing warehouse admins to ensure application groups and their users only see data and pages they were entitled to see.
    • Incorporated expiration of inventory items sent to all public safety personnel with notifications on upcoming expirations.
    Implemented a workflow to allow warehouse staff to control and manage how orders came into inventory, including triggering backorders as needed.
    • Added the notifications seen only by admins to review the items requiring immediate attention.

  • OpenText Process360 Document Imaging Application Replacement and Decommission

    Designed and implemented the replacement of the OpenText Process360 document management application. Vendor stack needed to be decommissioned while still allowing LOB to retain its robust functionality and integration with PeopleSoft procure-to-pay solutions.

    -Re-architected the vendor-delivered document capture to use existing enterprise Kofax Capture push interfaces for fax, email, and scan.
    -Vendor-delivered document storage was re-architected to use an intermediate Filenet web service interface to the enterprise Filenet storage.
    -Replaced the vendor-delivered document workflow with a new custom C# workflow engine, using Windows Services, XML, and SQL tables.
    -77 servers were tech-refreshed with significantly reduced VMs, reducing server footprint and costs while increasing application redundancy.
    -Migrated FINRA documents from vendor repository to Filenet to meet FINRA WORM compliance for the company with both systems online at the same time without impacting document workflow.
    -Rebuilt and redeployed a custom PeopleSoft browser for the accounts payable line of business from VB6 to C#, using Chrome APIs.
    -Added PeopleSoft Financials application as a document capture source for the enterprise document centralization.

  • Supply Chain Warehouse Implementation

    Implemented an OBIEE analytics solution for the supply chain department to better manage its suppliers and contracts and spend from requisition-to-payment distributions.

    The federation included all spending related-data sources such as Emptoris contracts, PeopleSoft procure-to-pay solutions, and spreadsheets used to analyze expenses and invoice images.

    Various hierarchies such as product, supplier, people, general ledger, and accounting were included to provide one view of all expense-related data. Communications during invoice processing were included to identify process improvements and improve SLAs.

    The default model came with PeopleSoft EPM (SCM). My involvement for each requirement agreed on with the supply chain line of business:
    • Modeled existing warehouse schema in OBIEE to enable creating user dashboards.
    • Modeled new schema objects from sources with the ETL team for the best representation in OBIEE.
    • Ensured correctness and speed of daily dashboard queries.
    • Recommended optimizations to the ETL team and end-user report writers and reseeded cache in OBIEE.

    I provided PaaS services for other LOBs within corporate finance departments needing reporting or analytics with my team.

  • Download Mining Telemetry Data using Cloud REST API

    This project was for a mining company (Toptal client) that ingests telemetry data for mining devices via a cloud REST API called IXON. The data was needed for reporting in multiple systems.

    Since my client was on the business side of the house with limited IT support for their initiatives and had no server infrastructure, I developed a stand-alone Node.js executable to perform data downloads on-demand via the IXON APIs. The application could eventually be ported to a server for scheduling should the bandwidth for IT support increase. The data was stored in a SQL Lite DB database to maintain data integrity and also cumulatively exported for every run. The SQLite database was useful for creating a single data source for all devices and maintaining the integrity of daily downloads.

    Eventually, once the target BI platform was revealed, I created a version of the Node.js application as an Iron python data source so that it could be initiated by the platform with instructions to do so should the client decide to take that route.

    In addition, I was able to contact the IXON team on behalf of the client and resolve some discrepancies between their documentation and their REST API interface.

  • Develop Vendor-facing Dashboards for Auto score quality

    This project was for an Automatic Vehicle Driving company (Toptal client) that improves the accuracy of its automatic vehicle (AV) by identifying and labeling objects in the real-world captured by its AV. Labeling activities are performed by external vendors worldwide and generate quality auto scores per project, which are absorbed within the company and presented back to the vendors to help improve the quality of labeler activities. Personnel spent 20 hours per week running Looker reports and sending scores to vendors via spreadsheets. The data was stored in a transactional database, reporting tool was google data studio, and using a google connector had poor performance.

    I transformed all the auto scores and Looker reports from the OLTP DB into a data source in BigQuery and then developed one Datastudio dashboard for all vendors using vendor emails to provide row-level security. Each score has quality expectations that help show how accurate the labelers or projects are performing. A Google Web app was created using Google app scripts to allow the configuration of expectations for each score in google sheets. A BigQuery JavaScript function was used to transform each score to color-code the auto scores for the vendor dashboard


  • Languages

    T-SQL, SQL, Visual Basic for Applications (VBA), PeopleCode, C#, Visual Basic 6 (VB6), Python, JavaScript, GhostScript, Google Apps Script
  • Frameworks

  • Tools

    Oracle Business Intelligence Enterprise Edition 11g (OBIEE), Crystal Reports, Microsoft Report Viewer, IBM Filenet, PeopleTools, HP Fortify, LoadRunner, HP Application Lifecycle Management (ALM), Jenkins, InstallShield, Azure App Service, Tableau, OBIEE Answers, Looker
  • Paradigms

    Database Development, Database Design, Requirements Analysis, ETL
  • Storage

    Database Modeling, Microsoft SQL Server, SQL Server Integration Services (SSIS), Oracle 11g, SQLite, Databases, PostgreSQL
  • Other

    Star Schema, OpenText Process360, Logical Database Design, Relational Database Design, Systems Analysis, Functional Design, PeopleSoft, Ajax, RDLC+ReportViewer, Software Architecture, IIS 7, RACI Matrix, Windows Services, PeopleSoft Financials, WCF Web Services, PeopleSoft EPM Data Warehouse (SCM), Database Table Optimization, Database Optimization, Performance Tuning, IBM WebFOCUS, Error Logging Modules & Handlers (ELMAH), Computer Engineering, Software Analysis, Software Design, Software Development Lifecycle (SDLC), Software Project Management, Computer Aided Software Engineering, Support & Maintenance, Capability Maturity Model, IIS, F5 Networks, Disaster Recovery Plans (DRP), Data Modeling, Hyperion Enterprise, Data Architecture, Data Engineering, Reports, Batch File Processing, API Integration, CSV File Processing, Google BigQuery, Google Data Studio, Web App Development
  • Libraries/APIs

    Java RMI, Entity Framework, HTML5 Canvas, jQuery, Ajax Control Toolkit, Three.js, Web API, Node.js
  • Platforms

    Windows, Oracle, Linux, Azure, Windows Server


  • Master's Degree in Software Engineering
    1994 - 1998
    University of St. Thomas - Saint Paul, MN
  • Bachelor's Degree in Electrical Engineering
    1990 - 1994
    University of Rochester - Rochester, New York

To view more profiles

Join Toptal
Share it with others