A computing professional with a Ph.D. in Computer Science and Economics and 7 years of commercial software development experience. Experience managing software development teams. Co-inventor of patent-pending distributed data synchronization protocol and distributed bandwidth allocation protocol. Currently pursuing postdoctoral research at Microsoft Research's New York City lab, with a focus on data science in the context of economic choice.
Postdoctoral research at the intersection of behavioral economics and computer science, with a focus on data science in the context of economic choice.
Developed and maintained the content-distribution component for a distributed grid storage application using multithreaded C++, boost, MySQL, TCP/IP, and SSH under Linux.
Worked in Java, Eclipse, antlr, and a Haskell-like language. Project details are covered by a Non-Disclosure Agreement.
As below (Software Developer), plus:
Supervised day-to-day development of the Silicon Chalk application by a team of 4-9 developers. Prioritized and triaged feature requests for each release. Devised, tracked, and revised development schedules. A primary architect for the overall application.
Designed, implemented, and maintained C++ COM components for a component-based peer-to-peer wireless application. Wrote and debugged code for Silicon Chalk's heavily multithreaded and asynchronous architecture.
Designed and implemented Silicon Chalk's networking layer based on UDP broadcast and multicast. This layer was targeted for 802.11 wireless Ethernet adapters running under Windows XP and 2000.
Devised and implemented standards and processes for source-control usage, bug tracking, and build/release management.
Designed, implemented, and maintained internal Web-based time tracking, bug tracking, and test-case tracking systems, plus a custom build system for roughly 300 COM objects and several custom build steps. Installed and maintained CVS server on both Windows 2000 and FreeBSD.
Developed, tested, and debugged an online educational system using JSP, Java servlets, and Flash. Developed database access Java Beans for use by JSP pages of the educational system. Administered test servers running JRun and Netscape Enterprise Server. Debugged and developed new features for a media gallery user interface for the Macintosh platform using C++ and PowerPlant.
Developed a time reporting system in Java using Swing user interface library and JDBC database. Designed relational database layout for time reporting system.
Designed algorithm for experimental multiple-vehicle scheduling system. Implemented the specified scheduling system in C++. Integrated scheduling system with graphical user interface. Optimized scheduling system for greater speed.
Wrote a plug-in module in Visual C++ for Windows and CodeWarrior for Macintosh to integrate existing code with Adobe InDesign's desktop publishing API. Extensively modified existing C++ code to increase stability, add features, and improve user interface on both the Macintosh and Windows NT/98 platforms. Maintained a cross-platform code base using CVS and Visual SourceSafe.
Devised efficient algorithms to solve problems in theoretical computing science, particularly in the area of Graph Theory. Gained exposure to academic/research environment.
Ensured that Safeway's mainframe software systems continued to meet current business needs by maintaining and updating batch and interactive report-generation programs for a very large DB2 database using COBOL and SQL. Used precompiler "Explain" reports to optimize new and existing database queries for performance.
Dissertation: Modeling Human Behavior in Strategic Settings.
Honorable Mention for the ACM-EC Dissertation Award.
Was the top Computing Science student in graduating class.
Received Open Scholarship (recognizes academic excellence) and Tadeusz Specht Memorial Scholarship in Science.
Took third year Information Systems as exchange student at UEA.
Commercial experience in the following:
Linux, Windows 98/2000/XP, MacOS
Boost, Win32, COM/ActiveX, TCP/IP, UDP/IP, Microsoft Installer, Java servlets
MySQL, Microsoft Access, Oracle, DB2