William H. Whitecurriculum Vitaepage 1

William H. Whitecurriculum Vitaepage 1

William H. WhiteCurriculum VitaePage 1

WILLIAM H. WHITE



1371 Springfield Avenue, #6h: (908) 665-9426

New Providence, NJ 07974c: (908) 337-4541

Career & Skills Synopsis

IT developer with MBA in Financeextensive business experience.

Expert capabilities: VBA  Excel 365 (and prior) HTML 4.01  XHTML CSS 2.1 XML (incl. DTDs & Schemas)  JavaScript RDFa & Semantic Web markup SharePoint/MOSS (end-user) VBScript

Advanced capabilities: C#  .NET 4.52 (and prior) Visual Studio 2017 (and prior) WPF (incl. XAML)SQLServer2012(andprior) TSQL  ODBC Expression Blend VSTO Entity Framework 6  Windows Workflow 4 Prism 5.0  Windows Forms Access XPATH & XSLT WordVisio

Intermediate capabilities: VB.NET PL/SQL  UML WindowsPhoneHTML Help Workshop Sandcastle

NOTE: see IT Knowledge Basepage of for in-depth outlines of development expertise. Theseoutlines, which are continually being update, exceed 15,000 lines, about half of which exclusively cover .NET/C#.

Education

NEW YORK UNIVERSITY, SCHOOL OF CONTINUING & PROFESSIONAL STUDIES

Object-Oriented Analysis & Design C# .NET Programming

Visual Basic .NET Programming .NET Fundamentals

SQL Programming Language

NEW YORK UNIVERSITY, LEONARDN.STERNSCHOOL OF BUSINESS

M.B.A., Finance, Beta Gamma Sigma

DARTMOUTH COLLEGE, Hanover, NH

B.A., English (With Distinction)

Employment

FINPRO (NTT Data)

Gladstone, New JerseyMarch 2017

Developer (Consultant/Contract)

  • Rebuilt two failing Excel 2016 workbooks utilized by FINPRO to generate quarterly 200-300 slide PowerPoint client presentation. Refactored virtually all VBA code, introducing global- and module-level variables, numerous error traps, and self-commenting code. Eliminatedmultiple instances of redundant,non-functioning, and zombie code, and replaced magic numbers, strings, and range references with named constants, variables, and references.
  • Refactored and repaired an Excel 2016 workbook which generates exhibits for quarterly PowerPoint documents.
  • Operated under agile methodology, logging all issues, projects. and activity in Pivotal Tracker.

THE CHILDREN’S PLACE (JMS Technical Solutions)

Secaucus, New JerseyMarch 2016 – June 2016

Developer (Consultant/Contract)

  • Implemented major fixes to the company’s Price Management Tool (PMT), “a” macro-enabled Excel workbook utilized by internal merchants, price execution team, planning department, and others. There are approximately 3 dozen copies/versions of the tool active at any one time - all are binary-format (*.xslb) files, between 5MB and 15MB each.
  • Builta macro-enabled Excel workbook (dubbed the Cognos Automation Tool)which opens each PMT over the weekend and fireseach PMT’s slow-running Cognos data-download macro. The tool performs 4 data-integrity checks on external Cognos/SAP files themselves, and an additional 4 checks on each PMT, before running the PMT’s data-download macro and/or saving the updated PMT. The Automation Tool is highly configurable and user-friendly, with virtually all worksheets containing editable cells for all top-level parameters the business might want to modify. [NOTE: Originally developed a version of the Automation Tool entirely in VBScript. However, just before implementation IT management decided that it wanted any Cognos Automation Tool to run under Windows Scheduler, rather than under UC4 Scheduler, thus forcing redevelopment from VBScript to the Excel dictator workbook architecture.]
  • Wrote a 15-page user guide (including multiple annotated screen shots) for the Cognos Automation Tool.
  • Altered major VBA module in PMT(s) to hide 2 dozen columns (business was unwilling simply to delete columns), update the module’s process of recopying formulas throughout target worksheet, and introduce previously non-existent error traps for users who elected to update from an external PMT. Refactored remainder of module, significantly increasing execution speed.
  • Built Conflict Resolution capability for PMTs, consisting of a new user form, RibbonX buttons, and several modules and classes. Conflict Resolution automates the previous manual (and thus laborious and error-prone) process of identifying nine separate conflicts (e.g., that a putative mark-down price is higher than original ticket price) which must be resolved before PE team uploads pricing data from PMT to SAP.
  • Constructed a macro-enabled Excel file which allows users to add, remove, or replace VBA classes, modules, and forms for all Excel files in a target directory. The tool was developed to facilitate and automate the process of updating VBA code across the 3 dozen PMTs, though it can readily be modified for more generic use.

