Verified Expert in Engineering
Tim has over 20 years of software development experience. He also spent 15+ years working freelance for various-sized companies, from large organizations and enterprises to startups that needed him to bring their idea to reality. He specializes in ASP.NET, .NET, C#, SQL Server Integration Services (SSIS), MySQL, and Python. Tim's robust background allows him to ramp up on projects of all sizes quickly and efficiently.
Visual Studio, SQL Server Management Studio, C#, MySQL, Microsoft SQL Server, Oracle, .NET, ASP.NET, SQL Server Integration Services (SSIS), Python
The most amazing...
...thing I've built included 100+ ETL packages, some with 50+ steps, using SSIS to extract, transfer, convert, and load multiple sources into the data warehouse.
Lead Solutions Engineer
- Created a C# application to call third-party APIs through GET and POST requests. I used the GETs to ensure that POSTs were successful by comparing before and after data to the source and destination.
- Wrote PowerShell scripts to push data to multiple systems, including Microsoft SQL DB, into Active Directory.
- Created an ETL process to export data from the in-house database into a file on the file transfer protocol site.
- Built a second ETL process to read data dumps from an external source back into the in-house database and compare differences.
Owner and Independent Consultant
- Wrote Python scripts to load well data from multiple states. Each state could have different formats, column names, and data points to create and map out all points of a well.
- Built a MySQL stored procedure to take data from a flat row data lake and migrate it into a data source, pivotable based on month and year, and used Loop to process running historical data for different period comparisons.
- Performed all project lifecycle phases, including proposal, work statement, requirements gathering, development, deployment, and production support.
- Optimized the database by correcting indexes created by previous developers and implementing an archiving process to remove millions of records from the application's core table.
- Generated over 30 enhanced .NET controls to make development faster, more efficient, and consistent.
- Created an online address and phone book with Ajax, ASP.NET, and C# for an interactive user experience, allowing users to find what they were looking for quickly.
- Developed an online auction website for cars and recreational vehicles and implemented set bid increments and up-to-bid limits to eliminate users' need to watch items constantly, including a buy-it-now feature, reserve pricing logic, and invoicing.
- Collaborated with a third-party hosting and DNS company support team when servers or services were down, causing client downtime, to resolve the issue as quickly as possible.
- Implemented multiple inventory management websites, including the inventory's public display and a back-end administrator login to manage inventory.
- Engaged with multiple clients fixing database object performance, returning incorrect data results, data, and database security.
VP of Operations
- Built over 100 ETL packages using SSIS to extract, transfer, convert, and load multiple bank cores' data into a single data warehouse daily into dimension and fact tables.
- Devised a process to keep the standard JOHO data warehouse consistent across all clients while supporting individual client-only data warehouse needs through customer-based database schemas.
- Communicated with a third-party software company to help them understand our specific reporting software needs so that they could provide us with future enhancements or workarounds.
- Managed the report development team, held one-on-ones, and looked to help mentor and share knowledge with all team members.
- Designed a flat-table building process that took any SQL views with certain prefixes and created faster-loading SQL tables from that data nightly, recreating indexes and constraints, which also provided faster data loading from the data warehouse.
- Created a data scrubbing process to scrub and sanitize production data into fake testing data, leveraging real account transactions but changing names and addresses and adjusting balances, account numbers, and any personally identifiable information.
- Developed a custom .NET software product and deployed it to multiple clients' on-premises servers for consistency and efficiency.
- Set up a process that enables client data to flow through Azure Functions from an on-premise server into an Azure server securely using a hybrid connection manager.
- Configured ten complete Azure server environment developments, tests, and productions using Azure Functions and hybrid connections to move data.
- Centralized the critical data scrubbing logic into database functions and stored procedures to streamline the data scrubbing process.
Director of Technology Services
Razor Consulting Solutions
- Corrected the SQL Server security, cleaning up all users' permissions by assigning database roles, creating custom database roles for specific objects, and removing multiple people as admins or owners.
- Used SSIS to pull data from the SQL Server, flat and Excel files, and SharePoint, transform them into clearer metrics, and store them back on the SQL Server for reporting.
- Displayed custom reports using Power BI, allowing users to filter. In some instances, I also used Excel's Power Pivot, Power Query, and Pivot Tables to create reports.
- Set up consistent structure and processes, so each project has the same workflow.
- Collaborated and communicated efficiently with consultants from four other companies to formulate a solution for clients.
- Coordinated the software development team's priorities, roles, and responsibilities and analyzed each project's priority weekly to determine if resources needed adjusting to meet deadlines.
- Innovated a replication process between the Sybase database through VPN and into the SQL Server on the Rackspace cloud environment.
- Sent weekly clear communication with clients on terms, contracts, status updates, budgets, and action items.
- Engaged with the company's leadership and executive team, contributing impactful decisions that affected the company's roadmap, strategy, and employees.
- Managed the company's technical side, including all projects, employees, and other aspects.
Software Application Development Manager
NAU Country, a QBE Insurance Company
- Devised custom web and user controls that improved team efficiency by placing repetitive logic setup and control validation at the control level.
- Researched a faster and more efficient way for developers to track errors across all applications to set up a core base error logging, so anything that rolls to the highest point of code still gets logged.
- Built tools to optimize the development team's productivity by creating alerts when Oracle database objects were invalidated due to a change, to not cause others downtime.
- Helped design and develop a code compare tool to verify code changes in all yearly-based files and prevent bugs from recurring.
- Managed multiple projects, fulfilling different roles of designer, developer, code reviewer, and quality assurance officer within the development lifecycle.
- Collaborated with designers to work on stronger security practices, coding standards, and other items that should be communicated to the entire development team.
- Developed automated tests to run for release deployment verifications to remove the need for manual testing after nightly releases.
- Created task alerts to email team members of pending high-priority tasks that need immediate assistance.
- Owned release manager responsibilities and worked with project management, business analyst, quality assurance, server, network, build, deployment, and development teams to communicate daily release status updates.
- Handled Progress Telerik Sitefinity configuration, customization, and enhancements after the initial vendor installation.
- Engaged as one of the top developers requested by project managers to be part of the development team due to experience and ability to work on any part of the system.
- Ensured high-quality code output from myself and everyone else on the team. During testing sessions, I would thoroughly review as many features as possible, looking for issues that needed correcting before the next release.
- Participated as one of the leading developers who interacted with consultants from around the globe to answer their questions, provide feedback, and do code reviews.
Data Warehouse Data Flow for Fintech
During this project, I configured ten full Azure server environment developments, tests, and productions, moving data with Azure Functions and hybrid connections. I also implemented a process using a hybrid connection manager, which enabled client data to securely flow through Azure Functions from the on-premise server into the Azure server. Additionally, I streamlined the data scrubbing process by centralizing the critical data scrubbing logic into database functions and stored procedures.
For historical comparisons, I completed an ETL process that generates monthly trending tables. I also customized data calculation processes unique for each client in how they processed their general ledger accounts. Finally, I developed a flat-table building process that took SQL views with certain prefixes and created faster-loading SQL tables from that data nightly, recreating indexes and constraints. This provided faster data loading from the data warehouse, only refreshing data nightly.
Online Auction Database
The bidding platform has range indicators for the bidding amount to be increased. The data model supports one too many bids. The table also was set up to allow any customized item to be sold with some key indicator fields setup.
I optimized the database tables using correct foreign keys, indexes, and views. I created multiple stored procedures for the website to call to manage the read, write, insert, and delete functionality.
Database Warehouse and Data Model
I worked to isolate certain tables into child tables for better speed and performance where things could be one too many at some point, thereby future-proofing the design.
I created summary tables for data grouping data from the data lake into easier-to-report-off table structures. I optimized other tables that previously existed by setting up an archiving process where millions of rows of data were not leveraged at all by the application but were required to keep stored for audit purposes.
I then set up an automated database process to archive those records regularly. This greatly increased the performance of the queries within the application and allowed indexes to be more effective.
.NET, ASP.NET, .NET Core, Windows PowerShell, AngularJS, ASP, Angular, React Native, .NET 4, Bootstrap, Windows Presentation Foundation (WPF), OAuth 2
REST APIs, React, ODBC, LINQ, Node.js, Web API, jQuery, Windows Forms (WinForms), Office 365 API, G Suite API
Visual Studio, TFS, Jira, Bitbucket, Microsoft Excel, Microsoft Power BI, Power Pivot, Tableau, Sitefinity, Git, GitLab, RabbitMQ, Google Analytics, Query Plan, Crystal Reports, Power Query, Microsoft Access, SolarWinds, NGINX, G Suite, GitHub
REST, ETL, Requirements Analysis, DevOps, Database Design, Agile, Application Architecture, Management, Business Intelligence (BI), Desktop App Development, Functional Programming, Microservices, Model View Controller (MVC), Lambda Architecture
Windows, Visual Studio 2016, Oracle, Azure Functions, Azure, Telerik, WordPress, Amazon Web Services (AWS), Oracle Database, Docker, Amazon EC2, Linux
SQL Server Management Studio, MySQL, Microsoft SQL Server, SQL Server Integration Services (SSIS), SQL Stored Procedures, Relational Databases, Data Pipelines, PL/SQL, Database Architecture, Databases, Database Modeling, SQL Views, API Databases, DB, Data Integration, SQL Performance, Data Lakes, Oracle PL/SQL, PL/SQL Developer, JSON, SQL Server Reporting Services (SSRS), SQL Server 2016, Database Administration (DBA), Microsoft DBA
Data Warehouse Design, IIS, Web Services, Windows Services, WCF Web Services, Ajax, Back-end Development, Front-end Development, OOP Designs, Data Analytics, Data Engineering, Query Optimization, Data Warehousing, Back-end, Analytics, Data Architecture, Software Design, Web Development, Architecture, Full-stack, Leadership, Relational Database Design, Reports, Database Optimization, Data Entry, Database Schema Design, Relational Database Services (RDS), Datasets, Data Analysis, Data Cleansing, Data Profiling, Technical Leadership, Software Architecture, API Integration, Team Leadership, Reporting, Data Transformation, Data Queries, ELT, Data Migration, Data Extraction, Entity Relationships, Linked Servers, APIs, DevExpress, Windows Communication Foundation (WCF), Data Modeling, Amazon RDS, Performance Tuning, Data Visualization, User Experience (UX), Prototyping, Server-side Rendering (SSR), Training, Google Tag Manager, Office 365, CRM APIs, Big Data Architecture, DAX, Azure Data Lake, Site Reliability Engineering (SRE), Lambda Functions, Serverless, Networking, Google Ads, DocuSign
Bachelor's Degree in Computer Science
Minnesota State University Moorhead - Moorhead, Minnesota, United States