Software Developer Consultant, San Diego, California

Projects

Here are summaries of some of the projects I've done (not a complete list).

Order / Sales Entry, Billing, Receivables, Payables, Purchase Orders, General Ledger, Financial Reporting, Sales Analysis

I've done projects involving order entry, billing, inventory control, accounts receivable, sales analysis, accounts payable, general ledger, purchase orders or payroll. These were done for a variety of different types of businesses, with varying needs as to the type of data that needed to be captured and processed.

Some projects involved creating a new application to handle Sales Entry / Order Entry. Some of these applications were designed to "stand alone", without interfacing to other accounting applications. Other applications were done in a way that integrated with an existing accounting application.

Some projects involved modifying the source code for an existing "off-the-shelf" integrated accounting application to tailor the application to the needs of the company. This included modifications such as collecting additional data and carrying it through various update processes, and adding new functionality by modifying existing screens or adding new ones.

Other projects involved exporting sales transaction data on a regular basis from an existing accounting application to a new custom database. This was to provide special Sales Analysis or Salesperson Summary reporting not available in the accounting application.

CRM Home Mortgage

Developed a CRM Mortgage browser-based thin-client solution as part of a team of developers using the Microsoft .NET development platform. This involved both custom C# ASP.NET development and Microsoft CRM integration.

CRM Home Builder System Integration

Developed a highly customized Microsoft Dynamics CRM solution as part of a team of developers using the Microsoft .NET development platform. The application was for the purpose of order entry, fulfillment, and customer service for residential home system integration products and services.

Healthcare

Developed a system for processing medical claims. The system had screens for entering medical claims, pre-authorizing medical services to be rendered, maintaining data on facilities, physicians, health plans, plan members, diagnosis and procedure codes, and procedure fee schedules. It included a seamlessly integrated table-driven reporting system. The entire system, including reporting, was designed in a 3-tier architecture for maximum scalability. Data that was analyzed frequently for decision support purposes was automatically loaded on a daily basis into a separate data mart database (using star-schema table designs). This allowed large amounts of data to be queried in seconds.

Developed a compensation system for physicians along with another programmer as part of a four-man team that also included a tester and a report developer. The application involved mechanisms for pooling, allocating, weighting, and adjusting charge and payment transactions to calculate compensation amounts. Transaction were pooled and accumulated by various criteria: Procedure (CPT) Codes, Modifiers, Sites, Sort Keys, Payers, etc. The application also handled capitated payments and fee-for-service transactions.

Construction Insurance Bonds

Developed an application as part of a team of developers for the purpose of entering, pricing, and maintaining construction insurance bonds. Data and relationships related to bonds, premiums, contractors, developers, principals, projects, and owners were managed by the application. The system was designed to integrate to a mainframe accounting system. This was a browser-based thin-client application. Branch office locations in various cities across the United States accessed the system remotely over high-speed network connections.

Time & Expense Billing

Created an application for entering time and expense items to be billed to customers. The application allowed for categorizing various time / expense items, establishing standard rates for various services, and produced summary reports that could then be used to provide customers with documentation of services performed.

Price Quotes

Created an application to assist a supplier with locating the best prices available from a large number of vendors to satisfy a given customer order. The application automatically faxed requests for price quotes to vendors to facilitate the process of filling customer orders.

Food Production

Created an application for a bagel bakery chain to assist with calculating economic order quantities of various types of dough. The application tracked a history of usage which it then took into consideration along with pending orders in suggesting future order quantities.

Handheld Data Collection

Developed a handheld device application for a genetics lab for recording mouse litter birth and wean data. In this way, handheld data capture functionality was added to an existing third party application that previously lacked this capability. Data is saved on the handheld device in XML format. These XML files are then transferred to a desktop workstation. A Windows desktop application was created to synchronize from the desktop to an existing MS SQL Server database.

Payroll Direct Deposit

Developed software to automate the process of payroll direct deposit. Security of the data and reliability of this mission critical process were large considerations. Data was transmitted to the bank via modem. The program had to wait for verification of the data, receive batch totals, and present this and other batch status information to a user. The application included the ability to search through and display payroll data to enable a user to do research when investigating reported discrepancies, etc. The system transmitted payroll data for several thousand employees.

Sales Presentation / Marketing

Created applications for assisting insurance sales persons in making a presentation of their product to prospective clients. Products involved a combination of insurance and investments that could be tailored to an individual client's needs. The calculations required to make the projections for the client were too complex and tedious to be done manually in a timely fashion. The software allowed the sales person to enter client profile data and data related to investment amounts and schedule and have the resulting projections instantly displayed. The calculations made use of insurance rate table information for age, gender, and other factors. The projections could be displayed on the screen or printed out in a 3 - 5 page proposal style.

Human Resources