CRISIL (A Standard & Poor’s Company)

ManhattanOctober 2015 – December 2015

C#/T-SQL Developer

  • For CRISIL client Credit Suisse created a C# project (using Visual Studio) which utilizes EPPlusand ADO.NET to move and “transpose” data from a SQLServer database to a multi-sheet Excel file - without ever opening or utilizing Excel itself. (The solution is being run on a server where MSOffice cannot be installed.) Each record in the database represents a single data point from a group of MSProject files (populated by an existing .NET app), and the produced Excel files are user-designed spreadsheets summarizing status of various projects. Created several MSSS stored procedures to be invoked by the .NET app, including one which takes 2 parameters and includes over 50 inner joins. Built 2 datasets, each with multiple datatables. Much of the code involves constructing the datatables (which ultimately became the individual Excel worksheets), including extensive datatype conversions (all raw data in the MSSS db were stored as varchars). Created abstract ‘WorksheetCreator’ class, allowing efficient program looping and compact code. Extensively refactored inherited code. Utilized TortoiseSVN (Apache Subversion) for version control. Worked on-site at Credit Suisse, interacting daily with project manager.
  • On an internal, CRISIL project created an Excel VBA project which utilizes Selenium to automate the process of downloadingquarterly bank holding company data from FFIEC and Chicago Federal Reserve websites. Wrote a second VBA project which, after importing the downloaded text files into Excel, “transposes” each data set from its 500 row by 4,000 column format into a “flat file” – i.e.,created worksheets where each cell in the raw data file becomes a single Excel row, suitable for importing into a database.

FORTIRA INC.

Princeton, NJApril 2015 – August 2015

