Staff Engineer2018 - 2019Blockchain.com
- Worked on the front-end team for the Web Wallet, the world’s most popular cryptocurrency wallet (with 44 million wallets and $200 billion transacted).
- Designed and implemented a new, high-security architecture to protect the wallet against attacks via open source dependencies.
- Employed sandboxing and object capabilities models to reduce the exposure of the most valuable information assets (wallet seed and user password) to open source dependencies.
- Created a seamless user interface experience with minimal UI/UX changes to support the architecture.
- Wrote design and developer education documentation and gave a presentation about the new architecture for the rest of the team.
Software Engineer2018 - 2018Tendermint
- Worked on Voyager, the graphical user interface for navigating the Cosmos "Internet of blockchains" network.
- Wrote a threat model document for this security-sensitive application responsible for tokens with monetary value.
- Made the build process deterministic to enable greater security via reproducible builds.
- Introduced contract tests to code and gave a presentation to the team about test writing best practices.
- Implemented new features using modern web technologies.
Software Engineer2015 - 2017Monax
- Implemented a prototype lab with mock versions of our stack components for testing architectural design hypotheses economically, enabling architectural conversations to be grounded in evidence.
- Designed Eris Worker, a distributed computation framework designed to support autonomous operations on blockchains.
- Set up an automated continuous delivery system for testing and publishing our software stack.
Co-founder2010 - 2013The Productivity Game
- Co-founded a personal productivity coaching business.
- Designed personal productivity methodology and coached clients one-on-one on how to use the method.
- Created a simple productivity timer for time boxing and to synchronize coordinated action between team members.
- Wrote an open source library (ServerDate) to implement multi-client timer synchronization.
- Created a prototype promise management system in Node.js using MongoDB and Express.
Business Consultant2007 - 2009Authentic Man Program
- Assembled a board of advisors to provide guidance to the company's strategic mission.
- Facilitated strategy sessions with business owners to define and clarify the company vision and mission.
- Created and led customer outreach teams to increase sales.
- Managed facilities. Hired and managed an operational assistant and bookkeeper.
- Created customer satisfaction surveys to obtain market feedback on company offerings.
Co-founder2006 - 2007TGND Corporation
Technologies: Ruby on Rails
- Co-founded a company with a mission to create price-comparison shopping internet sites for niche markets.
- Hired and managed two software engineers to create a prototype using Ruby on Rails.
- Worked with a lawyer, an accountant, and an internal marketing employee on the big picture of the business.
- Created "virtual company" infrastructure allowing the entire company to run on the internet, requiring no office space.
Software Engineer2002 - 2003Handspring
Technologies: C, C++, Qt, Palm OS
- Enabled third parties to create software for our products by maintaining and publishing the Palm OS software development tools.
- Created software tools and wrote documentation to support internal application developers to operate more effectively and efficiently.
- Took initiative to support compatibility with open source software for our products by providing leaders of the community with technical documentation and hardware.
- Initiated a proposal and partnered with a PR executive to design a more ethical customer outreach program to prevent harm to the company's reputation.
- Wrote a technical report and gave a presentation about the costs and benefits of upgrading the Palm OS development platform to support C++ in addition to C.
Software Engineer1997 - 1998NetStudio Corporation
Technologies: C++, Microsoft Windows
- Co-founded the company with a vision to create a pioneering consumer application for web graphics authoring, emphasizing ease of use.
- Brought a NetStudio product successfully to market with recognition and was awarded "Best of Show" at the Internet World conference.
- Led and defined the software development process, including feature specification and coding standards.
- Architected the product engine in C++. Defined the major subsystems and their interactions.
- Created runtime class inheritance system in C++ to implement user-modifiable effects.
- Created a smart-pointer API to support transaction-based infinite undo and redo.
- Created a runtime diagnostic tool that generated a view of a high-level internal program state in HTML.
Software Engineer1995 - 1997Brøderbund Software
Technologies: C++, Microsoft Windows, HTML
- Designed and implemented the artificial intelligence component of a real-time strategy game in C++.
- Brought to market French and German versions of a desktop application (Carmen Sandiego Junior Detective Edition) by providing translation support engineering.
- Recognized and rewarded with the Intellectual Capital Award for innovation and realization of ideas contributing to the company's success.
- Gave a technical talk on how to author web pages using the new HTML technology.
- Wrote a proposal to implement the company wide continuous integration system.
Software Engineer1989 - 1995Center for Advanced Medical Informatics at Stanford University
Technologies: Common Lisp, PenPoint OS, PostScript
- Developed a pen-based user interface for Ivory, a patient data entry program, in PenPoint, a pen-based operating system.
- Wrote PostScript-generating code in Common Lisp for reports created by Oncocin, a cancer patient treatment expert system.
- Researched different aspects of a pen-based computing user interface as part of an overall effort to make computers more accessible to doctors.
- Set up an experimental wireless network to be used for mobile computing in a hospital.
- Wrote a GIF codec in Common Lisp.