Developed various screens, reports, form letters, and exports of data to spreadsheet software in a Human Resource Database application. This was to keep up with ever-changing government regulatory changes related to HCFA, OSHA, EEO, etc. In addition, reports and spreadsheet interfaces were developed to assist with the process of wage rate review, performance reviews, and tracking of employee licenses and education.

Privacy Considerations

Created interfaces from / to a customized Human Resource database application to an application designed for Random Drug Testing compliance. Modified the Human Resource database to assist with tracking employees participating in rehabilitation. Confidentiality of data was a large consideration in developing the interface that allowed data to be moved between applications. For example, identifying information such as employee name or social security number could not be moved through the interface, nor be attached to testing samples. Yet, certain information updated in the Drug Testing application had to find its way back to the correct employee in the Human Resource application.

Data Warehouse / Data Mart

Developed a Windows .NET desktop ETL (Extract, Transform, & Load) application for importing, validating, and maintaining a data mart of medical billing data. The application included the ability to control a number of back-end DTS packages through ''user-friendly" user interfaces. In addition, the application allowed the user to maintain tables used for transforming and validating the data. Current status of the ETL process was displayed. Integrated reports showing errors due to bad data, etc. were also available.

I've also created data mart databases for medical claims data and for wholesale distribution data. For wholesale distribution, the data mart needed to compare sales to independent distributors with "sell-through" data reported by these distributors. Since the independent distributor was in effect our "customer", the "sell-through" data provided valuable insight into our customers' sales to their customers.

Budgetary Accounting

Developed the "Encumbrance Accounting" portion of an accounting system for municipalities. (Other team members developed other portions of the accounting system.) This allowed users to enter initial budgeted amounts for each of their accounts. Throughout the year, updates to the general ledger kept track of how much budgeted money in each account had been "spent" and what was still available. (This application was eventually purchased by several cities in San Diego, Riverside, and San Bernardino counties. I later did additional custom programming on this software for a city in the Riverside area to improve the accounts payable reporting and to make other enhancements.)

Insurance

Made various enhancements to an application designed for an insurance carrier in the Los Angeles area. Improvements were made in the areas of calculating agent commissions and chargebacks, "re-insurance" calculations and reporting, and others.

Mail Order

Modified the order entry software of a men's clothing catalog company to check for "bad risk" orders. This involved checking billing or shipping addresses against a "bad risk" file provided by an outside vendor. The matching made use of a "soundex" algorithm. (This is an algorithm that makes it possible to match up similar-sounding names or streets, and thereby allow for alternate spellings. For example, "Smith", "Smyth", and "Smythe" could be matched with a soundex algorithm.) The algorithm had to be coded by hand on this particular assignment. (In many environments soundex is available as a built-in function.)

Retail / Rental / Point-of-Sale

Developed a Video Rental Store application. The application managed 42 video rental store locations for a local chain of stores in San Diego. Each store captured rental transactions and member information at point-of-sale workstations. Data was sent and received via modem to a central office computer network comprised of three large computer systems. The load was balanced across the three computers by having each of the three computers house the data for 10 - 15 stores in the 42-store chain. A customer could be a "member" at one store location with a prepaid movie rental plan, check out a movie at a second location, and return it to a third location, yet the application correctly updated data in the appropriate computer system even if the three stores involved happened to span all three central computers. A transaction was "queued" for updating the moment it was entered by the sales clerk in the store.

This system had many features, including movie reservations, inter-store transfers, ability for a sales clerk to access inventory in other stores, statistics on sales clerk productivity, a system for taking store inventory and immediately reporting discrepancies, tracking of each individual copy of a movie, rental patterns in different geographic areas to assist with projecting future order needs, ability to track rental revenue by title, store, area, etc., ad-hoc reporting down to a detail transaction level, and many, many more features. The decision support capabilities of the system enabled the company to maximize turnover of the product. The operational capabilities of the system enabled them to excel in providing customer service.

Event Ticket Sales

Created many new screens, reports, etc. for an Event Ticket Sales application. The application kept track of sold / available seats, displayed and printed seat maps, kept data on season ticket sales, printed tickets, etc. Many modifications were made to facilitate the process of selling tickets and to enhance customer service.

Communication with Other Devices

I've done a variety of projects involving communication with other devices. Some of these were: Interfacing a bar code reader in a point-of-sale environment. Creating software for capturing and storing digitizer output. (This was used with a set of blueprints in construction estimating. The output contained measurements, computed area, and counts of construction materials.) Communication with a cash register to retrieve the day's transactions (which it stored internally). Communication with an optical mark reader being used to grade test papers to retrieve its data.

Data Conversion, Import / Export

I've done applications for converting or "transforming" data or importing / exporting data. Sometimes these were designed to run unattended and check for new incoming data at predetermined intervals. These include moving data between database and text files, moving from one database to another, moving data from one operating system to another (such as between UNIX and Windows), converting from one format of text / binary file to another, converting between multiple record type formats and single record type formats, compressing / decompressing data with "zip" files, conversion between EBCDIC and ASCII, and many other odds & ends.