T-SQL Developer in Grand Rapids, MI, United States
Software Developer2014 - 2017Capsaicin
Technologies: SQL Server, C#, AWS, Azure, Visual Studio Team Services, HTML5, MS PowerBI
- Implemented the company’s first continuous integration data solution via Visual Studio Team Services. Incorporated automated deployments to test and development environments, where unit tests were automatically triggered.
- Created service broker processes to migrate gated user changes from isolated internal environments to client facing AWS machines.
- Developed and implemented company’s first consolidated central reporting platform with email delivery providing the daily status of SQL job executions, SQL backups, across 20+ SQL servers.
- Reduced the ETL query performance by over 80% by reengineering ETL processes using binary hashing. Previous codes took more than ten hours to run, invoking race conditions, deadlocks and excessive IO consumptions that lead to failed data migrations.
- Circumvented performance problems related to normalization by utilizing Bitwise coding patterns.
Senior Software Engineer2011 - 2013Microsoft
Technologies: SQL Server, C#
- Architected and optimized database applications/systems on Windows Azure Platform and deliver data stored in seven data centers on three continents.
- Built and maintained SQL scripts, indexes, and complex queries for analysis and extraction of data vital to product roadmaps and strategic decision-making.
- Conducted SQL server tuning; designed C# libraries, data warehouses, and ETL processes.
- Performed code and design reviews, and introduced enhancements to meet established time frames for query execution.
- Liaised with international team members for product training and facilitating product handoff.
- Collaborated with project managers and internal stakeholders to develop KPIs and metrics for reporting performance and growth of Windows Azure product line to division heads.
- Led training, web demonstrations, and knowledge transfers between three teams across three continents.
- Headed up the SQL code review; evaluated TSQL peer code for query optimization.
- Made key contributions to the development of new analyses trends and mechanisms impacting the Azure Platform.
- Was routinely commended for superior critical thinking skills and ability to quickly assess and resolve issues on-the-fly, with traditional and outside-the-box solutions to sustain forward momentum.
Senior Software Engineer2010 - 2011Huron Group
Technologies: SQL Server, SSRS, C#
- Reduced 35-minute queries to eight seconds by rearchitecting the reporting for a real-time BI data warehouse.
- Discovered and eliminated design flaws from inaccurate business assumptions that had indexed views of 800 million records (45 GB) with 52% of those records never being reported on.
- Designed a configurable C# solution that exposed a CSS type functionality to SSRS reports. Provided visual consistency between reports and allowed customization due to the XML base.
- Minimized the footprint of queries by 45% after utilizing various techniques with cross applies and grouping sets in-conjunction with pivots.
- Presented novel idea to address a critical performance bug that crippled the application during the initial pilot release; resolved the issue within 45 minutes, saving days of development cycles in other solutions.
Senior Software Engineer2009 - 2010Apriva
Technologies: SQL Server, C#
- Was initially recruited to design query requests and reports which quickly progressed into a leadership role coordinating design and maintenance of a web portal for managing credit card transactions, merchant accounts, and the provisioning of credit card devices.
- Mentored and coached junior developers.
- Championed and won approval to migrate code from four web applications into a common solution, illuminating business logic previously buried in the application to unit tests, subsequently hailed as “the single most important product improvement to their products in five years.”.
- Refactored 50 stored procedures to use more efficient joins while removing redundant codes and logic.
- Normalized core databases to reduce redundancy and prevented duplicate work by employees by eradicating the need to update several records for a single change.
- Implemented the company’s first data mart to resolve long history of problems with reporting performance.
Software Engineer II2007 - 2009Quest Software
Technologies: SQL Server, C#, SSAS, SSRS, SSIS, ETL
- Created SSIS packages for five different products; successfully developed data mashup from the Exchange, Active Directory, event logs, and network alerts.
- Completed a complex project of modifying 200 SSRS reports four weeks ahead of schedule.
- Teamed with offshore developers in designing OLAP database and SSRS reporting strategy for an Exchange reporting solution.
- Tuned and refactored sprocs (stored procedures) necessary for generating dynamic SQL for an ad-hoc Active Directory reporting product. Incorporated configurable logging to lessen the time required for creating root cause analysis of bugs.
- Played an integral role in the development of the company’s first OLAP cube.
- Automated Warehouse Creation (Development)
I architected and designed a software solution to automate data warehouse creation that reduced daily workload by 40%. The configuration of the warehouse was exposed via an ASP.NET MVC web application that enabled project managers and stakeholders to customize their client-specific data warehouse.
The configuration for each client was stored in XML and managed under source control—enabling us to track schema changes for each client. This approach allowed the team to clone a star schema from one client to another, or to propose multiple variations of a schema with ease and no additional coding. The solution generated persisted code based on the configuration from XML, ensuring the client facing warehouse contained zero dynamic code for maximum query optimization.
I assured the stability and reliability through continuous integration and the replacement of bugs with proactive validation. The extensibility of this solution allowed us to devise multiple internal testing databases covering all use-cases. The quality was guaranteed through unit and regression testing.
- Performance Optimization (Development)
I experienced a period of unexpected company growth, during which a surge of new clients increased ETL processing times from minutes to hours. In one quarter, we experienced 24 months of projected data growth.
As my team worked to devise an overhaul, I took a more pragmatic approach and reviewed the existing architecture. During the root-cause analysis, I identified the following errors in logic that hindered the ETL processes.
1. Each insertion of data caused page breaks in the clustered index.
2. Foreign keys on staging tables also hindered the data insertion.
3. Dimensional tables with large record counts and numerous text fields caused unnecessary table scans during upsert procedures.
To resolve these issues, I first devised a new clustered indexing strategy prioritizing record insertion speed. Removal of the foreign keys in the staging tables eliminated a bottleneck during record insertion. I then created a hash key derived from the text columns. Utilizing this field, I was able to ensure that only one column was needed to identify new or updated records. This change turned table scans into index seeks.
Once my solutions were implemented, we were able to reduce the ETL processing time to mere minutes.
LanguagesT-SQL, SQL, XML, C#
ToolsAzure DevOps Services, Microsoft PowerBI, Git
ParadigmsDatabase Design, Agile Software Development, ETL Implementation & Design, Continuous Integration (CI), Automation, Test-driven Development (TDD)
PlatformsVisual Studio 2017, Azure
StorageSQL Stored Procedures, Microsoft SQL Server, Database Modeling, JSON, SQL Server Integration Services (SSIS), Database Administration, SQL Server Reporting Services (SSRS)
OtherETL Development, Query Optimization, Data Warehouse (DW) Requirements, Data Warehouse Design, Data Manipulation, CSV File Processing, Automation Tools
Frameworks.NET, ASP.NET MVC
Libraries/APIsWeb API 2
- Bachelor of Science degree in Software Engineering2004 - 2007University of Advancing Technology - Tempe, AZ, USA