Robert Bruce Wallace Jr

software development & consulting

Overview

As Principal Consultant of PolyGlot Inc, Bruce has provided computer software development, consulting, and training services around the world. Projects have been completed in San Francisco, "Silicon Valley", "Route 128" MA, Austin TX, Charlotte NC, Atlanta GA, Juan-les-Pins France, Sydney and Perth Australia.

Hands-On development in 40+ languages and 50+ application domains for 75+ clients (including Apple, Sun/Javasoft, HP, FedEx, BellSouth, Coca-Cola, Wachovia, Wells Fargo, Williams-Sonoma, Chevron, Lockheed, Raytheon).

Authored Top-5 world-wide best-selling software, and articles for magazines like OReilly, DZone, Byte, JavaPro, OnJava, Gamelan/Developer.com.

Skills

Software Architect

Combining computer science theory and pragmatic hands-on experience in 50+ domains as Application & Solutions Architect.

Software Engineer

Hands-on experience in every software development lifecycle phase: analysis, design, implementation, testing, maintenance & documentation.

Managing & Mentoring

From Team Lead to CTO, leading a wide variety of design & development projects in team and independent situations.

Technical

  • Modern Javascript
  • AJAX/JSON/REST
  • Angular/Dojo/jQuery/YUI
  • HTML/CSS
  • Java/J2EE/JSP
  • XML/XSL/WSDL/SOA
  • SQL/NoSQL
  • C/C++
  • OS X
  • Windows
  • Unix
  • Linux

Experience
(excerpts)

PolyGlot, Inc.

President & Principal Consultant

1984-present

As a consultant to scores of companies, my roles ranged over Architect, Author, CTO, Chief Scientist, Product/Project Manager, Business Analyst, Systems Analyst, Lead Developer, QA Developer/Tester, Tech Writer, and Instructor.

fabric.com

Chief Technology Officer

1998-1999

Took over as a hands-on CTO of a small startup (which was later sold to Amazon.com). Was in charge of all technical aspects of the company, developing online retail stores and real-time web auctions for Hancock Fabrics and Walt Disney. Directed staff and contractors across multiple time zones.

Synergy, Inc.

Chief Scientist/Product Manager

1982-1984

Developed a general purpose "NoSQL" semantic-network database kernel, based on AI techniques. Built an interactive development tool to allow business users to create data forms, screen layouts, ontologies, and datasets. Managed all development staff.

Ayden Energy

Head of Software Development

1980-1981

In charge of software design and implementation for a $75 million (in 2010 dollars) subcontract to a Lawrence Livermore Labs fusion reactor experiment. Personally wrote a hard real-time multi-tasking operating system from bare metal, interfacing to custom hardware, underneath two separate control system apps. Managed ten other programmers on the project.

Education

Florida State University, Tallahassee, FL

B.S. in Mathematics / Computer Science

National Merit Scholarship

Profiles

Who's Who in Frontier Science & Technology

