- Senior Android DeveloperAppa Apps Ltd Inc2010 - PRESENT
- Appa Apps Ltd Inc is an independent producer of Android apps for education, with a catalog of over 300 apps designed to teach on tablets. These apps are distributed globally through Google Play, Amazon App Store, Samsung, Huawei and Nokia.
- Developed and maintained the core Java software library used in all of these apps.
- Designed and developed new apps in cooperation with editors at Appa Apps.
- Worked on developing monetization strategies, deploying new apps, maintaining and back loading newly developed capabilities into existing deployed apps and taking apps through the quality assurance procedures at Amazon, Samsung, Huawei and Nokia. Responded to support requests both from distributors and end users.
- Maintained 300+ apps, with over 8 million downloads.
- Developed and maintained 20K lines of Perl code that automated many features of the process of converting the sounds, images, and text into an Android app.
- Made extensive use of Amazon Web Services PaaS to supply the computational capabilities required to compile, package, and deliver our apps.
- Senior Software DeveloperNovosoft Inc.1997 - 2010
- Developed the "Carbon Futures Trading Pricing Options Evaluations Model (CiTyPOEMs)", a Perl system designed to spot arbitrage opportunities in Carbon Rights trading. The CT Model consists of two parts: data extraction and model evaluation.
- The extraction part consists of many Perl scripts using Library for Web Processing (LWP), IO::Socket, and regular expressions to extract data from many corporate and governmental web sites, and then storing this information in a MySQL database.
- The model part makes extensive use of Perl array processing (Perl Data Language - PDL) to evaluate various economic models against the stored data, using Perl/Tk embedded in HTML to display the results of model analysis.
- Each model was written as an object-oriented class, which could be combined with other models using operator overloading.
- Responsible for designing this system to meet the requirements of Economic Analysts, documenting this architecture, writing extraction and modelling scripts, implementing enhancement requests, and training new programmers.
- Originally it had been planned to prototype in Perl and use C++ for production, however, Perl PDL proved to be fast enough. Consequently, I trained two C++ programmers to program in Object Oriented Perl.
- Software Development ManagerNeon Systems Inc1989 - 1997
Technologies: C, Perl IBM OS/390, DB2, CICS, IMS, JCL, SPF
- Neon Systems produced software to connect Personal Computers to IBM mainframe legacy database systems.
- Managed the development of the Dynamic to Static SQL feature of Neon's mainframe connectivity software. Dynamic to Static SQL maps ad hoc dynamic SQL statements originating on PCs into the precompiled static SQL statements preferred by IBM mainframes for the consequent increase in security and performance.
- Responsible for producing the prototype, written in C, and then leading the team of 10 developers that expanded the prototype to work reliably with DB2, Oracle, Sybase to meet the demanding requirements of Neon's Fortune 500 clients.
- Database AdministratorTransAmerica Occidental Life Insurance Company1984 - 1989
Technologies: IBM OS/370 DB2, CICS, IMS, JCL, PLI, SPF
- Designed and built TransRelate: a software to manage the large number of databases used by TransAmerica.
- The TransRelate language allowed database administrators to write scripts to perform common database functions, such as writing the job control statements required to reorganize a database. Previously, these actions had been performed manually.
- Automation produced much more reliable results, allowing TransAmerica to efficiently manage its 1100 databases with minimal staff. TransAmerica eventually sold TransRelate to Compuware Inc., where it continues to this day as XpertDBA.
- TransRelate demonstrated that scripting languages can capture the knowledge and skills of experts in a manner that can be easily maintained by people who are not necessarily highly skilled programmers.
- Systems AnalystArabian American Oil Company1981 - 1984
Technologies: IBM OS/370 CICS, IMS, SPF, PLI, Asm370
- Developed scripts for IBM's Patient Care System, then installed at Aramco's Dhahran Hospital. These scripts were used to capture and display data on each patient, allowing the various medical departments to coordinate patient care.
- Physics ProgrammerJoint European Torus1979 - 1981
Technologies: IBM OS/370 PLI, FORTRAN
- Designed and developed software to simulate the neutral injection systems responsible for heating the fusion plasma to 100 million degrees Centigrade.
- This system included a scripting language which enabled users to enter data about three-dimensional objects in the injection assembly. The software then calculated power deposition on these objects and displayed the results graphically, allowing the design team to evaluate new configurations quickly and cost-effectively.
- The object scripting language proved crucial in providing a logical description of the system that could be widely used without programming support - demonstrating the power of scripting as a means of capturing domain specific knowledge.