[Terse Resume] [Skills Inventory] [1997 Java experiment]

This version of my resume is under development, as I am just beginning a full-fledged job hunt. It should be read in conjunction with my terse resume (which I have kept up to date).

I believe that résumés should limit themselves to one page. I designed this verbose version to give me room to expand upon my one page version.

Jeffrey P. Silverstone (Verbose Résumé)

Takoma Park, MD 20912-4330 /  mailto:jwp@margreta.com * http://www.margreta.com/jps/resume

Email is my preferred method of initial communication because it does not interrupt projects on which I am working. I prefer not to receive phone calls until I know enough about a potential position to know there could be a fit.

OBJECTIVE: I am searching for an opportunity to use my ASP.NET skills and experience to open up databases and applications to the world, or internally within organizations. At this time, I am only considering Washington DC and nearby MD locations for ASP.net projects. I wish to work 4 days/week. Check http://www.margreta.com/jps/resume for current status.

OVERVIEW: From High School, I went to University of Chicago for a year. I left school to become a computer operator at JBI, a consulting firm for HMOs. JBI developed a widely used computer package for HMOs, and I did the on-line user interface. After seven years, AIG, an international conglomerate bought out JBI, and I felt that it was a good time to go back to school and remove the skeleton from my closet. I made dean's list at Chicago, but I did not want a liberal arts degree. I did not want a Computer Science degree either, because I felt that anything I learned in that field would be obsolete in five years. Case Western was willing to take a late application for transfer (from anyone who did not want a scholarship), and they had a strong undergraduate business program, so I transferred there. Case made it easy to pick up an MBA, as well as the undergraduate degree, in a five-year program by manipulating my electives, so I graduated from both College and Graduate School the same day. During my summer vacations, I returned to help at JBI before and after the new management purged the old management and changed its name to AIH, (it later became Avanta, then Amisys, then part of HBO & Company, then McKesson Information Solutions, then DST Health Solutions).

Because Tandem's TAL language is close to the HP SPL computer language I had been working in, NASD hired me to maintain their CRD system. (It is ironic that engineers that broke away from HP formed Tandem, and now Tandem has merged back into the HP fold.) When I wanted some exposure to microcomputer databases, I found a charity that needed a new database to track their givers. In my off hours, I wrote a system in MS Access for them; a year later, I put my MS Access skills to good use at NASD. When NASD launched an effort to move their separate systems to a single client / server system implemented with a CASE tool I joined that effort. When I finished the data conversion effort that I led, I left NASD to seek web work.

Between jobs, I then did temporary work with SAS and learned Java. I also started, and continue to maintain, a church web site to gain web experience.

I joined RAM, Inc solely to lead work with the Army National Guard. I led a development team that built a client/server system to budget training ammunition. Then, I led a development team to build a system to manage the careers of military National Guardmembers assigned full-time to federal National Guard positions. After that, I worked on the migration of two National Guard recruiting web sites from iPlanet / Oracle to MS IIS / MS SQL platforms. This was a chance to get more fully into the maintenance aspects of a high volume web site.

RAM's contract was not renewed in June 2002 for political reasons at a much higher level within both organizations than the level in which I operate.

From there, I joined FAA/NACO (National Aeronautical Charting Organization has changed to a 'Group', but they retain the abbreviation NACO) and upgraded a prototype of a web application that allowed chart agents (resellers) to order from us. This was easier than one for the general public because agents know the products by product number, they are willing to get over a learning curve to use the interface and their purchases are 'bill me later'. We then rolled out a version for the general public and later merged the agent features into the general public version. For most of the life of these projects, I was the sole programmer on them. When we were developing the initial versions of the web application for the general public, I was one of two.

When I adopted a child in 2006, I cut my hours down to a four day work week. When FAA management changed in early 2009, I declined a newly imposed requirement for a five day work week.

EDUCATION: CASE WESTERN RESERVE UNIVERSITY, Cleveland, OH -- 1987-1990.
MBA and BS in Management Science (High Honors), May 1990.
Concentrations: Information Systems, Health Systems Management.
GPA: Undergraduate 3.9 (9th of 580), Graduate 3.8 (19th of 137). Case Alumni Academic Scholarship.

UNIVERSITY OF CHICAGO, Chicago, IL -- 1977-1978 and 1986-1987. Dean's List.

