Objective

To find stimulating and challenging employment in a cutting-edge computer field where my talents and experience will be useful.

Education

Technical Skills

These selected skills are measured on an idiosyncratic scale of:

Some are annotated with a time scale in years as well.

I've had a long programming career, and I have worked in and been exposed to a wide range of programming languages, paradigms, and environments. Anything that I don't know, I can pick up quickly and without difficulty. What follows is just a selection of the skills that I have used during my career.

Project Skills

Other Skills

Excellent research skills, coupled with extreme curiosity and an insatiable appetite for new knowledge, give me the ability for rapid and extensive self-study of problem domains. I work well independently and especially well as part of a small, tightly-knit team.

Experience (Selected)

Aetion Technologies, LLC Columbus, OH

Senior Software Architect Mar. 2004–Dec. 2009

Primary architect and programmer for long-running multi-million dollar BAA project for Army military intelligence (CERDEC/I2WD). Created (in Java and Haskell) multi-faceted GUI client/server application for intelligence tasking, gathering, integration, and decision support (including enemy course of action (ECOA) prediction), based on the principles of abductive inference and automated planning. Managed programming teams of varying sizes, maintained development infrastructure, created related proposals, white papers, briefings, and project documentation.

Wrote multiple SBIR/BAA contract proposals for various DoD projects in multiple problem domains based on abductive inference, automated planning, decision support, and sound processing.

Created a system (the ‘Seeker’) for automatically distributing expensive computational tasks across a cluster of machines (using PVM) and collating results as part of patented Seeker-Filter-Viewer (SFV) multi-criterial optimization system.

Maintained and improved a number of simulation systems used to support the seeker, including a generic genetic algorithm (GA) library and a compositional modeling and simulation system (CFML) based on equational constraint solving. Created a seeker interface to MATLAB Simulink as part of SFV-based system to optimize hybrid drive trains for large military trucks.

Created GA-based system for network disruption simulation and optimization (for Army Research Lab (ARL)).

Participated in design decisions for other core company technologies and additional projects for agencies including DARPA and AFRL.

Genworks International West Bloomfield, MI

Senior Staff Engineer Nov. 1999–Feb. 2002

Designed and implemented (in Lisp/ICAD) KBE application with novel method for optimization of the shipment packaging of car hoods and trunk lids, including implementation of algorithms for collision detection and Delaunay triangulation/mesh approximation of B-Spline surfaces. (Contract for Ford Motor Co.)

Worked on ICAD KBE geometric modelers for the design of sheet-metal parts for hoods, trunk lids, and doors. As part of that work, I was responsible for the maintenance and further development of the library of primitive geometric operations upon which the rest of the group depended. This library included constraint solving parts, as well as complicated blending operations. (Contract for Ford Motor Co.)

Developed and maintained a Lisp development infrastructure, which integrated the Lisp environment into CVS, and automated builds. I was also responsible for coordinating the world-wide electronic distribution of Lisp applications. (Contract for Ford Motor Co.)

Designed and implemented a Lisp/MySQL interface as part of an enhancement of a Lisp-based Domain Specific Embedded Language (GDL/GWL) for demand-driven evaluation, knowledge-based engineering, and database-backed web applications. Also implemented a clone of Yahoo! Calendar using this toolkit.

Designed and implemented C++/Lisp foreign function interface (FFI) to portions of popular commercial NURBS modeling library (SMLib). (Contract for Genworks Intl.)

New York University New York, NY

Junior Research Scientist Jan. 1996–Aug. 1997

Collaborated on DARPA joint university/industrial research project for design of Automatic Target Recognition system (MSTAR) for synthetic aperture radar (SAR). Implemented (in C++) geometric hashing module.

Collaborated on research in the Ultracomputer Group at the Courant Institute of Mathematics Sciences (CIMS). Implemented (in C++) parts of simulator for the Ultracomputer, including the Floating Point Unit and Memory Cache System.

Created preliminary design of educational software for interactively teaching high school geometry.

Auto Digest, USA Ann Arbor, MI

Interim Editor Jul. 1995–Aug. 1995

Edited daily Japanese-language automotive newsletter, faxed to Japanese automotive executives in the US and Japan. Selected and digested relevant articles from major news sources. Interfaced with translator.

MIT Cambridge, MA

Undergraduate Researcher Jul. 1993–Oct. 1995

At the Laboratory for Computer Science (now CSAIL), Computation Structures Group (CSG), designed code generator for transparent data parallel extension to the compiler for the parallel functional language Id (a predecessor of Haskell), targeting the *T dataflow architecture.

Publications (Selected)

Websites

www.catamorphism.net
Designed and implemented the Functional Programming Bibliography, a database-backed, web-based bibliographic server (in Haskell) which allows searching and displaying references to academic papers related to functional programming. (Created and maintained by myself.)
www.howlonghasitbeensince.com
Designed and implemented a simple landing site for an iPhone utility application, showing screenshots corresponding to various use cases. (Designed for Aetion Technologies, LLC.)

References

Mark Carroll Co-founder and CTO, Aetion Technologies
James is an accomplished software developer with diverse experience, able to design and implement complex, novel software applications from the ground up. His intelligence and abstract reasoning skills give him formidable ability to apply his eclectic background knowledge to rapidly analyze new problems, and his solutions are effected to high standards. I have found him a valuable and agreeable colleague; given the opportunity, I would be very glad to work with him again.

Recreations (And Fun Facts)

Voracious Reader
I read a lot. I have a wide range of interests and an extensive library covering history, linguistics, anthropology, programming, and much else. A portion of my library is catalogued at LibraryThing.
Indifferent Musician
I'm not a particularly good musician, but I love to play, especially bass, which is the only instrument that I'm really good at. I have amassed a haphazard collection of inexpensive string and wind instruments.
Former Math Whiz
When I was younger, I regularly placed near the top of statewide math competitions. I'm also really, really good at standardized tests. My GRE score was 720/800/800.