(Marquis Who's Who in America)

Who's Who in California

Who's Who in Technology Today

Who's Who in Society

Who's Who Worldwide Registry

Bruce Wallace — polyglotinc@rexume.org — (404) 448-1744

languages
Ada, APL, BASIC, C, C++, COBOL, ColdFusion, DTD, Exlax, Fortran, Forth, FreeMarker, Graforth, HTML, Java, JSP, JavaScript, Lisp, Modcal, ObjectPAL, Object Pascal, ObjectVision, Pascal, PHP, Perl, PL/SQL, Prolog, Scheme, Snobol, SQL, SVG, Tutor, UCSD Pascal, Unix shells/sh/csh/bash/tsch/ksh, UML, WSDL, XHTML, XML, XSL, XSchema, Z80, 8052, 8080, 8085, 8086, 6502, 6800, 68000, Compass, Macro-10/11/20, Applicon GAS/FLECS
technologies
J2EE/JSP/Servlets/EJB, Applets, Portals/Portlets, AJAX, CSS, JSON, SOA/REST, DCE, JDBC, JAAS, JAXP, JNDI, LDAP, X-Windows/Xlib/Motif/DecWindows/twm/mwm, Tomcat, Apache, Batik, Protege-2000, JBuilder, Eclipse, JRun, JUnit, Struts, Spring, XALAN/XERCES, Ant, Epicentric, MPW, MacApp, CodeWarrior, Rational Rose, DataViews, NetView, XDesigner, Borland Enterprise Server, TOAD, MediaBin, OSI, IS41, SS7, HTTP, SNMP, BER-ASN, TCP/IP, ICMP, DecNet, T1 (D4/ESF), Dojo, jQuery, YUI
databases
Oracle, MySQL, DBVista, Progress, Sybase, Informix, ADABASE, 4th Dimension, Endeca, HP Image/View, Ingres, Oracle Pro*C, Informix ESQL-C, FileMaker, Access, Paradox
systems
Unix/Linux/HPUX/DGUX/AIX/UnixWare/Solaris/SunOS, Win31/NT/2K/XP, HP3000 HPE/MPE, RSX-llM, VAX VMS, DEC Tops 10/20, DG AOS, PDP-11, CP/M, UCSD p-system, MS DOS, Apple II/III/Lisa/Macintosh, TRS-80, CDC Kronos/Scope/STAR/Plato
domains
artificial intelligence/ontology, compilers, computational geometry, BPA/BPR, CAI, CIM, VLSI CAD/CAM, CRM, Front-End/UI/GUI design, graphics, education, e-commerce, Design Patterns, Design Markers, Explicit Programming, Existential Programming, client/server, data warehouse, digital asset/image management, marketing, embedded, energy, manufacturing, MRP/DRP, cellular, communications, telecom, database kernels, O/S kernels, device drivers, distributed database/systems, protocol design, simulation, military systems, workflow, network admin, message oriented middleware (MOM), mainframe, audits/controls, scientific, custom hardware interfacing, retail, real-time control systems
roles
Architect, Author, CTO, Chief Scientist, Product/Project Manager, Business Analyst, Systems Analyst, Lead Developer, QA Developer/Tester, Tech Writer, Instructor
1/2017 thru Present: Front End Developer
reXume.org, San Francisco, CA
keywords: JavaScript, TypeScript, AngularJS, Angular 4, Gulp, Node.js, jQuery, HTML, CSS, MVC, Firebase, Bootstrap 4
Ported reXume.org interactive resume tools from YUI-css/jQuery web pages to JavaScript/AngularJS (v1.6) web site. Then ported site to TypeScript/Angular-4/Bootstrap-4. Migrated from manual builds, to Gulp and Node.js builds for AngularJS, and to AngularCLI for Angular 4. Also converted from database-generated static html, to JSON files served via server-side RESTful API, and Firebase cloud databases.
5/2015 thru 12/2016: Author
ExistentialProgramming.com, Nice, France
keywords: analysis, ontology, semantic web, architecture, data model, data integration, domain model, Philosophy, BA
Took a second sabbatical in France to continue study in ontology, exploring how it applies to day-to-day software development, in particular, business analysis, data modeling, object oriented systems, and systems/data integration. Also, explored ES6 additions to JavaScript, porting previous MVC components to ES6.
1/2014 thru 7/2015: Front End Developer
Williams Sonoma, San Francisco, CA
Shiva Harris, Business Mgr
keywords: DOJO, FreeMarker, RIA, AJAX, JavaScript, HTML, CSS, Sass, design patterns, Java, Spring, MVC, Endeca, ecommerce, analytics
Member of team developing and supporting the six brands in the Williams-Sonoma family of retail websites including Pottery Barn. Developed new GUI widgets in JavaScript and Dojo, and webpages in HTML, CSS, Java, Spring, and Freemarker. Focused on Checkout tunnel, Analytics generation, and site search using Endeca. Also created documentation and training materials for developers about design patterns and MVC techniques.
1/2013 thru 7/2013: Front End Developer
Wells Fargo Bank, San Francisco, CA
Manuel Jasso, Supervisor
headcount: Supervised 3 other team members.
keywords: YUI-3, ARIA, RIA, AJAX, JavaScript, HTML, CSS, JSON, design patterns, Java, JSP, J2EE, MVC, cross-browser, Accessibility, performance optimization, yuiDoc, yuiTest, QA/QC
Member of core team developing and supporting Wells Fargo's new RIA framework used by scores of customer-facing banking web apps. Developed new GUI widgets and frameworks in YUI-3, JavaScript, HTML & CSS, new custom JSP tags to generate corporate standard markup, and server-side framework components using Java, Servlets, JSP. I also created documentation and training materials for framework users and developers including design patterns and MVC techniques.
5/2012 thru 5/2012: Author
Architects.DZone.com, San Francisco, CA
Mitch Pronschinske, Senior Content Curator
keywords: object model, Philosophy, education, analysis, ontology, data model, domain model
Introduced in two articles, some big ideas from Western Philosophy for modeling object properties that programmers need to know but typically don't. They were published in June 2012 on Architects.DZone.com.
2/2011 thru 7/2013: Front End Developer
Wells Fargo Bank, San Francisco, CA
Manuel Jasso, Supervisor
keywords: ARIA, RIA, AJAX, JavaScript, HTML, CSS, XML, JSON, design patterns, Java, JSP, J2EE, MVC, YUI, Ext-JS, Struts, cross-browser, Accessibility, performance optimization, jsUnit, yuiTest, QA/QC
Member of core team developing and supporting Wells Fargo's RIA frameworks used by scores of customer-facing banking web apps. Developed new GUI widgets in YUI, JavaScript, HTML & CSS, new custom JSP tags to generate corporate standard markup, and server-side framework components using Java, Servlets, JSP & Struts. I also created documentation and training materials for framework users and developers including performance optimization and MVC techniques.
11/2010 thru 1/2011: Front End Developer
gravey.org, San Francisco, CA
PolyGlot, Inc., Sponsor
keywords: RIA, AJAX, JavaScript, HTML, CSS, REST, design patterns, MVC, Architect, XML, XSL, jQuery, iPad, Win2K/XP, Mac OS X, IE6, IE8, SeaMonkey 2, Firefox 3.6, Safari 5, Chrome 8
Upgraded the gravey.org JavaScript framework for AJAX and Rich-Internet-Apps to run on multiple browsers (whereas before it was restricted to Internet Explorer). Based on a framework I originally developed for internal banking applications, this library includes AJAX/REST integration, GUI widgets, forms processing, automated domain object persistence, in-browser XML/XSL processing, and complete Undo/Redo functionality.
8/2010 thru 8/2010: Author
JavaLobby.com, Juan-les-Pins, France
Lyndsey, Managing Editor
keywords: Unit Testing, QA/QC, Philosophy, Economics, education
Provided a rationale from Philosophy and Economics for the strategy of requiring developers to write their own unit tests in addition to tests developed by an outside testing group. It was published in Aug 2010 on both the JavaLobby.com and DZone.com websites.
1/2009 thru 9/2010: Author
ExistentialProgramming.com, Juan-les-Pins, France
keywords: analysis, ontology, semantic web, Java, JavaScript, identity systems, web services, SQL, architecture, data model, data integration, domain model, Philosophy, BA
Took a sabbatical in France to study ontology, and work on the article series "Existential Programming" which explores those concepts and shows how they apply to day-to-day software development, in particular, business analysis, data modeling, object oriented systems, and systems and data integration.
1/2007 thru 10/2008: Business/Systems Analyst
Wachovia Bank, Charlotte, NC
Chris McDonald, Supervisor
keywords: BA, Business Analyst, Java, .Net, mainframe, Web Services, SQL, architecture, data model, data warehouse, domain model
For an enterprise-wide revamping of customer identity management for Basel II compliance, I performed business and systems analysis required to: (1) produce a design for a new common system for managing customer identity data, and (2) retrofit a large number of internal banking applications to integrate with that new system, and (3) integrate those same systems with a new enterprise data warehouse. This involved surveying and bridging a wide range of data models, user interface technologies, and data exchange technologies.
12/2006 thru 2/2007: Author
Gamelan.com, Darien, CT
Rosemarie Graham, Editor
keywords: Javascript, AJAX, Class, MVC, inheritence, education
Presented a compact implementation of Javascript class inheritence with most of the features of the Java classes. This will enable the use of robust design patterns needed for AJAX and Rich Internet Applications (RIA). It was published in the Feb 2007 issue of both the Gamelan.com and Developer.com online magazines.
3/2006 thru 3/2006: Author
OnJava.com, Sebastopol, CA
Chris Adamson, Editor
keywords: Javascript, AJAX, MVC, Mutual Exclusion, education
Weak JavaScript environments offer the AJAX developer little protection from concurrency dangers, such as one thread modifying the DOM while another reads it. Bruce Wallace offers a mutual exclusion implementation for JavaScript in an article published in the March 2006 issue of O'Reilly's OnJava.com online magazines.
12/2005 thru 3/2006: Author
Gamelan.com, Darien, CT
Rosemarie Graham, Editor
keywords: Javascript, AJAX, Mutual Exclusion, education
Adapted Lamport's "bakery algorithm" for mutual exclusion to be usable in an AJAX Javascript setting overcoming several language limitations of JavaScript. It was published in the March 2006 issue of both the Gamelan.com and Developer.com online magazines.
12/2004 thru 11/2007: J2EE Architect
Wachovia Bank, Charlotte, NC
Chris McDonald, Supervisor
headcount: Supervised 4 other team members.
keywords: AJAX, REST, MVC, WSDL, web services, Java, J2EE, XML, XSL, WSAD, Websphere, HTML, CSS, IE, Javascript, MQ, CVS, Win2K/XP, HP-UX, Solaris, Oracle, TOAD, ANT, Unix shell scripting, PL/SQL, SQL, BA, Business Analyst, domain model
As architect and lead developer, I helped gather Basel II business requirements and led translating them into technical requirements, design specifications, as well as, managing myself and 4 other developers in implementing them as three rich-client banking applications, using AJAX, REST/WSDL web services, J2EE, XML, XSLT, Javascript, DHTML, and Oracle. Also, I helped convert persistence servers from a standalone Java application to an EJB server, and, set up SOAP interface to Basel II Grading Calculator App.
6/2004 thru 12/2004: J2EE Architect
Wachovia Bank, Charlotte, NC
Chris McCabe, Supervisor
keywords: Java, J2EE, XML, XSL, WSAD, Websphere, HTML, DHTML, CSS, Javascript, MQ, CVS, IE5, Win2000, HP-UX, Solaris, Oracle, TOAD, ANT, shell scripting, PL/SQL, SQL, Unix, JMS
Developed an interactive banking database query and analysis webapp using J2EE, XML, XSLT, Javascript, DHTML technology to access Oracle databases via an IBM MQ transaction framework. The webapp provided a user interface to slice/dice reporting data via dynamic displays and dynamic SQL query generation. Development tools were Websphere, WSAD, Win2000 and deployment targets were iPlanet and WAS app-servers, IE browsers, Oracle DB, IBM MQ and JMS messaging middleware on HPUX and Solaris servers.
10/2003 thru 1/2004: J2EE Developer
Wachovia Bank, Charlotte, NC
Mark Manning, Supervisor
keywords: Java, J2EE, XML, XSLT, WSAD 5, CVS, Win2000, DBA, HP-UX, Oracle, TOAD, ANT, shell scripting, PL/SQL, SQL, Unix
Analysed a mature Websphere-based J2EE/XML/XSL commercial banking loan servicing system for obsolete database tables/columns and refactored the PL/SQL to remove them. Developed ANT, Win2K DOS, and Unix shell scripts to automate the process of scanning XML, PL/SQL, and shell script sources to generate a cross reference of accessed database objects.
6/2003 thru 9/2003: J2EE Architect
reXume.org / reXume.net, Atlanta, GA
PolyGlot, Inc., Sponsor
keywords: SVG, XML, XSL, XSchema, Java, J2EE, Tomcat, JRun, MySQL, JDBC, JSP, JAXP, XHTML, HTML, ontology, Protege-2000, Linux, Gantt, Apache, Batik, SQL, UML, Architect, Unix, JBuilder 8 Enterprise
Developed the GanttMagic and reXume XML stds (described via RDDL) for representing Gantt Chart and resume data. Developed and published an open source reference implementation as interactive J2EE web apps (using XSLT and Java hook functions) which filter and display resume data as HTML, plain text, and graphic image renderings of "Experience Diagrams", i.e. gantt chart summaries of which skills were used during which time periods.
3/2003 thru 3/2003: Author
OnJava.com, Sebastopol, CA
chromatic, Editor
keywords: Java, Design Markers, Explicit Programming, education
Contrasted the concepts of Design Markers and Explicit Programming in an article published in the March 2003 issue of O'Reilly's OnJava.com online magazines It detailed how Design Markers can be used now to provide many of the benefits of Explicit Programming without relying on experimental tools.
12/2002 thru 3/2003: Author
Gamelan.com, Darien, CT
Rosemarie Graham, Editor
keywords: Java, Design Markers, Explicit Programming, education
Conceived the concept of Design Markers and wrote an article presenting the idea. It was published in the March 2003 issue of both the Gamelan.com and Developer.com online magazines. It detailed how Marker Interfaces and JavaDoc can be combined to document Design Choices in the implementation source code.
8/2002 thru 5/2003: J2EE Developer
ChoicePoint, Atlanta, GA
K. Deshpande, Supervisor
headcount: Supervised 2 other team members.
keywords: Java, J2EE, XML, XSL, XSchema, JBuilder, BES, Win2000, Solaris, Oracle, JAAS, UML, QA/QC, JNDI, LDAP, Struts, education, SQL, RUP, Unix, BA, Business Analyst, SSA NAME3
Worked on multiple projects including developing XSLT transforms of XML bulk data into Oracle load scripts. Was developer/mentor for a team developing the Business Identity Management middleware of a large Business Credit Information Warehouse that used EJB CMP 2.0 technology with Oracle. Documented Struts-based biometric information system. Integrated LDAP servers with Borland J2EE server developing custom JNDI and JAAS components. Developed proof of concept demonstrating Crystal Reports interfacing with Java and EJBs.
4/2002 thru 8/2002: J2EE Architect
PolyGlot, Inc., Atlanta, GA
Robert Wallace, Owner
keywords: SVG, XML, DTD, XSL, XSchema, Java, J2EE, JRun, MySQL, JDBC, JSP, JAXP, XHTML, HTML, ontology, Protege-2000, Linux, Win2000, Apache, Batik, SQL, Javascript, UML, Architect, Unix
Ported GanttMagic, a set of Java/XML utilities for publishing resumes and job requirements in a number of formats including GANTT chart graphics, from standalone Java application to SVG/XML/XSLT based middleware integrated with an interactive web site using multi-threaded J2EE technologies. An ontology was created to organize buzzwords enabling better search and summary results.
11/2001 thru 6/2002: J2EE Architect
Grassroots Girls, Atlanta, GA
Renee Izadi, Supervisor
headcount: Supervised one other team member.
keywords: XSchema, HTML, CSS, J2EE, education, workflow, XALAN, XERCES, JAXP, PHP, Win2000, BA, Business Analysis
Site architect and developer of a set of Java, XML, XSLT utilities for automating the generation of their interactive web site. Also, taught in-house classes on XML. Was main liaison between business partners and web graphics designer. Also developed server side scripts in PHP to support forms and order processing.
2/2001 thru 10/2001: Java Architect
MediaBin, Atlanta, GA
Bill Coleman, Supervisor
keywords: Java, C++, JUnit, JBuilder, GDPro, Win2000, BER-ASN-TCP/IP protocols, Design Patterns, UML, QA/QC
Ported from C++ to Java the implementation of the client-side API of the MediaBin Image and Asset Management System. This multi-threaded Java middleware managed the C++ server via proprietary client/server protocols using BER encoding and ASN style protocol layers on top of TCP/IP. I also developed an extensive automated unit/integration test suite using JUnit and JBuilder IDE.
10/2000 thru 2/2001: Author
JavaPro Magazine, Atlanta, GA
Kay Keppler, Editor
keywords: Java, Visitor Pattern, Reflection, education
Wrote an article on the Visitor design pattern which was published in the March 2001 issue of JavaPro Magazine. It detailed how Java's reflection API can be used to greatly simplify the implementation of the GoF Visitor pattern.
3/2000 thru 1/2001: Tech Asst to Chairman
Matrix.net, Austin, TX
Don Fussell, Chief Science Officer
headcount: Supervised 2 other team members.
keywords: Portals, Java, Servlets, JSP, J2EE, JDBC, HTML, Perl, Solaris, Linux, TCP/IP, ICMP, XML, Epicentric, JRun, MySQL, Apache, Architect, Win95, SQL, UML, Unix, BA, Business Analyst, QA/QC, MVC
Managed, from software purchase negotiations thru development and developer training, the Portal portion of a product delivering network monitoring info via a web user interface. The project used the Epicentric portal framework and JRun JSP/servlet engine on top of a JDBC database and Apache web server. Also, designed, implemented and built automated testing of a servlet-based Configuration Server middleware for the Java and Perl components of the product. Performed all development remotely via Internet telecommuting.
6/1999 thru 3/2000: Lead Developer
Nuforia, Houston, TX
Michael Wollin, Dir., Engineering
keywords: e-commerce, Portals, education. CRM, Java, Servlets, JSP, J2EE, EJB, HTML, WinNT, Linux, network admin, firewalls, XML, Epicentric, WebLogic, Apache, SQL, UML, Unix, BA, Business Analyst
Hired as lead developer for the Atlanta office of an internet consulting start-up. Participated in OO Analysis JAD of a CRM system for private credit card client, Enterprise Portal development using Epicentric middleware and custom servlets/JSPs, and taught Java and J2EE technology classes to both in-house and client developers. Specialized in multi-tier distributed/internet/intranet systems.
4/1999 thru 6/1999: Subject Matter Expert
QWIZ, Inc., Atlanta, GA
Tina Babb, Project Lead
keywords: Java, HTML, education, QA/QC
Was one of 3 subject matter experts on two separate panels that researched and produced questions and answers for online testing of Java 2 and HTML 4 skills.
3/1998 thru 4/1999: Chief Technical Officer
fabric.com, Marietta, GA
Stephen Friedman, President
headcount: Supervised 22 other team members.
keywords: Manager, e-commerce, BA, Business Analyst, workflow, data model, data mining, database admin, Filemaker, Access, Java, Javascript, Perl, HTML, Cold Fusion, network admin, WinNT, Win95, Linux, Architect, SQL, UML, Unix
Took over as a hands-on CTO of a small startup that was later sold to Amazon.com. It had lost its entire technical staff midway through its seed funding cycle. Was in charge of all technical aspects of the company, focused on marrying internet commerce with the textile and apparel industries. Reporting to the President, I managed all software development, both in-house, remote outsourced, and licensed, as well as technical architecture development and support. Web sites included retail stores for clients like Hancock Fabrics, Java-applet-based real-time auctions for clients like Walt Disney Company, and the portal sites www.fabric.com and www.apparelex.com. Developed infrastructure to collect data from online activities and data mine it to support email and fax based promotions. Also developed enterprise data integration and workflow middleware to automate internal operations wherever possible. Directed 5 staff members and 17 contractors from 7 different vendors.
11/1997 thru 1/1998: Java Architect
PolyGrafX, Chattanooga, TN
Scott Wallace, Supervisor
keywords: XML, DTD, Java, education, graphics, Solaris, Win95, Unix
Developed GanttMagic, a set of Java/XML utilities for publishing resumes and job requirements in a number of formats including graphical GANTT charts. Also, taught in-house classes on XML.
7/1997 thru 2/1998: Java Developer
Javasoft (Sun), Cupertino, CA
Frank Dibbell, SQE Manager
keywords: Java, HTML, HTTP, Solaris, Win95, QA/QC, JDK, Visual Cafe, JBuilder, JavaStudio, Unix
Was in charge of developing a set of Java applets to test a broad range of Java APIs available in the HotJava Browser environment, especially security limits. APIs included Java Beans, GUI, networking, communications, system calls, etc. Also developed a multi-threaded HTTP server written in Java with special server side include processing to support browser stress testing.
9/1996 thru 3/1998: Java Architect
MIDS, Austin, TX
John Quarterman, President
keywords: Java, HTML, HTTP, JDK, Visual Cafe, Solaris, Win95, Macintosh, Unix
Developed a data visualization applet in Java that enables Web users to see Internet data storms. Also, wrote Java applications to poll web sites and collect performance statistics. MIDS collects a database of statistics about data flow over the entire Internet. Performed all development remotely via Internet telecommuting.
6/1996 thru 5/1997: Macintosh Developer
Coca-Cola, Atlanta, GA
Tamara Wright, Supervisor
keywords: Java, C++, MacApp, CodeWarrior, SQL, client/server, data warehouse, OOAD, MVC
Helped support & extend Coke's custom Macintosh client software for a client/server data warehouse system. The databases were implemented with Oracle and Teradata servers. The Macintosh software was implemented with MacApp 3.1 using CodeWarrior and C++. Helped develop proof of concept for porting Mac and PC versions of software to a single 3-tier implementation in Java.
3/1996 thru 6/1996: Database Developer
IRI Logistics, Atlanta, GA
Vittal Devarajan, Supervisor
keywords: HP-UX, AIX, C, Oracle Pro*C, Informix ESQL-C, MRP/DRP, compilers, Unix, SQL
Helped to port and enhance the Logistics Partner DRP product from Oracle PL/SQL to C, Oracle Pro*C, & Informix ESQL-C on HP-UX and AIX platforms. Developed preprocessor language to enable common source files to generate both Pro*C and ESQL-C embedded SQL. Was in charge of integration of all backend server code produced by 6 developers.
5/1995 thru 2/1996: System Architect
BellSouth Wireless, Atlanta, GA
Steve Cleary, Senior Manager
keywords: C, C++, UnixWare, message oriented middleware, telecom systems, IS41,SS7, PERL, DGM&S, Pascal, OOAD, Unix
Designed software architecture & implemented multi-threaded / multi-process message routing kernal of the Cellemetry system for performing telemetry transparently over existing cellular phone systems. This effort included development of fault-tolerant middleware and inter-system protocols. The system was written in C/C++ using the DGM&S Omni toolkit and IS41/SS7 network interface. Also programmed HP IS41 protocol analyser in HP Pascal.
4/1994 thru 4/1995: Middleware Architect
BellSouth Cellular, Atlanta, GA
Gary Schwaiger, Supervisor
headcount: Supervised 2 other team members.
keywords: C++, AIX, HP-UX, Sybase, DCE, SNMP, NetView, SM/6000, distributed systems, X Windows, SQL, education, OOAD, Unix, BA, Business Analyst
Architect of middleware layer as well as portions of the application layer for a multi-threaded real-time billing network for cellular phone services. The system was written in C++ using Sybase, DCE, & SNMP on AIX and HP-UX servers. Developed real-time process control, communications, and monitoring using custom X windows graphics displays and SNMP interface to NetView & SM/6000. Taught in-house classes on Object Oriented development and C++.
4/1994 thru 6/1994: Embedded System Architect
Digital Enterprises, Atlanta, GA
Keith Tener, President
keywords: Win31, MS-DOS, C/C++, telecommunications, protocol design, sole-developer, embedded, OOAD
Developed system to monitor/log RAID disk status notifying alerts via digital pagers.
6/1993 thru 11/1994: Database Architect
Georgia Power, Atlanta, GA
The Computer Merchant, Supervisor
keywords: ObjectVision, ObjectPAL, Paradox for Windows, Crystal Reports, Win31, OOAD, BA, Business Analyst
Developed reporting apps for Board of Directors using ObjectPAL (Paradox for Windows).
2/1993 thru 3/1994: Macintosh Developer
Coca-Cola, Atlanta, GA
Karen Gratton, Supervisor
keywords: C++, MPW, MacApp, Oracle, Pro*C, SQL, client/server, Win31, OOAD, MVC
Helped develop two marketing promotions tracking systems for Coke where Macintosh and MS Windows custom applications were written to provide a uniform GUI front end to SQL databases. The databases were implemented with Oracle via central servers. The PC clients used Oracle PRO*C embedded SQL pre-compiler. The Macintosh programs were implemented with MacApp 3.0 using MPW and C++.
1/1993 thru 2/1993: GUI Consultant
Raytheon, Marlborough, MA
Martin Greenstein, Supervisor
keywords: C, DGUX, SunOS, Unix, X, Motif, DataViews, real-time, twm, mwm, graphics, embedded, MVC
Helped develop a rapid-prototype of an air-traffic control system. The system was used to demonstrate the capability of developing an ATC system built with open systems components (Unix, X). Dataviews middleware was chosen as the rapid prototyping tool. Interfaced with actual ATC radar data from Frankfurt, Germany (DERD) and drove custom Sony 2K by 2K pixel color displays.
11/1992 thru 2/1993: Database Architect
BenefitWare, Stone Mtn, GA
keywords: ObjectVision, Win31
Developed insurance direct reimbursement system using ObjectVision.
10/1992 thru 12/1993: GUI Consultant
Federal Express, Memphis, TN
GE Consulting, Supervisor
keywords: X Windows, Motif, XLOOK, GUI, Unix
Wrote white paper on X GUI interoperability & style guidelines.
1/1992 thru 10/1992: GUI Consultant
V.I. Corporation, Northampton, MA
Earl Billingsley, Supervisor
keywords: C, C++, Unix, X, XDesigner, Motif, DataViews, real-time, SunOS, HPUX, DGUX, MVC
Helped develop interactive GUI editors for Commonwealth Edison, Hitachi, and Talarian using DataViews middleware, Unix, C, and X windows/Motif. The user could easily produce screens with real-time input & output elements that were linked via shared memory to user application programs. These editors were built with the DataViews GUI development package from V.I. Corporation as well as Xt & Motif. Also, developed a real-time digital radio GUI for ITT using DataViews rapid-prototyping tools on top of Open Look.
11/1991 thru 12/1991: GUI Consultant
Lockheed Missles & Space, Sunnyvale, CA
VI Corp, Supervisor
keywords: DataViews, Fortran, Modula, GUI, QA/QC, VAX VMS
As a DataViews middleware consultant, I performed an informal software audit of the launch control console software for the ERIS program focusing on a particular set of problems. I produced a report of the general state of the software as well as recommended changes.
7/1991 thru 11/1991: GUI Consultant
Chevron Oil, Richmond, CA
Rick Scheuerman, Supervisor
headcount: Supervised one other team member.
keywords: VAX, VMS, C, FORTRAN, DataViews, Ingres, DecNet, real-time, graphics, client/server, embedded, MVC
Overhauled an oil refinery pilot plant monitoring system using DataViews middleware, Ingres, Vax VMS, C, and FORTRAN. This real-time system included several processes, distributed over DecNet, which communicated via message and file passing. Object-Oriented techniques were used in the redesign and implementation. System made extensive use of the DataViews GUI development package from V.I. Corporation.
11/1989 thru 5/1991: System Architect
Orbital Engine Co., Perth, West Australia
Mark Norman, Supervisor
headcount: Supervised 3 other team members.
keywords: AOS, DGUX, FORTRAN, C, C++, Progress 4GL, X, Xlib, Motif, graphics, QA/QC, MS-DOS, real-time, relational database, education, Architect, embedded, Unix, MVC
Developed an automobile engine test & measurement system in DGUX, C, Progress 4GL, and X windows based on an existing system in DG/AOS FORTRAN. I developed a multi-threaded real-time middleware system which managed communications and synchronization via System V IPC. Object-Oriented development techniques were used in the design and implementation. System used HP75000 and HP3852 GPIB bus mainframes, IDEC Izumi PLCs, and Ono Sokki flow meters. Taught in house classes on Object Oriented development. Used Business Rules approach to configure system with rule scripts rather than hard coded logic.
7/1989 thru 10/1989: Macintosh Developer
Pillar Corporation, Foster City, CA
keywords: MacApp, OOP, DBASE, Object Pascal, Macintosh
Developed MacApp objects to read/write Lotus & DBase files.
4/1989 thru 9/1989: System Architect
Operations Control Systems, Palo Alto, CA
Derek Evans, Supervisor
keywords: HP3000, MPE, Pascal/3000, Unix, Architect
Developed an object-oriented UNIX-like make facility for HP3000 systems to be marketed as a stand-alone product OCS/Make as well as being integrated into the OCS/Librarian product. Also produced maintenance & upgrade changes to OCS/Librarian.
1/1989 thru 3/1989: Macintosh Developer
Stanley-Vidmar, Cincinnati, OH
Kit Fitzpatric, Supervisor
keywords: Macintosh, MPW, C, DB-Vista databases, MS-DOS, IBM PC/AT, real-time, manufacturing, protocol design, communications, AppleTalk, embedded
Helped port and extend a real-time manufacturing controls system from an MS-DOS environment to the Macintosh. This version of the system was specifically for use in Apple Computer's Flexible Manufacturing System (FMS) in Fremont, California. The system controlled 1500 rotary storage locations along with assorted robot extractor/inserters and conveyors. It also updated part inventory and daily production schedule databases. The control system communicated with controllers from other vendors over AppleTalk network links.
11/1988 thru 1/1989: OOP Consultant
MasterPlan, Inc., Foster City, CA
keywords: MacApp, OOP, Object Pascal, Macintosh, education
Taught in-house classes on MacApp and OO development.
4/1988 thru 6/1988: IT Consultant
Ruocco & Saucedo, San Jose, CA
keywords: Macintosh, LAN, network design, BA, Business Analyst
Wrote plan to implement new office LAN in a small law firm.
3/1988 thru 12/1988: Lead Developer
Cameo Systems, Santa Clara, CA
Fred Hyden, Supervisor
headcount: Supervised 2 other team members.
keywords: Macintosh, MPW, MacApp, Object Pascal, CIM, SQL, object oriented, 4th Dimension 4GL, protocol design, client/server
Macintosh team leader on project to develop computer-integrated-manufacturing (CIM) system for Genentech. Designed and implemented workstation prototypes. Macintoshes were connected to Tandem mainframe which handled central SQL database.
1/1988 thru 3/1988: Embedded Systems Developer
Schlage Electronics, Palo Alto, CA
keywords: 6800, device drivers, embedded, assembler
Developed electronic lock controller firmware.
7/1987 thru 2/1988: System Architect
Verilink, San Jose, CA
Starry Chan, Supervisor
headcount: Supervised 3 other team members.
keywords: communications, OSI, T1 (D4/ESF), protocol design, real-time, IBM PC/AT, C, DB-Vista databases, MS-DOS, QA/QC, Architect, embedded, 8052
Developed the multi-threaded software for a network management system for interfacing to Verilink's several types of T1 span monitoring equipment using D4/ESF protocols. The system allowed interactive access to individual nodes in the network as well as out-of-service testing (e.g. loopbacks). Background processing included alarm logging and performance data gathering. Wrote a complete OSI based transport system to implement secure communications between nodes over open phone lines with modems.
3/1987 thru 6/1987: Product Manager
BAM, Sydney, Australia
Mike Bolan, President
headcount: Supervised 4 other team members.
keywords: Macintosh, marketing, Manager, BA, Business Analyst
As product manager for this Macintosh time management program, I organized the development team consisting of people in Silicon Valley and Sydney, Australia. The main competition for this product was Apple MacProject.
11/1986 thru 4/1987: Network Transport System Manager
Australian Associated Press, Sydney, Australia
headcount: Supervised 2 other team members.
keywords: communications, VAX, VMS, C, Ethernet, Decnet, protocols, design, Manager, embedded
Performed a system design review of AAP's national satellite communications network. This involved analysis of the protocols of the various communication layers as well as software design. The system is VAX based written in C involving satellite, microwave, and phone line segments for interactive distribution of financial and wire-service data.
10/1986 thru 10/1986: Database Consultant
Hoge, Fenton, Jones, & Appel, San Jose, CA
keywords: DBASE, MS-DOS
Helped develop client database system for law firm.
3/1986 thru 9/1986: Software Engineer
FMC, San Jose, CA
John Tope, Supervisor
keywords: IBM PC/AT, Pascal, LANs, simulation, military systems, distributed database
Developed military vehicle simulations to demonstrate a distributed electronic control system implemented on a custom hardened local area network. Ten IBM AT computers where used to simulate various subsystems of trucks, tanks, APC, etc. and communicated over fiber-optic based network using distributed database techniques. Integrated modules produced by 2 other subcontractors.
7/1985 thru 9/1986: Lecturer
Northeastern University, Sunnyvale, CA
keywords: Pascal, Prolog, education
Faculty member, Pascal & Prolog Instructor, Bay Area Regional Technology Center. Authored all educational materials.
3/1985 thru 2/1986: QA Software Engineer
Hewlett Packard, Cupertino, CA
Jean Danver, Manager
keywords: QA/QC, HP3000, Pascal, Modcal, C, HPE, MPE, HP-UX, Unix, HP Image database, compilers
Developed test suite of spec compliance and regression tests for Pascal and Modcal compilers for HP3000, HP9920, and HP Spectrum computers on MPE, HP-UX, and HPE operating systems. Developed tools to automate QA/QC process. Also performed some compiler maintenance.
1/1985 thru 2/1986: Entrant/Developer
Othello Championship, Northridge, CA
Marc Furon, Tournament Director
keywords: Macintosh, IBM PC/AT, simulation, real-time, graphics, Pascal, Architect, AI
Wrote POP, two programs to play the Othello game, one for the IBM PC, and the other for the Macintosh. The IBM PC version was entered into the North American Computer Othello Championship Tournament (Feb 15-16, 1986). I had personally won tournaments where I played against computer programs and human opponents. POP successfully implemented my playing strategy.
5/1984 thru 9/1984: Macintosh Developer
Formaster, Santa Clara, CA
keywords: Macintosh, device drivers, Pascal, embedded, assembler, 68000
Developed disk copy protection software for Macintosh.
3/1984 thru 2/1985: Lead Developer
Applicon, Inc, Santa Clara, CA
David Ross, Supervisor
keywords: VLSI CAD/CAM, PDP-11, VAX, RSX-llM, VMS, C, computational geometry, design maintenance, FORTRAN, Macro-11, FLECS, Pascal, device drivers, embedded, assembler
Prototyped, in VAX C, an expert-system to extract electrical circuit schematics from raw VLSI fabrication data. Also performed maintenance and upgrade programming for a multi-threaded VLSI CAD/CAM system based on PDP-11 & custom hardware. Development was on VAX VMS. Produced a new release in 8 weeks (no releases having been made in 2-l/2 years).
2/1983 thru 4/1983: System Architect
Bullwinkles Pizza, Cupertino, CA
keywords: Apple II, GraFORTH, Forth, graphics, device drivers, embedded
Developed graphical customer pickup reminder system.
1/1983 thru 2/1984: Chief Scientist/Product Manager
Management Blueprint Software, Los Gatos, CA
Mike Lodge, Vice President
headcount: Supervised 4 other team members.
keywords: IBM PC/XT, UCSD Pascal, artificial intelligence, Manager, database kernal, Architect, education, ontology, BA, Business Analyst
Developed a general purpose semantic-network (aka EAV entity-attribute-value) database system based on AI general knowledge database techniques. It used "NoSQL" architecture before the term was invented. The interactive environment allowed live user development of data forms, screen layouts, ontologies, and datasets to produce business-oriented Personal Information Management applications, which were sold separately for each profession. Integrated the system with subcontracted software modules and user applications. I taught in-house classes on ontology development. Managed 4 other developers.
9/1982 thru 11/1982: Pascal Consultant
Pizza Time Theatre, Sunnyvale, CA
keywords: Apple II, Apple Pascal, education
Taught in-house classes on Apple Pascal.
8/1982 thru 11/1982: Software Entrepreneur
CGW & Associates, Mtn View, CA
Carl White, Partner
keywords: ADA, education, marketing
Produced and taught "Introduction to Ada" seminars at LeBaron Hotel in San Jose, CA. Authored all educational materials.
4/1982 thru 6/1982: Pascal Consultant
National Info Systems, Cupertino, CA
Richard Carlson, Supervisor
keywords: Pascal, marketing
Wrote market evaluation of Pascal-Plus compiler.
3/1982 thru 1/1983: Software Architect
Management Blueprint Software, Los Gatos, CA
Mike Lodge, Vice President
headcount: Supervised 2 other team members.
keywords: Apple II, Apple III, IBM PC, TRS-80 II, Pascal, Manager, compilers, CAI, Architect
Developed PolyForm, a general purpose forms processing system with a form definition language interpreter, to facilitate implementation of the MBS customizable application package Presidents War Plan. Managed 2 other developers.
1/1982 thru 3/1982: Embedded Systems Developer
LeCroy, Inc., Palo Alto, CA
keywords: 8085, device drivers, embedded, assembler
Developed laboratory equipment device drivers.
11/1981 thru 1/1982: Embedded Systems Developer
Strobe, Inc., Mtn View, CA
Bob Sherwood, VP, Marketing
keywords: Basic, Z80, device drivers, Apple II, CP/M, embedded, assembler
Developed Pen Plotter device drivers for Apple II and CP/M. Developed a spreadsheet-like application to facilitate data entry for plotter data.
10/1981 thru 9/1982: Software Entrepreneur
ADC Associates, Palo Alto, CA
Arnie Roberts, Publisher
keywords: Apple II, Basic, VisiCalc, marketing, sole-developer
Developed and published an Apple II utility program that translated VisiCalc spreadsheets into Basic subroutines compatible with Apple Basic.
6/1981 thru 5/1982: Database Developer
OMEX, Santa Clara, CA
Rob Spade, Project Leader
headcount: Supervised 3 other team members.
keywords: Omsi Pascal, PDP-11/70, RSX-llM, Manager, design, ADABAS-M database, education, BA, Business Analyst
Team Leader in charge of design and implementation of the Batch Posting portion of the nations's largest automated title insurance system. Taught in-house Pascal seminars for other project teams. Designed high and low level database transaction languages and wrote a compiler for the HOL and an interpreter for the LOL which drove the ADABASE-M system.
4/1981 thru 6/1981: Embedded Systems Architect
DCM, Inc., San Leandro, CA
headcount: Supervised one other team member.
keywords: Z80, Pascal, CP/M, O/S kernals, real-time, device drivers, embedded, assembler, QA/QC
Developed multi-threaded controller for telephone cable test equipment.
4/1981 thru 9/1981: Software Entrepreneur
Quality Software, Reseda, CA
Quality Software, Publisher
keywords: APPLE II, 6502, simulation, real-time graphics, Pascal, software protection, marketing, sole-developer, device drivers, embedded, assembler, multi-threaded
Wrote Meteoroids in Space, an upgrade/sequel to Asteroids in Space, an arcade game for the APPLE II. Was voted No. 5 in the All Time Favorite list of APPLE II programs in poll released by SOFTALK magazine.
2/1981 thru 4/1981: Embedded Systems Developer
GenRad S.T.I., Milpitas, CA
Tony Taylor, Supervisor
keywords: Z80, Pascal, C, PDP-11, RSX-llM, embedded, assembler
Provided recommendations for choosing Z80 development system. Wrote a system for translating from any assembler mnemonics to another based on user specifications. Assisted engineers in checkout of target hardware. In charge of converting C programs running on PDP-11 to run on Z80 based machines.
5/1980 thru 5/1981: Author
Byte Magazine, SF, CA
Byte Magazine, Publisher
keywords: Apple Pascal, UCSD Pascal, Apple II, education
Wrote article on computer animation appearing in the May 1981 Byte Magazine.
4/1980 thru 2/1981: Embedded Systems Architect
Aydin Energy Division, Palo Alto, CA
Art Laursen, Supervisor
headcount: Supervised 10 other team members.
keywords: Z80, Pascal, CP/M, O/S kernals, real-time, Manager, device drivers, Architect, embedded, assembler
In charge of software design and implementation for a $25 million subcontract to a Lawrence Livermore Labs fusion reactor experiment. The contract called for 24 10-megawatt power supply control systems and 4 maintenance consoles interfaced to the power supplies. Wrote an entire multi-threaded multi-tasking system in Z80 used as the kernel and interfaced an off-the-shelf Pascal compiler to the custom operating system. Managed l0 other programmers on the project.
1/1980 thru 4/1980: Software Entrepreneur
Quality Software, Reseda, CA
Quality Software, Publisher
keywords: APPLE II, 6502, simulation, real-time graphics, Pascal, software protection, marketing, architect, embedded, device drivers, assembler, multi-threaded
Wrote Asteroids in Space, an arcade game for the APPLE II. Was voted No. 5 in the All Time Favorite list of APPLE II programs in poll released by SOFTALK magazine. Also added upgrades to version released as Meteoroids in Space.
10/1979 thru 3/1980: Software Development Manager
Personal Software (Visicorp), Sunnyvale, CA
Peter Jennings, Chairman
keywords: APPLE II, TRS-80, PET, Manager, QA/QC
Managed several independent authors of microcomputer software. Performed QA/QC and porting activities for entire product line. This was during the time that VisiCalc was introduced. Mitch Capor took this position when I left. He left 6 months later to start Lotus.
9/1978 thru 9/1979: MAXBASIC Project Manager
National Info Systems, Cupertino, CA
Arden Scott, President
headcount: Supervised one other team member.
keywords: DEC-10/20, TOPS-l0/20, BASIC, Macro-l0/20, compilers, Manager, QA/QC, assembler
Took over managing the MAXBASIC compiler project for DEC-10 and DEC-20 computers when it was two thirds complete with over 200 extant bug reports. Instituted a bug report/enhancement request system used by entire product line of company.
9/1978 thru 5/1984: President
Apple P.I.E., Sunnyvale, CA
Mark Wozniak, Sponsor
headcount: Supervised 4 other team members.
keywords: Apple II, education, Manager, Pascal, 6502, assembler
Held various offices in Apple P.I.E. (Programming and Interfacing Enthusiasts) club including President, Vice President, and Secretary where I variously organized featured speakers, presided over meetings, and organized club software library. Also, taught formal 10 week class on Apple Pascal. Meetings were held at the computer store owned by Steve Wozniak's brother Mark.
3/1978 thru 9/1978: Programmer/Analyst
Control Data Corp, Sunnyvale, CA
Jen Bryant, Group Manager
keywords: FORTRAN, CDC NOS, CDC Star, supercomputers, operating systems, mainframe
Member of Operating System Group for CDC Star supercomputer. Developed tools in FORTRAN-like language in which O/S was written. Learned structured development methodology and source code control systems.
11/1977 thru 4/1978: Programmer/Analyst
Leon County Schools, Tallahassee, FL
John Pietrowsky, Supervisor
keywords: CDC 6000, KRONOS, FORTRAN, mainframe
Wrote programs to evaluate student and faculty tests and generate reports for the Leon County School system using FSU's CDC mainframe computer.
9/1974 thru 1/1977: Programmer/Analyst
Applications Group, FSU, Tallahassee, FL
Don McEwen, Manager
keywords: CDC 6000, KRONOS, COMPASS, FORTRAN, COBOL, graphics, data processing, education, mainframe, assembler
Designed/implemented applications for clients contracting with the Florida State University computing center in the following areas: Industrial Regression Model, Census Data Processing, Resource Use Projection, Pollution Monitoring Data Processing, Felony Caseload Data Processing, Student Evaluation Data Processing. Taught graphics seminars for FSU computing center.
1/1974 thru 12/1977: Student
Florida State University, Tallahassee, FL
Math/Computer Science, Major
keywords: APL, Basic, CDC 6000, KRONOS, COMPASS, Pascal, FORTRAN, TUTOR, PLATO, compilers, language design, simulation, LISP, SNOBOL, COBOL, education, graphics, mainframe, assembler
Design and implementation of the EXLAX language/compiler used in a numerical analysis class. Implementation of discrete event simulation of queue network. Design/implementation of graphic 3-D maze game on PLATO system. Completed every course offered in the computer science curriculum with a 3.6 GPA. Tutored computer science students for extra money.
Last Revised Monday April 30, 2018