EXPERIENCE/ACCOMPLISHMENTS:

SENIOR ASP.NET E-COMMERCE DEVELOPER - Sep 2002-Jun 2009.

Apt Services, Inc. (contractor to FAA's National Aeronautical Charting Group), Glenn Dale MD.
L-3 Communications. (acquired FAA contract from Apt in Mar 07).

Designed, built and maintained ASP.net multimillion$/yr ecommerce application ( naco.faa.gov/ecomp ) that sells aeronautical and nautical charts. Included separate intranet component for catalog and user maintenance that communicates through SOAP web service. Administrator-maintained catalog for over 10000 products available through individual sales, subscriptions, shipments and digital downloads. Wrote interface with US Treasury for credit card processing. Application interfaces with pre-existing back-end system for order fulfillment and telephone customer service. Never hacked (to our knowledge). Was converting from Sybase to Oracle database tier.

Designed, built and maintained a classic ASP ecommerce application that sold charts to resellers which I merged into the application for the general public, converting ASP to ASP.net and retiring older technology application. DOT Level 5 Clearance.

MASTER SYSTEMS ANALYST - Jun 1996-Jun 2002.
Research Analysis and Maintenance, Inc. (contractor to the US Army National Guard), Arlington VA.

From June 2001 to June 2002, I maintained the Army National Guard recruiting and retention internet (www.1800goguard.com) and intranet web sites. I wrote web application that pings a web service (in JScript.net) every 15 minutes to validate normal operation. I authored an ASP.NET application to report recruiter contact information downloaded from an Active Army system. I coded a conference registration system in ASP. I converted pages from Netscape Web Server / iPlanet / Oracle to MS IIS / MS SQL that visitors use to request information from recruiters. I also supervised conversion of rest of the web site. The platform switchover went without serious problems due to extensive QA and testing efforts. I tuned and maintained another SQL Server; some tables did not even have indexes before I reviewed them. This tuning cleared up problems that had brought down the website during the peak usage times after 2001-09-11. I backed up, troubleshot and quality checked web site. I performed web site analysis, locating internal dead links and correcting dead links from external websites by informing other webmasters. I demonstrated Section 508 compliance techniques, including captioning videos. While I was not successful in bringing all team members' development into compliance, we made a lot of progress. I wrote their privacy policy, and an accompanying P3P1.0 policy and P3P compact policy implementation. I demoed an MS SharePoint Team Services solution to an intranet problem.

From 1996 to June 2001, I was directly accountable for development and maintenance of significant portions of the Army Training Ammunition Management System (ATAMS) application and the Staff Management Application (SMA) using the COOL:Gen I-CASE toolset from Sterling Software and Computer Associates (formerly the Composer toolset from Texas Instruments and currently called Computer Associates' Advantage Gen for Enterprise Servers). Our end users still say we wrote one of the best non-off-the-shelf programs that the National Guard ever produced. I participated in, and was adept at, all areas of maintenance and system development from analysis to deployment including training and operational support. Our systems were rarely down except for scheduled maintenance.

I also participated in collecting and documenting the business needs and desires of the user population through interviews, regulation research and analysis, reporting requirements analysis and legacy systems and data analysis. I documented these requirements in entity relationship diagrams, process diagrams and textual descriptions, including and especially the business rules to be enforced. I presented these designs to end customers in ways they understood. I managed the COOL:Gen Encyclopedia Repository.

After initial review with user groups and other Government contacts, I further refined designs by creating dialogue flows, procedures, dialogue boxes and windows, action diagrams and operations. Working closely with military order clerks, I designed and developed a forms management system for creating, validating, reviewing and storing over 30 types of military orders. This orders system used a web browser embedded in the SMA application to handle these numerous types of orders. Our automation cut the average time it took our customers to cut an order from a month to a few days, and it cut the time for high-priority orders from a week to hours. Not coincidently, it drastically cut down the number of orders flagged as 'High Priority'.

I designed and developed code and used my detailed technical knowledge of Windows NT (and Windows 2000), intranet, communications, graphical user interface standards and Oracle capabilities to make sure that all designs are implementable and efficient. I designed a system for creating reports using Crystal Reports on demand from the various states with data and security provided through the COOL:Gen tool. I implemented an automated ftp based, automated and scripted Telnet system to manage data transfer between the ATAMS server and a legacy mainframe system. I researched and developed a reusable tree view method of displaying hierarchical data that uses COOL:Gen action diagrams, External Action Blocks and ActiveX controls from Microsoft. Created Visual Basic ActiveX controls, COM objects and Visual C++ EABs to extend the COOL:Gen toolset when needed. I wrote SQL and PL/SQL triggers designed to resolve differences in null date handling between COOL:Gen and MS Access. Through rigorous business rule checking at multiple levels in our systems, data were sometimes wrong, but they were never corrupt.

I managed the construction, compilation and packaging of all release candidate code that was pending deployment, be it client, server or Intranet. This included preparation of a "Read Me" file to inform the customers of any changes in the new release.

I developed an Issue Tracking Application in MS Access 97 used extensively in managing and controlling ARNG COOL:Gen development efforts testing for both the ATAMS and SMA applications. I managed the quality control program to verify that each system change met the initial requirements documented in the Issue Tracking Application and was free of bugs. A developer who was not involved in the design or construction of the system change always did this testing. This was to insure rigor and impartiality. Through my system, we captured bug reports and enhancement requests from the customer, developer, tester or other source and tracked to resolution. When the release notes to a new version came out, we could name the customers whose problems were solved in the release.

I maintained the system test bed as well as advised in the maintenance of the production environment. We performed all quality control in this environment. I acted as MAPS and SMA Oracle (8 and 8i) DBA and was responsible for installing and maintaining the Oracle RDBMS / Oracle Pro C / Windows NT 4.0 / COOL:Gen / C++ / Visual Basic / Crystal Reports / MS Access development environment and encyclopedia.

I conceived, developed and deployed a web-based process for deploying the client portion of the ATAMS application. ATAMS was the first, true client/server, distributed application deployed throughout the Army National Guard. Before that, the Information Systems department distributed updates by mailing floppies or CDs. I designed and coordinated with the Intranet group to deploy SMA's Tours Roster, an Intranet (HTML, ASP and JavaScript) application that allowed anyone in the National Guard to look up contact information on Title 10 personnel maintained through SMA. Presenting the non-private information about a Soldier to the Soldier himself or herself improved the quality of the data input by the Tours office because if an operator had been sloppy then she or he would be detected.

I worked with end users in the bi-directional effort to train and assist them, as well as to gain feedback from them about the systems and our documentation's applicability to the 'real world' environment. I co-taught a class in preparing military orders using SMA's Orders module. In addition, I trained others, Government and Contractor alike, in the COOL:Gen I-CASE toolset and design of Microsoft Access ad-hoc reports, procedures and forms.

I was 'On Call' should emergencies have rendered our systems inoperable. Fortunately, that was seldom necessary because of the significant investment in quality control cited above.

In early Calendar Year 2000, I prototyped a web application that looked identical to our existing client / server application, but used SOAP (preliminary specification) to communicate through server interface and COM:Proxy to existing COOL:Gen server modules. Technology has improved greatly since then. At that point, Microsoft only had example source code available as a developer sample and I had to tweak it heavily on both client and server. The standard for handling arrays in SOAP was not standardized at that point. While we did not continue that effort, other contractors for other National Guard projects used the code.

It is my understanding that my DISCO Secret Security Clearance from Nov 96 automatically expired when I left my employer in June 02, though the investigation results are still current, and that reinstating it is an administrative detail until June 04.

VOLUNTEER WORK -- January 1994 to July 2008.

I administered a church web page (http://www.seekerschurch.org) to leverage work that others put into sermons. Mainly, I took documents other members of the church prepared, I edited and cleaned them up, then I organized and posted them. In 2008, there were over 1500 documents on www.seekerschurch.org. I mainly used MS Word to translate the documents to HTML, Tidy to clean them up and FrontPage to maintain the site. The site had some ASP.net code protecting a members' area, and uses the underlying MS Access 2002 database to allow church members to send messages to all other participating members. This became the primary way for church members to make timely announcements. There was very little client side scripting on the site, however.

In 1995, I replaced a DOS xBase database with a redesigned MS Access database to support a charity with 20,000 magazine recipients. I added Zip+4 to that database to make it compliant with the postal regulations of that time for bulk mailings. I also have been an MS Access consultant to folklore society of 4,000 members.

SYSTEMS ANALYST / PROGRAMMER -- (after MBA) Aug 1990-Mar 96.
National Association of Securities Dealers (Parent of
Nasdaq), Rockville MD.

CRD (Central Regulatory Depository) is NASD's database to keep track of the stockbrokers who are members of NASD and the agents that work for them.

For New CRD: Directed technical aspects of a project to convert reports of stockbrokers' and their agents' misdeeds from text in Legacy home grown ISAM database to highly codified and structured Oracle database via a 800Mb MS Access database. The project is interesting because the old data was mostly in text form indexed by the agent number. This was fine if you, say, want to find out if your stock broker has been convicted of anything (a free service, call 1-800-289-9999); but this database structure is no good if you, say, want to find out the ten agents with the most convictions involving derivatives. For that, we moved away from text blocks into a data structure with tables with columns and codes to describe each category of misdeed. While the Tandem database used about five tables to hold this information, we populated forty-five tables in the Oracle database.

We could not do the conversion automatically and still achieve 99 percent accuracy. Instead, we hired a contractor who managed 60 people for a year putting the data into the equivalent of electronic punch cards. Because of the needed lead-time, I had to manage a project that was shipping data to them (as .TXT files on QIC-80 tapes to be printed) a year before the design of the target database was finalized. When they returned the codified data, I loaded it onto an MS-Access database and checked it against all the consistency rules expected in the new system. We rejected data that failed the rules, and sent it back to the vendor. I tracked the status of each of the 100,000 agents' data though each step to make sure it was not lost. In order to maintain those rules I had to maintain the map between the data as we were receiving it and a moving target. The target system was in the TI IEF / Composer CASE tool, and I tracked changes to the system by downloading the metamodel from the Composer public interface into my MS-Access database across an ODBC bridge. I have been though four weeks of Composer training and developed Client / Server prototypes in it, so I knew the tool. When the new system changed, the map had to be changed and the data acceptance rules were changed. Then, any data that we received from the contractor we reexamined; we sent back data that violated the new rules.

At the same time, the legacy database was not standing still. New data was being added and data was being modified. All this, I tracked. A special case was data removed from the database because of court orders. Starting in November 1995, we were using the data to populate test databases for the new system. I compared the new system to the old system and submitted sixty bug reports just on the one function I was using to view my data. In March 1996, we cut off the flow of data from the contractor and loaded my interim database to the "final" Oracle database. At the point my task was finished, operators were supposed to enter the changes to the Tandem database directly into the new system, but the planned new system was never completed.

During the peak phases of the project, I led three other contractors; but as the project wound down, I split my time between it and other projects.

In early 1994, I developed a prototype IEF client / server system in order to discover technical issues involved in driving a system to completion. In 1996, in addition to my data conversion duties, I was on a team to work on the CRD component of the accounting system we were to roll out in 1997. I also developed prototype screens for another system in Visual Basic 4.0, demonstrating how we could introduce Win95 concepts such as tabbed dialog boxes, drag and drop, and right-click menus into CRD clients scheduled for Phase II. Visual Basic is not much different from the programming language in MS-Access, so I had no trouble with it.

I left NASD because the new CRD system was a massive continuing effort built on shaky initial decisions about database design and user requirements. I felt that it could not succeed without backtracking, and management was unwilling to consider that. About a year after I left there was a huge shakeup and a new president of NASD scrapped most of the project. The data conversion effort that I finished, however, was not scrapped, but instead NASD used the resultant data in a much less ambitious Visual Basic system.

For Legacy CRD: In 1990, I joined a team supporting a mainframe-based system with its own database system that dated back ten years. When I started, the system crashed about once a day for about a half an hour knocking out about 200 data entry operators both at NASD and around the country. To the typical CRD user, that was normal, to me it was abysmal. By taking on the role of system programmer and rewriting many of the core components of the system, by creating a second console on my desk so errors would not be ignored by the computer operators and by tracking down every error that I saw, I reduced the downtime to about an hour a month. I redesigned jobs that tied up the system for two and a half hours each night so they ran for forty minutes. I created a transaction rollback system to reduce the number of database inconsistencies left when the system did crash. I also filled the role of CRD programming support desk.

Because of the design of our database, only programs written by us in the TAL programming language on the Tandem could only access it. System to system data communication had been achieved by passing files back and forth. In order to remedy the situation I wrote a daemon program that was half TAL (to call our database interface) and half 'C' so it could call the Tandem TCP/IP library that was also 'C' code. This program waited for something on the WAN to attach to it and, based on the program ID and password the program supplied, would allow limited or unlimited access to our database though a defined, published interface. This enabled other programming projects throughout NASD to get access to our data without file passing.

The above interface enabled a contractor to code, to specifications we wrote, a system on a dedicated Sun UNIX box a system to accept, as a computer-to-computer transfer, filings stockbrokers had formerly been filing with paper forms. My role in the project was the initial design of the system, the documentation of the validation rules inherent in the on-line data collection software, and avocation of the use of the ISO-OSI ASN.1 standard for electronic filings. We had to make one allowance to the standard because in the detailed format specifications we gave to brokers, we forgot to mention that EBCDIC was not a valid option. Consequently, we had to accept ASN.1 in EBCDIC.

I also designed a system for users to download data into spreadsheets and PC databases for ad-hock reporting. I extended this later for my data conversion effort above. I also created a prototype system that uses X.25 to load reports into SprintNet mailboxes.

The system of rules that specify what combinations of exams agents can pass in order to practice in various capacities is very complicated. CRD needed not only to enforce those rules, but also to suggest which exams an unqualified agent who wants to practice in a certain capacity must take. Because have never liked hard coding rules, I developed rule base of qualifications (exams and other positions) required for agents to practice; and I implemented Artificial Intelligence methodology to suggest the easiest way for deficient agents to qualify. The AI I used was a classical shortest path tree search method. The programmer who maintained that code before me, and has since moved to management, did not believe that it could be done.

CONSULTANT -- Summers 1989 & 1990 (while in college). American International Healthcare
(a subsidiary of
American International Group, successor to JBI, succeeded by McKesson Information Solutions), Rockville, MD.

AIH retained me to enhance my systems purchased from JBI (below).

SYSTEM MANAGER / SENIOR PROGRAMMER -- Mar 1979-Jun 86 and Summer 1988.
Jurgovan and Blair, Inc., Potomac, MD.

I created and managed the claims and membership processors of JBI's premier product -- an online information system for small health maintenance organizations -- on HP3000 computers. At the time, that system used by over 100 clients and a thousand data entry clerks. We used a variant of the system for MediCal experimental programs. I designed the database and developed a system of internal switches that allowed one set of programs to work with clients' differing requirements (especially involving varied adjudication of deductible formulas).

I came into JBI as a computer operator, which gave me lots of time to read manuals. When they wanted a simple screen to collect data for a small HMO, I wrote it. Unlike the screens that others hard coded, I designed a table driven engine to map the fields on the screen to the database. As I did more of these projects, the engine grew. It later could load custom written libraries. When JBI needed a new HMO system to replace a system that we paid royalties on, they selected me because I knew almost nothing about the old system. Consequently, I could design a database from the requirements that I was given that looked very little like the old system. As each new HMO came on, we extended our system to preserve upward compatibility and a single code base. As the project grew, I enhanced the online portions of the product. At times, I led teams of two or three programmers modifying parts of the online process. Others managed the various batch jobs, reports and accounting functions.

CIGNA bought our source code and cloned our system for their IBM mainframes. In those days, IBM was sovereign, especially among large insurance companies.

I became the senior programmer at JBI, as well as our in-house system manager. I managed our one computer operator.

As senior programmer, I enforced programming standards and assisted JBI's 15 programmers in debugging. As HP hardware guru, I prepared the hardware configurations in JBI proposals and sold HP equipment to our clients as an OEM. When a client was having performance problems (and that client was making enough noise about it), I traveled around the country to tune performance at their sites. Generally, this involved selling them more memory. The visits were more politically useful than technically useful.

Numerous references are available on request. I would first like to know enough about any position offered so I know that there is a possible fit before I the contact information out so they don't get unnecessarily bothered. Also knowing about the position can allow me to suggest contacts who can discuss skills that are appropriate to the vacancy.

You can find a summary of the various products I have used in my Skills Inventory.

jwp@margreta.com [Terse Resume] [Skills Inventory] [Old Java experiment]