I bring excellence in design, development, delivery, and business positioning of software systems to the task at hand. My experience comes from the profit and non-profit sectors, and is domestic and international.
Since 2013, I have been at University of Richmond, where I have developed professional software systems that are written in Python 3 for Linux, using Oracle and SQLite as databases.
Beginning in 2021, I now work in the Office of the Provost to support and evangelize high performance computing in support of data sciences and research.
My daily environment for the past seven years: developing and supporting enterprise software written in Python 3, on Redhat Enterprise Linux, using Oracle 11, 12, and 19, SQLite3, pandas, and git. Significant, material, recent, and relevant expertise in operating system internals, parallel processing, and interprocess communication. Solid working knowledge of several post-graduate math and computer science topics.
Native speaker of English. Proficient reader of Spanish technical materials. Less proficient with fiction and newspapers.
2013-present, University of Richmond, Computer Scientist, Senior Programmer.
In 2013 I designed, evangelized, wrote, and put into production the replacement system for University of Richmond's password management infrastructure. UR's systems include Banner, OnBase, Raiser's Edge.
In 2014 I began the automation of the FERPA and HIPAA data feeds for our 30+ external vendors. The new ETL system allows ad hoc and scheduled operation, and provides internal stakeholders and our vendors with immediate reports of trouble, and confirmation of success. Each transfer is fully audited and audit-able, and the results are stored in a database for statistical analyses.
In 2016, University of Richmond began to use this system to interchange data between internal systems as well as the external vendors, and it became known as Canøe. In 2018, Canøe was classified as a Tier I business system, and its 170 distinct integrations were recognized as a part of the University's critical infrastructure.
Canøe is entirely written in Python, and uses Oracle 19 and SQLite3 databases. It handles all the encryption and security for the movement of the data, and supports many delivery and retrieval types and destinations, including sftp, Sharefile, Box, AWS S3, Azure, and various flavors of https transports.
In 2021, I joined the Provost Office as a consultant to the faculty involved with Data Analytics and Data Science.
2002-2012, Digital Gaslight, Inc., Richmond, VA, Owner/CEO.
Fee-for-service software design, development, documentation and deployment. Of special interest:
2000, 2002-2004, Virginia Commonwealth University, Richmond, VA,
1998 - 2001, Capital One Bank, Richmond, VA, Manager of the Program Office for eCommerce.
Vendor selection and evaluation, project management of international contracts, cooperative research with universities. Vendor relationships were sought and managed. Went to India to set up the bank's offshore software development in Bangalore. The Program Office for eCommerce was responsible for all non-credit card financial products, and my direct reports oversaw six to eight concurrent development and research projects.
University of Richmond Data Analytics and Data Science, Faculty Senate Committee.
University of Sydney, Board of External Advisors for Information Technology Program, 2005.
Triton-Elics, Inc. S.A. Watsonville, CA and Paris, France, Board of Directors 1996/7, elected to represent the interests of the plurality shareholder during the merger between Triton USA and Elics of France.
User authentication system and method, US 7,725,712 issued 25 May 2010. This patent is for an algorithm that improves the usefulness of one-time-pad cryptography in authentication systems. OTP encryption for authentication is weakened because OTP cryptography relies on both the pad's lack of reuse, and the lack of a repeated message. This algorithm injects noise into the encryption process to mitigate this weakness.
When Data Integrations Fail -- A Case Study of Causes and Repairs, MABUG 2017, Virginia Tech, Blacksburg, VA
Corral: Bringing non-Oracle applications into the fold, Southeast Oracle User Conference, Charlotte, USA, Feb 2010.
Managing IT Professionals, DAMA International, Los Angeles, 2005.
Doing Active Harm, Patterns of Process, Chaos, and Anti-process in IT, University of Sydney, March 2005. An earlier version of the presentation as a PDF
Patterns of Creativity in Software Development, Music and Film, OOPSLA, Seattle, USA, November 2002.
Keynote address for Software Methods and Tools, 2000 Methodologies versus Madness, Project Management in the 21st Century, Sydney Australia, 2000.
Finding the Hidden Assumptions: Analyzing Psychologically Based Requirements for Software Engineering, Australasian Conference on Requirements Engineering Sydney, Australia, September 1999.
Of Windows, Widgets, and Wings, The Search for Cross Platform UI Devices, First International Conference on Visual Information Systems, Melbourne, Australia, 1996.
Human Factors in the Design of the LaserJet 4, CHI 93, Canberra, Australia, 1993.
Cover Story Doing It: A Safe Software Reuse Project in C++, C++ Report, January 1995, cover, and pp. 22-26. Scanned image.
PyRVA (Python User Group), Richmond, Virginia, 2016 -- present. Organizer from August 2016 - April 2019, Member from May 2019 - present.
Try-me Art Space, Richmond, VA 2009 -- present. Technology advisor: Photography of the museum, and maintenance of the art database shared between Try-me, Émilie Charmy and Oscar Bach collections.
Cat's Cradle of Greater Richmond, Ashland, VA, 2010 -- present. Technology advisor
Diogenes Club, London, UK, 1899 -- present. Member in Good Standing: Unus Inter Pares (One Among Equals), Coffee, Tea, Alcohol, & Silence.