Web Programmer/analyst Resume
2.00/5 (Submit Your Rating)
Philadelphia, PA
SUMMARY:
Software development and maintenance for several businesses/institutions, for a variety of business, administrative and publishing applications, using a fairly broad range of programming languages/databases, with experience in ADO.NET 4.0, ASP.NET 4.0, CSS 3.0, C# 4.0, HTML 5, JavaScript, jQuery, LINQ, MS Access 2007, Perl 5.6, SharePoint 2010/13, SQL Server 2008, SSRS 2000, T - SQL, VBA, WCF 4.0, WinForms3.0
PROFESSIONAL EXPERIENCE:
Confidential, Philadelphia, PA
Web Programmer/Analyst
Responsibilities:
- Within 2 weeks of hire, was given sole responsibility for making major changes to a wholly unfamiliar public-facing applicationof considerable complexity
- Was assigned to recode (C#, part 3.5 Framework, part 4.0) major sections of this application, whose code base is a large VisualStudio 2010 Solution composed of 31 Projects (some of which were vendor-provided, but many of which were created in-house at AACR), to allow a major upgrade; the implementation of this required the existing SharePoint 2010 DLLs (which are .NET 3.5 Framework) to be able to interact with new 3rd-party vendor-provided .NET 4.0 DLLs (the previous generation of all the DLLs was 3.5,so those DLLs were all able to easily interact directly as needed, but, this would no longer be possible after the upgrade because of the mixed .NET frameworks). Addressed this, by creating WCF services to communicate between the 3.5 and 4.0 areas, and modifying large sections of existing code to reference the new WCF services. The upgrade also required extensive retrofitting of some vendor-provided ASPX pages, ASCX user controls, and code-behind, so as to include AACR’s own customizations that had been made to the previous generation of the vendor-provided pages. In addition to this upgrade-related work, also repaired some long-time existing bugs in the application.
- implementation of major changes in business logic for the 2013 membership renewal season, and 2) significant enhancements to page navigation, data integrity enforcement, and error trapping, plus targeted addition of AJAX, to address long-standing deficiencies in the system. This required not only changes and enhancements to ASPX/ASCX, and the back-end T-SQL, but also far more extensive and significant changes to the C# code-behind as well as the WCF services
- Took on a steadily-expanding role in SharePoint 2010/13 server object model programming (C#). A major accomplishment in this regard, was programming to migrate the webpage content (including images, PDF docs, etc.) of a very large existing ASP.NET website into a SharePoint site collection (to go live for the public in June 2014). This migration programming works by “scraping” the existing ASP.NET pages (via the WebClient class), then storing the scraped content to a SQL Server database, and then processing the resulting SQL data using SharePoint object model API to load the scraped content into Publishing Site pages; a critical part of this programming was inclusion of code necessary to alter embedded URLs to now point to locations in the new SharePoint site, since the embedded links would point to locations in a website that will no longer exist, and further, the new folder structure in most cases does not exactly correlate to the old structure (the new folder tree is defined in data that is input to the migration program).
- The migration application also included detailed error reporting (using SSRS) to identify dead links and similar issues found while processing, and the application was runnable iteratively to incorporate corrections made by staff after the error reports were studied.
Confidential, Philadelphia, PA
Programmer
Responsibilities:
- Designed and wrote all programming for a C# 2.0 WinForms engine that dynamically generates object-relational databases, their data access screens (with full recursive hierarchical data navigation), dynamic SQL, and recursive search/filtering, all based-on the C# engine reading an XML driver file that itself contains the abstract logical description of the data model of an arbitrary application. When the engine runs, it presents the user with a fully-formed and functional WinForms application created dynamically, on-the-fly, whose complexity is limited only by the content of the XML driver. The specification of the abstract data model gives rise to the entire application, not just the data access layer. The swappable XML driver can be of any size and complexity. A totally different application can be created, by merely pointing the C# engine at a different XML driver file
- For “SIURO” system, created ASP.NET 3.5 interface, custom classes, and several custom Web Controls, which enable users to create their own custom filtering definitions (metadata) for their data by selecting field names from dropdown lists and specifying permissible values for those fields; the custom Web Controls have logic that automatically references a “data dictionary” to determine what data type each field is, and what the field’s domain values are (if an enumerated field); the programming then automatically builds SQL WHERE clauses based on the user-specified filtering metadata; this enables users to build complex filtering logic without having to think about SQL at all, but merely by working with user-friendly custom Web Controls
- Created/maintained over 100 reports in any of SQL Server Reporting Services, Crystal and MS Access, as well as hundreds of SQL Server stored procedures / views that fed the reports; also reverse-engineered 35 Crystal reports into SSRS (SQL Server Reporting Services) reports, after decision made to migrate to SSRS
- Programmed comprehensive MS Access system to import magazine subscription orders via EDI-coded text files; it breaks down combo orders into possible components, calculates optimal prices, interfaces with in-house fulfillment system, generates complex reports, accepts user corrections to faulty EDI data, and reprocesses corrected data, with sophisticated tracking of all these activities and their interrelationships; was in process of rewriting as C# ASP.NET 3.5 / T-SQL application
- Performed system design and all programming for hybrid MS Access / Perl recursive “rules” engine that determines facts without users having to write SQL; engine was used to generate personalized messages for renewal notices, although flexible and extensible enough to be used for any purpose; was in process of rewriting original Access front-end as C# ASP.NET 3.5 application