Laurence G. Kahn
Vice-President, Development
EDUCATION: MS Computer Science, 1988
Boston University, Boston, MA
BS Computer Science, 1984
University of Michigan, Ann Arbor, MI
Languages: C, C++, Ada, Visual C++, LISP, Pascal, SQL, FORTRAN, JavaScript,
HTML, XML, DAX, ASP, Java Applets
Operating Systems: Windows 7,8, Windows Server all versions,
Sun Solaris, VAX/VMS, Unix, MS-DOS, Rational, IBM/CMS, IBM/TSO
Other Experience: COM, DCOM, Oracle, SQL-SERVER, ODBC, SQL Server,
Oracle,
TCP/IP,WIN32, IIS, BI
CURRENT SECURITY CLEARANCE: Secret - Deactivated
EXPERIENCE:
iCentrix Corp - Sep 1999 - Present
Lead developer for behavioral health applications. Responsible for the
design and implementation of the data extraction from CMHC, echo and other
systems for client, staff and event/transaction, hierarchy and cost data.
Implemented a HTML, graph and Excel spreadsheet reporting system with role
based security and multi-level
drill down through the Reporting Unit hierarchy structure. The systems
include a customized, data manipulation rules capability and a web based
administration system to tailor the system to each individual agency's data
requirements. Currently fielded sites include; Community Council of
Nashua, Gateway Health Care Inc., The Howard Center for Human Services,
Riverbend Community Mental Health Inc., West Central Services, The Kent
Center and Community Partners.
Designed and implemented online form systems for both a Detox Center, and
an inpatient Foster Care Center. The system uses an IIS ASP front end, IBM
Forms and integrates into a SQL Server backend. The Detox system
automatically generates complicated drug trial forms as a result of
submitting various order forms. The Foster Care System utilizes
complicated requirements checking with alerts based on various business
rules. Multiple reports are also part of the systems. There are thousands
of lines of SQL Server stored procedures as part of this system,
Implemented various dashboards/Cubes utilizing SQL Server and Microsoft
analysis Services both Tabular (DAX) and Multi-Dimensional Models. The
dashboard integrate with various databases such as Anasazi, Psych. Consult,
ADP and Microsoft Excel Spreadsheets. The dashboards display indicators for
Services, Enrollment, Bed Days, Billing and Payroll etc.
Designed and implemented a customizable recursive publishing system that
walks through an entire site and allows publishing of a dynamic web site to
a static version of the site. This system replaces all dynamic links in
the output HTML pages with their corresponding static replacements. This
allows iCentrix to publish static versions of our dynamically generated web
sites for improved performance, or retain dynamic portions of the site for
forms submittal or other pages that need database interactions.
Designed an implemented a system to process and load daily newsfeeds from
NewsEdge Corporation. Implemented the XSL translation files to process XML
news and hierarchy files into SQL statement files that are loaded into a
SQL server database. Multiple times a day the system processes downloaded
XML news hierarchy files and maps the categories of the articles based
those inherent in the XML files to those of the web site and deletes the
articles that are not applicable to the customer.
Responsible for overseeing the ongoing development and enhancement of
object-oriented web components. This includes the data presentation
component (catalog), the shopping cart component, the interactive survey
and customer registration component, the payment management (Credit card
authorization/settlement) component, and an event logging and service
component.
Enhanced the the Payment Manager, application a web based interface to an
automatic credit card settlement component which interfaces with multiple
3rd party credit card settlement API's such as CyberCash, CyberSource,
ClearCommerce, CardServices and Verisign/Verifone
Crimson, to allow for partial settlements where only a portion of an
authorized transaction can be settled. In addition, implemented new API's
to allow re-authorizations/follow-on authorizations to handle expired
authorizations as needed for new Group-Buy functionality for a customer.
Also implented an Auto-Settle application in C++ which interfaces with the
payment manager API and automatically batches and submits/settles any
marked orders nightly and also processes any pending returns/reversals. In
this way the customer does not have to mark and settle orders manually in
the payment manager web interface if auto-settle is enabled.
Designed and implemented a portable SQL Server stored procedure and C++
data transfer/interface and reporting mechanism with Great Plains. This
allows data transfer of all products, orders, returns, credit card
settlements, and inventory between iCentrix's Web components and the Great
Plains financial system.
Trained two junior developers in the implementation and usage of iCentrix's
web based components. This includes installation of SQL server, Windows
NT, IIS, and installation, configuration and ongoing maintenance of our web
components.
Responsible for setting up and maintaining our corporation network
infrastructure including firewall and router configuration. Also
implemented automated backup procedures utilizing a DLT autoloader and
Veritas Backup Exec for Windows NT with a SQL Server backup agent.
Primary developer for the Windows NT freeware version of BIND (Berkeley
Internet Naming Daemon). The Windows NT port of BIND is multi-threaded, and
includes an InstallShield installer/configurator, and a control panel
applet. There is also a WIN95/WIN98 version available that utilizes mail-
slots instead of NT service API's for server control. This program is
my most downloaded piece of software and frequently was the top download on
www.bhs.com. In addition, on a consulting basis I modified the source to
make a custom version of BIND in use at MSN in order to circumvent a WIN95
resolver bug. I have also developed a callable .DLL library version of
BIND for another company on a consulting contract.
Wrote portions of the Listserver component, (including adding digest
support), for Imail. Imail is a commercial product current available from
Ipswitch Computers (www.ipswitch.com).
Implemented a point of sale inventory control DBMS system utilizing Oracle,
SQLForms and C reports for a furniture and carpet store.
Empresa Inc. - Nov. 1998 - Aug 1999
Designed and developed the Payment Manager/(Virtual Cash Register - VCR).
The VCR is a portable implementation of a credit-card payment processing
mechanism that interfaces to various back-end processors including
CyberCash, CyberSource, ClearCommerce, CardServices and Verifone Crimson.
A single installation of the VCR can host various merchants utilizing any
of the differing payment processors. The VCR incorporates a relational
Database (Oracle and SQL Server), a portable C/C++ API implementation,
Secure Socket Layer (SSL) communication, server/client certificates for
security, and an object oriented web based user interface. Functions
performed by the VCR include credit card authorization, offline payments,
batch settlement of credit card Authorizations, both direct and standalone
returns, and various web based reports.
Also incorporated a version of the blowfish encryption API on windows NT
into our payment and shopping cart components to provide secure data
encryption capabilities for credit card and other sensitive information.
Designed and Implemented dynamic, highly configurable and complex web sites
utilizing object oriented technology (VisualMagic). Primarily responsible
for the shopping cart portion of the web stores including the calculation
of tax and various shipping methods, and integration to the VCR for credit
card authorizations. Web sites were developed for the Office Furniture
Super Store (OFSS), KaboomBooks, and MuseumShop. The web stores were
developed using VisualMagic, SQL Server and targeted Windows NT 4.0 and
IIS.
Dynamics Research Corporation (DRC) - 1985 - Nov. 1998
Development and ongoing support of an object oriented software
development/maintenance environment - VisualMagic, utilizing an object
oriented methodology and Microsoft Visual C++.
Wrote the Internet Information Server (IIS) subsystem for VisualMagic. This
included writing support for generating a .DLL version of VisualMagic
applications that are multi-threaded/thread safe, re-entrant and run in a
IIS/ISA environment.
Developed portions of the WIN32 GUI interface module for VisualMagic. Also
developed an object oriented COM (Common Object Model) interface, and an
install program for VisualMagic utilizing InstallShield for Windows NT and
Win95.
Performed the initial port of VisualMagic from Sun Solaris to the WIN32
API.
Developed AdaPath, an Ada path coverage analysis tool to assists
developers/testers in generating the minimal paths necessary to fully test
an Ada module. Utilized Diana/Compiler technology to modify and instrument
source code to collect test coverage metrics.
Developed an Ada tool to analyze Naval Underwater Systems Center (NUSC),
BSY2 SSN21 Seawolf Combat Control software. The system utilizes compiler
front-end technology (a Diana attribute grammar) and will analyze BSY2 Ada
code to report on the completeness of the message processing components.
Digned and Implemented software to collect software metric information
based on DIANA for a future release of AdaMAT/D. The system was
implemented in Ada on the Rational R1000 and utilized the Rational Language
Reference Manual (LRM) interface.
Developed an Ada version of the Quarterdeck Desqview Application Program
Interface (API) library. The system allows Ada programs written on a
Personal Computer to take advantage of the Desqview 386 multi-user
windowing environment.
Responsible for the redesign and development of the AdaMAT Metrics Display
Tool (MDT), a PC-based graphics and analysis tool, written in Ada and C.
Implemented expanded memory manager access routines, in order to interface
the Ada and C components, and allow the system to fit on a 640K personal
computer.
As a Senior Software Engineer, led the design, development and
implementation of the Data Management Information System (DMIS) for the
Naval Underwater Systems Center (NUSC). This distributed metrics data
collection and storage system is written in Oracle, C, and SQL to run on a
Vax under VMS and PC's under both MS/DOS and UNIX. The system comprises
over 90 relations, 30 reports and graphs. Responsibilities included meeting
with the customer to define the system requirements, design and development
of the system, and overseeing the work of four other developers.
Lead developer for the Automated Assistant for the Specification of Quality
of Software (ASQS). ASQS is an object-oriented, rule-based expert system
implemented on a Xerox 1186 Artificial Intelligence workstation, which
automates algorithms and guidelines for the specification and evaluation of
software quality requirements. Responsibilities included the development
of the initial research proposal, design and development of the system
including the graphical user interface, development of a complete DOD-STD-
2167 documentation set, and technical as well as marketing presentations.
Developed a prototype database system to provide on-line access of Ada
guidelines through a natural language interface to software development
engineers and managers, sponsored under DRC Internal R&D.
Supported the on-going development of automated methods of data collection
for AdaMAT, specifically in the areas of implementing patterns for
collection using AdaMAT's internal pattern matching language, design and
implementation of the user interface, and performance improvements.
Ported a version of Apache to windows NT, including Secure Socket Layer SSL
enhancements which allows us to generate our own SSL web server
certificates for testing purposes.
Various Consulting Projects - 1995 - 1999 Developed many Windows NT
freeware programs including a version of WS_FTP32, BIND, WinWhois,
Keepalive, Kill, Startras, LKBackup etc. My Windows NT port of WS_FTP32 is
currently licensed and in use as the ftp client in Intergraph's DiskShare.
GTE Corporation, 1984-1985
Designed and developed a database for collecting and processing Ada
software metrics information as part of WIS. The system was implemented in
Oracle, and stores information on cost estimation, process, and quality
metrics. The system allows the tracking of metrics data throughout the life
cycle of the WIS project and also performs intermetric correlations.Served
as a member of the metrics team and the Special Interest Group on software
metrics. Also served as the group specialist on cost estimation and
reliability models.
Served as a member of a team that implemented a Split Screen device driver
for UNIX (UTS). The new device driver allows users to have multiple logical
screens on one physical terminal and also provides basic windowing
capabilities.
PUBLICATIONS:
Kahn, Larry, "TEST DRIVE - Diskeeper For Windows NT", Windows NT Magazine,
Duke Communications Intl, April 1996.
Kahn, L., and Keller, S., "The Assistant for Specifying the Quality of
Software (ASQS)", Final Technical Report, RADC-TR-90-195, September 1990.
Keller, S., Kahn, L., Panara, R., "Specifying Software Quality Requirements
with Metrics", Systems and Software Requirements Engineering, IEEE Computer
Science Press, 1990, (ISBN NUMBER 0-8186-8921-8).
Keller S., Kahn L., "An Expert System for Specification of Quality
Software", Proceedings of the First Annual Software Quality Workshop,
Rochester, N.Y., August 1989.
Kahn, L., "Assistant for Specifying the Quality of Software (ASQS)",
Proceedings of the Post Deployment Software Support Symposium, Software
Engineering Institute (Carnegie Mellon University), October 1987.
Kahn, L., "Software Quality Attributes Guidebook Validation", Proceedings
of the Ninth Minnowbrook Workshop on Software Performance Evaluation,
August 1986