Developer (Consultant; project hire)

  • Built MSSS database as back-end for .NET solution that Fortira will present to its client DeutscheBank(DB). (Solution obviates manual process DB currently uses to generate several hundred State Street-derived Excel workbooks detailing transactions, positions, and performance.) Utilized code-first approach (C#, EF 6), with business model employing 3 abstract classes, then concrete classes deriving from 1 of the abstract classes and implementing 1 of 3 custom interfaces. Business model also includes custom enums, 3 classes that will serve as complex data types within MSSS (with concrete classes holding ICollection properties of these types), one-to-many relationships, and many-to-many relationships. Employed a mix of data annotations and the Fluent API to create MSSS tables. Worked in VisualStudio2013 and TeamExplorer.
  • Prior to building MSSS database built full solution for DB’s report-generation strictly using VBA and Excel. Employed RibbonX customization in report-generating workbook, with VBA code-behind employing custom enumerations and types, and multiple modules, subs, and functions. Wrote user manual.
  • Participated in manual remediation of hundreds of DB Excel reports as part of DB’s conversion from Charles River data to Black Rock data.

AMERICAN INTERNATIONAL GROUP, INC. (TEKsystems)

ManhattanAugust 2011 –December, 2014

Developer in Tax Technology department (Consultant)

  • Created proof-of-concept (POC) demo of .NET capabilities as alternative to department’s reliance on Appian for MSSS frontend, including the creation of amulti-table database with foreign key references, views, and stored procedures. For front-end development created a WPF desktop app,utilizingVisualStudio(VS) 2013, with majority of WPF design done as XAML markup (vs.Designpane). Wrote code-behind in C#, incorporating Entity Framework (EF) 6, and Prism5.0. Completed VS solution incorporates multiple modules/projects, MVVM design pattern, dependency injection principles, unit tests (NUnit), and Git for version control.
  • Built VSTO POC project in VS to display ADO.NET capabilities for CRUD operations against a MSSS database from within Excel. Also utilized WPF to create customized, UserControl buttons, which were hosted on a document-level Action Pane. C# code uses connected-layer of ADO.NET. Employed ClickOnce deployment of POC to shared/network drive.
  • Developed“relational staging layer” (BRD) Excel tool for transformingfeeds from Clarity (IBM) templates into a *.csv-file format suitable for loading into CART (Consolidated Analysis & Reporting Tool), an Oracle Essbase-based application. Reformatting entailed creating a single, flat-file record for each cell of large source tables. Each such record containsthe amount found in each source-table cell, plus twelve ‘dimension’ fields, populated from a column heading, row label, or worksheet-wide value. Placed controls for user interaction in RibbonX menu. Wrote code so that RibbonX controls are enabled in sequence as user completes requisite data-processing steps. Business logic behind tool is highly complex, with final VBA exceeding 250 pages. Completed the project in less than four months.
  • Handled Excel-to-Oracle (TOAD) data-load process within large-scale data conversion project. Initiated and created macro-enabled Excel templatethat was run as the preliminary dataintegrity layer for the project's data team. Further initiated and wrote numerous PL/SQL stored procedures, and one custom function, in Oracle as secondary dataintegrity layer. Utilized inner and outer joins, views, temporary tables, and unions in constructing stored procedures. Macros and procedures eliminated virtually all data issues experienced in the project. Edited and maintained other stored procedures used in the data-load process, as well as numerous SQL*Loader control files.
  • Developed both Excel front-end and MSSSback-end components for an application that centralizestracking of IRS requests for documents, replacing ‘data silo’ system of adhoc Excel workbooks. Designed back-end on Access 2007 before migrating database to SQLServer2008. On MSSS built a number of views and parameterized queries for DML and ETL requirements. Built one Excel 2007 workbook template for front-end data entry, plus a second, read-only workbook for managerial reporting, hosting both workbooks on SharePoint 2007. Included RibbonX customization on managerial reporting workbook, using VisualStudio2008 to compose and edit underlying XML.
  • Substantially rewrote VBA code in a SharePoint-hosted Excel template/file being used by roughly 50 CPAs in AIG’s tax department. Revised code automatically syncs10 SharePoint properties with values in the file itself. Existing version had required duplicate data entry (Excel file and its SharePoint properties). VBA code also updates and recalculates certain CorpTax formulas embedded in the Excel template file. Wrote accompanying user guide.
  • Loaded trial balance data into CorpTax. Reformatteduser-submitted Excel financials then loaded data sequentially into Access, Oracle(TOAD), and CorpTax tables. Wrote adhoc Access queries and SQL procedures (in TOAD/Oracle) to handle user resubmissions and data errors.
  • Created miscellaneous small-scale Excel/VBA solutions, employing tools such as WindowsForms, ODBC, OLE, Web Services (consuming), Add-Ins, and dictator workbooks.

CITIGROUP, INC. (Princeton Information),

Long Island City, NYAugust 2010 – March 2011

Developer (Consultant; project hire)

  • Finalized development on high-profile application to provideall FAs in Citi’s Private Bankand Personal Wealth Management divisions the ability to continue tracking clients’ External Positions following Citi’sfirm-wide conversion to Pershing NetX360 broker desktop platform. Replaced lead developer more than halfway into project. Per business design moved approximately 50,000 records stored across 6 database tables into system of over 5,000 Excel files hosted on a SharePoint sitecontaining roughly 50 branch-specific document libraries.
  • On the project’s 2 conversion dates merged data from 6 database tables into single, de-normalized Excel flat file. Wrote all VBA code for the controller workbook which then created the 5,000+ account-specific Excel workbooks and saved into the appropriate document libraries.
  • Substantially improved design of the Excel template used to store External Position data, employing conditional formatting, dynamic range names, (hidden) control rows and columns, and worksheet protection. Wrote all VBA code for template file, including onsheet buttons for inserting, deleting, and sorting rows, and for exporting data into *.csv files. Per a project requirement also programmed External Positions workbooks to close and cancel checked-out status if an FA leaves a workbook unattended for more than 90 minutes.
  • Rewrote virtually every line of code, while simultaneously expanding upon, refactoring, and reorganizing VBA in the “gatekeeper” workbook for the project. The gatekeeper workbook opens in a Citrix-hosted instance of Excel and is passed an account number on open. The VBA code then either finds and opens the appropriate account workbook,or creates a blank account workbook, all while keeping the IE/SharePoint interface itself hidden to FA end-users.
  • Developed an excellent working relationship with 2fellow agile development team members who specifically assisted in debugging efforts regarding SharePoint connectivity, Citrix environment, and MarketQ pricing issues. Worked with various business users, Pershing contacts, UAT tester, and department personnel throughout development process.
  • Brought project to completion comfortably before critical Stage 1 roll-out date (November 2010), and undertook and completed application enhancements for Stage 2 roll-out (February 2011). Wrote user-guide for the application.
  • Developed skeleton Windows Phone 7 application to research/demonstrate extent to which Private Bank’s iPad and iPhone applications could be duplicated on the Microsoft product. Employed Visual Studio 2010 and Expression Blend 4, using WPF, XAML, and WindowsPhone7 Developer Tools. Employed WPF types such as panels, styles, binary resources, object (logical) resources (in particular, gradient brushes), animation, and triggers. Wrote code-behind/event-handlers in C#.

MEDIAEDGE:CIA (Harvey Nash), ManhattanOctober – November 2008

Developer (Consultant; project hire)

  • Using Excel 2007 built VBA project to migrate advertising budget data from multiple Excel2003 worksheets to single worksheet table that serves as source data for pivot table analysis. Utilized late-binding in key portions of VBA so that code-behind would run in both Excel 2003 and Excel2007.
  • Completely revamped macro workbook which ports data across two Excel workbooks with very different layouts. Developed User Interface System (UIS) for one User-Defined Form (UDF), with UIS communicating with UDF via procedure calls (UDF to UIS) and event-raising/event-trapping (UIS to UDF). Created an interface and a custom class to enable generic object sorting.

FAIRLEIGH DICKINSONUNIVERSITY, INTERNATIONALSCHOOL OF

HOSPITALITY & TOURISM MANAGEMENT (Madison, NJ)Fall semester 2008

Adjunct Professor

  • TaughtQuantitative Analysis (i.e., Finance) to a class of 12undergraduates (evenings).

GENERAL MOTORS ASSET MANAGEMENT, for ELECTRONIC DATA SYSTEMS

(TEKsystems), ManhattanAugust – October 2007

VBA for Excel Developer (Consultant)

  • Built VBA project to reconfigure existing, 5MB Excel workbook used to determine top-level hedge ratios for more than one dozen GM-defined asset classes across $100+ billion in pension assets. Created custom functions, converted data tables to Excel Lists, and employed external Data Queries for linking component workbooks. Within VBA code relied entirely on OOP to download model’s raw data (numerous month-end financial indices) from Bloomberg.

CINGULAR WIRELESS (YOH IT), Parsippany, NJMarch – May 2007

VBA for Excel Developer (Consultant;project hire)

  • Wrote VBA program to automate the process of updating multiple Excel workbooks, covering both worksheet tables and numerous charts, from a central pivot table of monthly sales data. VBA project incorporates several procedure modules, one class module, and is run from single worksheet containing button controls for user. Program elements included: global and module variables, arrays, enumerations, and a Type variable.

MELHADO, FLYNN & ASSOCIATES, INC., Manhattan1998 –2006

Portfolio Manager

  • Exercised discretionary trading authority over $8MM in client assets across 20 accounts. Equity investments were almost exclusively individual stocks; fixed income investments included treasuries, agencies, municipals, corporates, and preferreds, as well as select closed-end funds.
  • Appointed to firm's Investment Policy Committee (IPC) in 1999. On behalf of the IPC wrote the firm's quarterly, two-page Strategy Review.
  • Compiled and maintained numerous Excel workbooks for firm-wide use, many of which contain links to Reuters service for real time security and index pricing.
  • Automated maintenance procedures of various Excel and Word file with VBA (self-taught.) Most significant VBA project ran to 30 pages and was executed daily. The project updates stockprice data in both Excel and Word documents, and generates appropriate reports based on whether it is mid-week, end-of week, month-end, etc.
  • Incorporated Word automation into master Excel VBA project. Designed code to open appropriate Word document, update table data with monthly modifications to firm's Recommended List, and save/rename document. While code not only updates various columns of financial data in Word document, it adjusts for additions and deletions to List and updates several header and footer entries (i.e., date, number of entries in the list, others).

FAHNESTOCK ASSET MANAGEMENT, Summit, NJ1992 - 1998

Portfolio Manager (1993 - 1998)

  • Managed client assets on discretionary basis, employ an asset allocation of approximately 75% equities, 25% fixed income. Built majority of client base from self-directed new-business efforts. Developed extensive marketing materials, including AIMR-compliant presentation on investment returns and a seminar on tax consequences of equity mutual funds.

Operations Manager (1997 to 1998)