President | Contractor | Indie App Developer2015 - PRESENTRufwork.com, LLC
- Worked for Rufwork.com, LLC, the umbrella corporation for my independent application development and software contracts.
- Served as project lead on an 18-month application rewrite for a system bringing in $30 million/year in revenue. The new architecture moved to an Azure cloud-hosted, with a multi-tenant MongoDB datastore and .NET Core MVC (REST API) microservice-based application stack, utilizing an Angular 6 and TypeScript-powered client from a legacy stack of 1500 single-tenant SQL Server instances hosted in a single datacenter with a Silverlight (and CSLA) powered client. Mr. Bailey worked closely with product management to define strategy, make tech stack decisions, create the backlog (from the feature and milestone macro to Scrum story micro), and to set development priorities for four teams of developers. Mr. Bailey was a key hands-on contributor as well, coding about 50% of each working day to demonstrate best practices, review new code, and to complete complex tasks.
- Soley developed a direct-sales commercial application called MarkUpDown, the most thoughtful Markdown editor for professionals on Windows 10. It is a Universal Windows Platform (UWP) app written in C# with server support in Node.js. MarkUpDown's marketing website can be found here and the app is available for purchase from the Windows Store.
- Contracted and consulted on several projects for Rufwork.com; including the creation of a .NET MVC system to handle asset management for customer-facing (snail) mail services for major Fortune 500 companies at one of the US's largest mail distribution companies.
- Worked with a small healthcare practice management SaaS focused primarily on creating a site-wide, customized, HIPAA-compliant chat service for providing site support and provider-patient communication. Leveraged XMPP and Strophe providers that were wrapped with a custom .NET Web API framework. The client code was created with React, JSX, Babel, and a home-grown routing system.
- Worked with the Hands of Christ nonprofit to fairly distribute clothes, school supplies, and other resources to grammar and middle-school aged tri-county students (Xamarin on iOS experience).
- Eagerly performed follow-on work at the Navy Enterprise Data Center (NEDC) from the previous position (see below) to keep the NEDC's PowerShell and PowerCLI lights on after ESN's onsite contract expired.
Senior Programmer2014 - 2015Engineering Services Network
Technologies: GitLab, Git, PowerCLI, Perl, Java, C#, Windows Presentation Foundation (WPF), VMware, SNMP, Windows PowerShell
- Worked in an onsite contracting position at a navy enterprise data center requiring secret clearance; the work began with updating the legacy VMware Cops reporting PowerShell scripts delivered under another contract and help coordinate the optimization of VMware resources and EMC VNX storage.
- Wrote scripts to manage complex data diff and update uses, the automation of VMware utilization metrics, in-stream review, and code repair which were all delivered to NEDC Engineering from other contracting sources, and update of all PowerCLI scripts to 5.5 compliance.
- Acted as the sole onsite, full-time programmer at SPAWAR LANT NEDC.
Senior Software Developer | Team Lead2012 - 2014PeopleMatter
- Led one of the five agile scrum teams working on PeopleMatter's schedule module which was an online schedule maker, manager, and communicator. The PeopleMatter stack included fairly strict Microsoft MVC 4.0 with Microsoft SQL Server 2008 R2 on the server, and an exceptionally data-rich Knockout.js-powered client.
- Acted as the sole coder for two features, the save-for-later status and the reasons-for-applicant status changes; was featured on the PeopleMatter Spring 2014 product release page.
- Revitalized the new flagship SaaS app called Schedule—which had been near release but didn’t test well on Internet Explorer 6 for a major client—by initiating two sprints with a designer and implemented a custom defensive fix that could be completely turned off by changing one boolean in the client-side code. This client-only, minimal risk fix enabled Schedule's release to logo clients just a few weeks before decisions were made on another—and, with the release, successful—funding round for the company.
GIS Programmer2012 - 2012SYNCADD Systems, Inc.
- Worked as one of two programmers on a development 1 task of Army Mapper 3.0, the US army's enterprise geographic information system (GIS). Army Mapper is used by the Office of the Assistant Chief of Staff for Installation Management (OACSIM) as a tool to visualize the current state of the army's resource management across army installations (i.e. bases) worldwide.
- Designed and created exceptionally advanced, user-facing geo/database query tools—allowing common access card (CAC) authenticated end-users to visually construct and save ad-hoc queries of what amounted to complex SQL joins. These joined data sources, cutting across any number of tables, could then be concurrently queried by data values and geospatial constraints. Other tasks included creating a range query tool (RQT) that allows Army support personnel to quickly find firing ranges by munition or weapon type or by querying a number of other range characteristics.
ASP.NET Developer (SystemTec Contractor)2011 - 2011The South Carolina Department of Health and Environmental Control | SC DHEC
- Performed the alpha rewrite of the immunizations directory for the South Carolina Department of Health and Environmental Control (DHEC). The system allows pediatrician and other doctor offices in the state of South Carolina to manage registered children's scheduled immunizations, both those already administered and those due.
- Learned the schema of the existing database in DB2, coding user interfaces with detailed data quality assurance requirements in .NET, jQuery, and jQuery UI, and connecting the UI and data tiers through a shared middle data tier, then also in development.
President2002 - 2011Rufwork Programming, Inc.
- Incorporated this software development and consulting company in October 2002.
- Worked as an independent software developer and consultant while attending graduate school.
- Designed and maintained databases, and created web-based interfaces to those systems,.
- Designed GIS and geospatial databases.
- Developed a custom, standalone application.
- Contributed mostly to web-based projects that utilized AMP stacks (Apache Web Server, MySQL RDBMS, and PHP extensions).
- Developed on geospatial work includes ArcIMS, ArcGIS Server, MapServer, and Google Maps.
- Created a number of standalone application designs that use Java, Visual Basic (VB6 and VB.NET), and Mono/Xamarin for iOS.
- Designed and built an online business directory and coupon management system for SpiderSavings.com, including an administration module, coupon provider module, and forward-facing search and display functions. This site also included enabling users to manipulate images on the server, geocode their business addresses, and used AJAX for several functions, including a method allowing end users to send coupons to themselves via the site's SMS functions.
- Developed a customized job application processing system (Java) for a cruise line employment service, Cruise Services USA. The application retrieves emails created by a web form (part of the client's existing workflow), parsed their contents, and placed them into Excel files using automation. As of 2010, the application is still in use and maintained by Rufwork Programming.
Lead Programmer2003 - 2004Rok Technologies, Inc.
- Prototyped a replacement system for a land records/tax parcel system for a county government in North Carolina that was previously written using UNISYS EAE.
- Acted as the lead programmer for the new database schema design.
- Managed the complete workflow through to the GUI design and integration with the county's GIS information.
- Developed in VB.NET, using Windows.Forms for GUIs with some test work with Crystal Reports and HTML for reporting. Oracle 9i via ODP.NET was utilized for the creation of the data tier.
Custom Solutions Developer2003 - 2003Blackbaud
Technologies: ADO.NET, SQL, Microsoft SQL Server, Sybase, COM, Visual Basic
- Extended Blackbaud's suite of products through VBA.
- Created customized Visual Basic 6 standalone applications that interfaced with Blackbaud products through COM or directly with the Blackbaud database in Sybase or Microsoft SQL Server.
- Developed customized reports for Blackbaud products.
- Built a web-based online student application system which interfaces with Blackbaud's admissions management application.
- Created a drop-in replacement view (SQL) that seamlessly added audit-level historical tracking to Blackbaud's flagship non-profit donation tracker, something that product development claimed was impossible to do.
Database Administrator | Internet Mapping Specialist1998 - 2002TPMC
- Served as the NOAA Coastal Services Center's (CSC) lead internet mapping server programmer as well as one of two database administrators.
- Designed and taught a one-day introduction to "The ArcIMS ActiveX Connector" for approximately ten employees at CSC.
- Received three TPMC President's Awards for project contributions, and had one site featured on USAToday.com.
- Led a small programming team in the creation of the first standalone application released by CSC, the Build-A-PIVOT application helps National Estuary Program (NEP) and National Estuarine Research Reserve (NERR) offices build websites interactively, without the need for an onsite HTML expert.
- Released to a small group of NEP leaders in summer 2002, Build-A-PIVOT was made available to the public on CD in December 2002.
- Initially served as a junior of two database administrators that were contracted for an NOAA office of over 100 employees.
- Maintained all existing systems as well as the creating new, non-spatial database systems. This included, the NOAA Coastal Services Center (CSC) Management Information System (MIS). The MIS assists CSC in allowing its more than 15 million dollar budget and nearly 100 employees over scores of projects.
- Supported CSC Information and Request Tracking System (IRTS), CSC solicits online customer information on a voluntary basis and the IRTS collects and reports this information for internal use.
- Managed CSC Dynamic Product Pages (CSC home page): this system keeps track of CSC products and descriptions—allowing employees to update the system with new products before in-system managerial review allowed their display in a standardized format on the home page.