<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE resume PUBLIC "-//Sean Kelly//DTD Resume 1.5.1//EN"
  "dtd/resume.dtd">
<resume>
  <header>
    <name>
      <firstname>Kaolin</firstname>
      <surname>Fire</surname>
    </name>
    <contact>
      <email>kaolin.fire@erif.org</email>
      <phone type="cell">510 919-4966</phone>
    </contact>
  </header>

	<objective>
		<para>I thrive on brainstorming back-of-napkin ideas and turning them into visceral reality, teasing out what works and doesn't. I want to work on something that will change the world for the better, either in some small way pervasively or by some fundamental shift.</para>
	</objective>


  <skillarea>
    <title>TL;DR:</title>
    <skillset>
      <title>Github</title>
      <skill><url>https://github.com/kaolin/</url></skill>
    </skillset>
    <skillset>
      <title>Stack Overflow</title>
      <skill><url>http://stackoverflow.com/users/856925/kaolin-fire</url></skill>
    </skillset>
    <skillset>
      <title>Apple App Store</title>
      <skill><url>https://itunes.apple.com/us/developer/kaolin-fire/id506161943</url></skill>
    </skillset>
    <skillset>
      <title>Google Play Store</title>
      <skill><url>https://play.google.com/store/apps/developer?id=kaolin+fire</url></skill>
    </skillset>
      <!--
    <skillset>
      <title>Other Apps I've Written</title>
      <skill>TextDetective: <url>https://itunes.apple.com/us/app/textdetective/id541494875?mt=8</url></skill>
      <skill>MagniFire: <url>https://itunes.apple.com/us/app/magnifire/id589564315?mt=8</url></skill>
      <skill>Saintify: <url>https://itunes.apple.com/us/app/saintify/id608804799?mt=8</url></skill>
    </skillset>
      -->
  </skillarea>
  <academics>
    <degrees>
      <degree>
        <level>BS</level>
        <major>Electrical Engineering/Computer Science</major>
        <annotation>Focus in Bioelectrical Engineering.  Core courses included digital design, signal processing, bioelectrical interfacing, algorithms, and system modeling.</annotation>
        <institution>University of California, Berkeley</institution>
        <period>
          <from><date><year>1995</year></date></from>
          <to><date><year>2000</year></date></to>
        </period>
        <location>
          <city>Berkeley</city>
          <state>California</state>
          <country>USA</country>
        </location>
      </degree>
    </degrees>
  </academics>
  
  <skillarea>
    <title>Skills 4.0 [2025+]</title>
    <skillset>
      <title>GenAI</title>
      <skill>LDM Prompting (midjourney, flux, emu)</skill>
      <skill>LLM Prompting (llama, gemini, chatgpt)</skill>
      <skill>Code Prompting (claude code)</skill>
      <skill>Creative Enablement</skill>
    </skillset>
    <skillset>
      <title>Languages</title>
      <skill>(Claude Code)</skill>
      <skill>JS (React, React Native)</skill>
      <skill>Python</skill>
      <skill>C</skill>
      <skill>GDScript</skill>
    </skillset>
    <skillset>
      <title>Software Development</title>
      <skill>Product Development and Management</skill>
      <skill>Process Definition</skill>
      <skill>Architecture Definition and Review</skill>
    </skillset>
    <skillset>
      <title>Software</title>
      <skill>Photoshop</skill>
      <skill>Xcode</skill>
      <skill>Godot</skill>
      <skill>vi/vim</skill>
    </skillset>
    <skillset>
      <title>Operating Systems</title>
      <skill>OS X</skill>
      <skill>Linux (Ubuntu)</skill>
    </skillset>
  </skillarea>
<!--
  <skillarea>
    <title>Skills 3.2 [2020+]</title>
    <skillset>
      <title>Languages</title>
      <skill>Python/Jupyter</skill>
      <skill>Objective C/C++/C/C#</skill>
      <skill>Swift</skill>
    </skillset>
    <skillset>
      <title>Language Toolkits</title>
      <skill>OpenCV</skill>
      <skill>Dlib</skill>
      <skill>sklearn</skill>
      <skill>celery</skill>
      <skill>flask</skill>
      <skill>requests</skill>
      <skill>pandas</skill>
    </skillset>
    <skillset>
      <title>Software Development</title>
      <skill>Product Development and Management</skill>
      <skill>Process Definition</skill>
      <skill>Architecture Definition and Review</skill>
      <skill>Computer Vision/Machine Learning</skill>
      <skill>CI/CD (Jenkins)</skill>
      <skill>git</skill>
    </skillset>
    <skillset>
      <title>Databases</title>
      <skill>PostgreSQL</skill>
      <skill>MySQL</skill>
      <skill>sqlite</skill>
      <skill>cassandra</skill>
      <skill>redis</skill>
    </skillset>
    <skillset>
      <title>Software</title>
      <skill>Adobe Photoshop</skill>
      <skill>Xcode</skill>
      <skill>Unity</skill>
      <skill>vi/vim</skill>
    </skillset>
    <skillset>
      <title>Operating Systems</title>
      <skill>OS X</skill>
      <skill>Linux (Ubuntu)</skill>
    </skillset>
    <skillset>
      <title>Cloudstuff</title>
      <skill>kubernetes</skill>
      <skill>docker</skill>
      <skill>ec2/gcp</skill>
    </skillset>
  </skillarea>

-->
  <!--
  <skillarea>
    <title>Skills 3.0 [2010-2015]</title>
    <skillset>
      <title>Languages</title>
      <skill>Objective C/C++/C</skill>
      <skill>Python</skill>
      <skill>AS3</skill>
    </skillset>
    <skillset>
      <title>Language Toolkits</title>
      <skill>Cocos2d</skill>
      <skill>OpenCV</skill>
    </skillset>
    <skillset>
      <title>Programming</title>
      <skill>Product Development</skill>
      <skill>Algorithms</skill>
      <skill>Object Oriented Design</skill>
      <skill>Computer Vision</skill>
      <skill>Probabilistic Graphical Models</skill>
    </skillset>
    <skillset>
      <title>Databases</title>
      <skill>PostgreSQL</skill>
      <skill>MySQL</skill>
    </skillset>
    <skillset>
      <title>Software</title>
      <skill>Adobe Photoshop</skill>
      <skill>Xcode</skill>
      <skill>vi/vim</skill>
    </skillset>
    <skillset>
      <title>Server Software</title>
      <skill>git</skill>
      <skill>svn</skill>
      <skill>bash/tcsh</skill>
    </skillset>
    <skillset>
      <title>Operating Systems</title>
      <skill>OS X</skill>
      <skill>FreeBSD</skill>
    </skillset>
  </skillarea>
  -->
  <!--
  <skillarea>
    <title>Skills 2.0 [2005-2010]</title>
    <skillset>
      <title>Languages</title>
      <skill>AS3/Flex</skill>
      <skill>C/C++/Objective C</skill>
      <skill>SQL</skill>
      <skill>PHP</skill>
      <skill>JavaScript</skill>
      <skill>HTML/xHTML</skill>
      <skill>CSS</skill>
      <skill>Python</skill>
    </skillset>
    <skillset>
      <title>Language Toolkits</title>
      <skill>OpenGL</skill>
      <skill>OpenAL</skill>
    </skillset>
    <skillset>
      <title>Programming</title>
      <skill>Algorithms</skill>
      <skill>Object Oriented Design</skill>
      <skill>E-commerce</skill>
      <skill>Cross-platform development</skill>
      <skill>XML</skill>
    </skillset>
    <skillset>
      <title>Databases</title>
      <skill>MySQL</skill>
    </skillset>
    <skillset>
      <title>Software</title>
      <skill>Adobe Photoshop (8-CS2)</skill>
      <skill>vi/vim</skill>
    </skillset>
    <skillset>
      <title>Server Software</title>
      <skill>BIND</skill>
      <skill>Apache httpd</skill>
      <skill>varnish</skill>
      <skill>postfix</skill>
      <skill>svn</skill>
      <skill>mailman</skill>
      <skill>bash/tcsh</skill>
    </skillset>
    <skillset>
      <title>Operating Systems</title>
      <skill>Linux (Fedora)</skill>
      <skill>FreeBSD</skill>
      <skill>Dos/Windows</skill>
      <skill>OS X</skill>
    </skillset>
  </skillarea>

  <skillarea>
    <title>Skills 1.0 [1995-2005]</title>
    <skillset>
      <title>Languages</title>
      <skill>Java</skill>
      <skill>JSP/Servlets</skill>
      <skill>JDBC</skill>
      <skill>Perl</skill>
      <skill>Lisp/Scheme</skill>
      <skill>Motorola 6510 Assembly</skill>
      <skill>MIPS</skill>
      <skill>LaTeX</skill>
    </skillset>
    <skillset>
      <title>Language Toolkits</title>
      <skill>GLUT</skill>
      <skill>MFC</skill>
      <skill>DirectDraw</skill>
      <skill>GTK+</skill>
      <skill>SVGAlib</skill>
    </skillset>
    <skillset>
      <title>Programming</title>
      <skill>Patterns &amp; Antipatterns</skill>
      <skill>i18n</skill>
    </skillset>
    <skillset>
      <title>Databases</title>
      <skill>PostgreSQL</skill>
      <skill>SQL Server</skill>
      <skill>Access</skill>
      <skill>mSQL</skill>
    </skillset>
    <skillset>
      <title>Software</title>
      <skill>Blender</skill>
      <skill>Gimp</skill>
      <skill>make/ant</skill>
    </skillset>
    <skillset>
      <title>Server Software</title>
      <skill>Resin</skill>
      <skill>Tomcat</skill>
      <skill>Sendmail</skill>
      <skill>CVS/Perforce</skill>
      <skill>bash/tcsh</skill>
    </skillset>
    <skillset>
      <title>Electrical Engineering</title>
      <skill>Embedded devices</skill>
      <skill>Fourier/Laplace/Z transforms</skill>
      <skill>FPGA design</skill>
    </skillset>
    <skillset>
      <title>Operating Systems</title>
      <skill>AIX</skill>
    </skillset>
  </skillarea>
-->
  <interests>
    <interest><title>Neuroelectrical Engineering</title>
      <description><para>This includes neurochemistry, biology, electrical engineering, interfacing, artificial intelligence, theories of consciousness, chaos theory, and all things related.</para></description>
    </interest>
    <interest><title>"The Arts"</title>
      <description><para>I enjoy painting (generally abstract/surreal), and writing fiction and poetry. I run a few writing-related sites and published an award-winning magazine of literary + genre fiction, poetry, and art.</para></description>
    </interest>
    <interest><title>Gaming</title>
      <description><para>I develop the odd computer game on the side: desktop (Win/OSX/linux), Flash, and iPhone. That's generally how I sit down to learn a new language, platform, or technology, if I don't already have a problem defined for me.</para></description>
    </interest>
  </interests>

  <misc>
    <para>Excellent communication and problem-solving skills, with a strong ability to adapt to the situation at hand.</para>
    <para>Specialties include (but are not limited to) database interfaces, creating data channels between heterogeneous systems, quickly evaluating and learning new technologies, and designing systems that run themselves.</para>
    <para>Many years of experience using and administering a wide range of computer platforms.</para>
    <para>Well-rounded person with an eclectic set of interests, ideas, and hobbies; I add personality and depth to any situation.</para>
    <para>Favorite words include: context, perspective, and scale.</para>
  </misc>

  <history>
    <job>
      <jobtitle>Staff Engineer</jobtitle>
      <employer>Facebook/Meta</employer>
      <location>
        <city>Menlo Park</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>October</month><year>2020</year></date>
        </from>
        <to>
          <present />
        </to>
        <!--
        <to><present /></to>
        -->
      </period>
      <achievements>
        <achievement>NPE (New Product Experimentation) - full stack product development - built React Native (iOS + Android) apps backed by Firebase, Python, Hack/GraphQL, and React, rapidly prototyping new products to find product-market fit.</achievement>
        <achievement>NPE - firefighting tour - served as the expert who could jump into any stuck project and take it to the finish or own key deep technology, ranging from mapping to bridging heterogeneous CMS systems.</achievement>
        <achievement>NPE - product pitching - pitched a handful of apps; one was release-ready when NPE was shuttered and moved with me into the GenAI org.</achievement>
        <achievement>GenAI - product exploration - explored Meta's latest research models to find novel product ideas focused on creativity and expression, deep prompting, exposing model features, and rapid product development.</achievement>
        <achievement>GenAI - MovieGen "October moment" - designed and built the system that allowed MovieGen to ramp up tens of thousands of videos, enabling dozens of artists and content engineers to prompt the model, learn the system, and feed insights back to research; credited on the MovieGen paper.</achievement>
        <achievement>GenAI - autonomous content generation - built out an autonomous content generation team that culminated in the "Vibes" Meta AI launch.</achievement>
        <achievement>GenAI - training data frontier - currently pushing the frontier of the kinds of data we can generate to train frontier models.</achievement>
        <achievement>IP - multiple patents submitted.</achievement>
      </achievements>
    </job>

    <job>
      <jobtitle>Principal Architect</jobtitle>
      <employer>Grabango</employer>
      <location>
        <city>Berkeley</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>June</month><year>2018</year></date>
        </from>
        <to>
          <date><month>April</month><year>2020</year></date>
        </to>
        <!--
        <to><present /></to>
        -->
      </period>
      <achievements>
        <achievement>Business - discovered a disconnect in system expectations between engineering and leadership, pitched novel solutions, and helped the business understand the disconnect such that they could realign their own and customer expectations and shift the product roadmap.</achievement>
        <achievement>Core technology - saw a failure in hardware expectations, dug into failure modes, developed a system to characterize and triage hardware prior to installation; worked with third-party contractors to further improve process and recoup investment.</achievement>
        <achievement>Core technology - developed a novel solution for sensor extrinsics determination; worked with third-party contractors to build out the interface to decrease development time.</achievement>
        <achievement>Core technology - delved into networking and SPI interfaces to assist debugging custom hardware; managed burn-in testing and evaluation.</achievement>
        <achievement>Process - product specifications - defined a template for product and project specification to standardize expectations and expose miscommunication.</achievement>
        <achievement>Process - mentoring - mentored junior and senior engineers towards better software definitional processes and understanding of business, product, and engineering needs.</achievement>
      </achievements>
    </job>

    <job>
      <jobtitle>Principal Architect / Director of Research / Director of iOS / Subverter of Product</jobtitle>
      <employer>DITTO</employer>
      <location>
        <city>San Francisco</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>June</month><year>2016</year></date>
        </from>
        <to>
          <date><month>June</month><year>2018</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Core technology - face-shape based recommendations - dug into data and metrics, expanded ground truth meaningfully, defined the necessary targets and methodology for achieving same.</achievement>
        <achievement>Core technology - scaling - dug into technology stack to fix egregious errors in a new scaling technology, defined processes for evaluating and roadmap for creating tools and addressing issues.</achievement>
        <achievement>DITTO iOS SDK - theater - translated an adobe after effects video into a data-driven API and consumer-facing CoreGraphics animation.</achievement>
        <achievement>DITTO iOS SDK - vto + iq - directed and implemented core functionality for iOS interface to virtual-try-ons, theater, and recommendations.</achievement>
        <achievement>Various enterprise/partner iOS apps - defined, executed and/or managed execution of a handful of bespoke and white-labeled in-store apps and technology demo apps.</achievement>
        <achievement>Process - product specifications - defined a template for product and project specification to standardize expectations, change management, sign-off, and releases.</achievement>
        <achievement>Process - artefacted releases and gitflow - helped drive definition and adoption of git branching strategy and repeatable/documented/tagged releases, as well as semantic versioning.</achievement>
        <achievement>DITTO js SDK - principal architect of major refactor focusing on ease of client customization/implementation and simplification/separation of technology stack.</achievement>
        <achievement>Process - implemented CI for iOS SDK and several iOS products.</achievement>
      </achievements>
    </job>

    <job>
      <jobtitle>SDE III</jobtitle>
      <employer>A9</employer>
      <location>
        <city>San Francisco</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>April</month><year>2014</year></date>
        </from>
        <to>
          <date><month>June</month><year>2016</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Architected, prototyped, designed, and implemented portions of&#8212;and managed a small team implementing the rest of&#8212;a city-scale data acquisition project (Python, C++, Objective-C, PostGreSQL, computer vision, UX).</achievement>
        <achievement>Advised/mentored/assisted the building of supporting tools for same, and building them out for other projects (Python, Flask, SQLAlchemy, PostGreSQL, js).</achievement>
        <achievement>Presented two posters and a talk at successive internal computer vision conferences; chaired another set of talks at same. (Keynote, UX).</achievement>
        <achievement>Implemented several prototype apps for exploration of UX and technical ideas (Photoshop, UX, Objective-C).</achievement>
      </achievements>
    </job>

    <job>
      <jobtitle>VP of Products</jobtitle>
      <employer>Blindsight</employer>
      <location>
        <city>Berkeley</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>September</month><year>2012</year></date>
        </from>
        <to>
          <date><month>April</month><year>2014</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Guided development on an increasing array of products (Objective C/C/C++, Photoshop, UX).</achievement>
        <achievement>Wrote and submitted grants to the NIH and NSF; developed an academic poster as well as a Google Talk (Keynote).</achievement>
       </achievements>
    </job>

    <job>
      <jobtitle>Senior Software Engineer</jobtitle>
      <employer>Blindsight</employer>
      <location>
        <city>Berkeley</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>September</month><year>2011</year></date>
        </from>
        <to>
          <date><month>September</month><year>2012</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Turned a decade of research into a real product on the App Store; drove UX for accessibility and "curb appeal"; product has received rave reviews from the blind community (Objective C/C++, Photoshop).</achievement>
        <achievement>Developed a number of iOS proof-of-concept apps and research tools for internal use and to promote the technologies involved to interested parties (Objective C/C++).</achievement>
        <achievement>Designed and implemented a "ground truth data system" for collecting and annotating data to help train our algorithms against (Python, CherryPy, Postgresql, Octave).</achievement>
        <achievement>Defined a simple and efficient clustering algorithm for a key tier of our text detection algorithm.</achievement>
       </achievements>
    </job>

    <job>
      <jobtitle>Senior Software Engineer</jobtitle>
      <employer>510 Systems</employer>
      <location>
        <city>Berkeley</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>June</month><year>2010</year></date>
        </from>
        <to>
          <date><month>August</month><year>2011</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Maintained and extended company's flagship software (git, C++, cmake, Qt).</achievement>
        <achievement>Developed a proof-of-concept server for GIS-related information (python).</achievement>
        <achievement>Instigated, developed and maintained a company-wide database of information where none had existed; extended with three separate front-ends, with the intention of bringing them together after further exploration (python, php, js, sqlite, cron).</achievement>
       </achievements>
    </job>
    <!--
    <job>
      <jobtitle>Partner</jobtitle>
      <employer link="http://handbrewed.com">Hand Brewed, LLC</employer>
      <location>
        <city>Los Angeles</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>January</month><year>2006</year></date>
        </from>
        <to>
          <date><month>August</month><year>2010</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Managed, architected, and/or developed over fifty projects for a wide variety of client needs/budgets, including:</achievement>
        <achievement>Developed iPhone proof-of-concept-app to integrate with varied data sources over multiple threads.</achievement>
        <achievement>Launched full re-development of valenciaacura.com (custom content management system, integration with Reynolds &amp; Reynolds inventory system, integration with VINLink VIN detailing system).</achievement>
        <achievement>Launched full re-development of campusbooks.com (custom content management system, custom reporting, ongoing maintenance and extensions of development).</achievement>
       </achievements>
    </job>

    <job>
      <jobtitle>Adjunct Faculty</jobtitle>
      <employer link="http://www.canyons.edu">College of the Canyons</employer>
      <location>
        <city>Santa Clarita</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>August</month><year>2006</year></date>
        </from>
        <to>
          <date><month>May</month><year>2008</year></date>
        </to>
      </period>
      <achievements>
  <achievement>Taught C as an intro-level programming course and C++ as a second-semester course; focused C around procedural code with specific attention to scope, memory management, and problem solving. C++ focused on OO-Design paradigms and using other libraries such as wxWidgets, SDL, and OpenGL.</achievement>
       </achievements>
    </job>
    <job>
      <jobtitle>Programming Manager</jobtitle>
      <employer link="http://centric.com">Centric</employer>
      <location>
        <city>Valencia</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>November</month><year>2004</year></date>
        </from>
        <to>
          <date><month>January</month><year>2006</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Defined a solid and defensible requirements document format; this requirements document enabled clients, designers, and developers all to understand, discuss, and agree upon what was being done.</achievement>
  <achievement>Mentored more junior developers in languages and concepts; Delegated tasks and set timelines.</achievement>
  <achievement>Created a fast and extensible framework for future development that is especially easy for a new developer to come up to speed on; shifted Centric's development paradigm towards fast development of modular, standards-heavy sites that load faster and are simpler and faster to maintain.</achievement>
        <achievement>Managed and developed several key accounts; had a part in redeveloping several sites for Memorex, as well as local organizations and large email campaigns.</achievement>
       </achievements>
    </job>
    <job>
      <jobtitle>Lead Developer</jobtitle>
      <employer link="http://timbuk2.com">Timbuk2 Designs</employer>
      <location>
        <city>San Francisco</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>June</month><year>2003</year></date>
        </from>
        <to>
          <date><month>November</month><year>2004</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Re-architected the business logic of the website so as to integrate it with manufacturing and finance, normalizing information storage.</achievement>
       </achievements>
    </job>
    <job>
      <jobtitle>Freelance Web Developer</jobtitle>
      <employer>Self-employed</employer>
      <location>
        <city>Oakland</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>July</month><year>2002</year></date>
        </from>
        <to>
          <date><month>June</month><year>2003</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Continued to expand on techniques and strategies developed at Pharsight nee Metazoa.</achievement>
        <achievement>Built a string of websites for companies and individuals of disparate taste and requirements.</achievement>
        <achievement>Advised on and maintained legacy code.</achievement>
       </achievements>
    </job>
    <job>
      <jobtitle>Lead Engineer</jobtitle>
      <employer link="http://pharsight.com">Pharsight Corp, formerly Metazoa, Inc.</employer>
      <location>
        <city>San Francisco</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>March</month><year>2000</year></date>
        </from>
        <to>
          <date><month>July</month><year>2002</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Designed an enterprise intranet application and managed a small team of programmers to implement it.  Chose technology platforms and designed product development cycles and documentation standards.  Mentored team members and anyone interested in the technologies involved.</achievement>
        <achievement>Designed and implemented a system for pharmaceutical R&amp;D, with complete auditing, revision control, and user authentication, including design of application and server security, with JSP/servlets and a transactional DB.</achievement>
        <achievement>Maintained and tuned FreeBSD, MySQL, PostgreSQL for optimal performance and security.</achievement>
        <achievement>Maintained/streamlined/refactored old and externally developed code.</achievement>
       </achievements>
    </job>
    -->
    <!--
    <job>
      <jobtitle>System Administrator / Program Analyst</jobtitle>
      <employer>Green Manufacturing Labs @ UC Berkeley</employer>
      <location>
        <city>Berkeley</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>August</month><year>1998</year></date>
        </from>
        <to>
          <date><month>December</month><year>1999</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Maintained, patched, and updated a Windows NT network combined via Samba with AIX and Irix machines.</achievement>
        <achievement>Debugged/mentored software development by various graduate students.</achievement>
        <achievement>Redesigned and automated aspects of the group's website.</achievement>
      </achievements>
    </job>
    <job>
      <jobtitle>Software Architect/Developer</jobtitle>
      <employer>Simplexity.Com, formerly TalkingOnAir</employer>
      <location>
        <city>Sunnyvale</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <date><month>November</month><year>1999</year></date>
      <achievements>
        <achievement>Revamped the back-end customer information and checkout process.  Created an engine for handling generic tasks out of a database which made the process infinitely extensible and mutable.</achievement>
        <achievement>Implemented the previous system (with tweaks to streamline the customer experience).</achievement>
        <achievement>Documented new system for hand-off to on-staff sysadmin for maintenance.</achievement>
      </achievements>
    </job> 
    <job>
      <jobtitle>Lecturer</jobtitle>
      <employer link="http://cs.umu.se">Computer Science Department @ University of Umea</employer>
      <location>
        <city>Umea</city>
        <country>Sweden</country>
      </location>
      <period>
        <from>
          <date><month>May</month><year>1999</year></date>
        </from>
        <to>
          <date><month>August</month><year>1999</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Lectured off of a skeletal curriculum for two levels of students: an introduction to programming via Java, and for graduate students/professors an intensive course which provided as much detail as could be reasonably assimilated for the duration of the course.</achievement>
      </achievements>
    </job>
    <job>
      <jobtitle>Intern</jobtitle>
      <employer>NovoMedia</employer>
      <location>
        <city>San Francisco</city>
        <state>California</state>
        <country>USA</country>
      </location>
      <period>
        <from>
          <date><month>November</month><year>1995</year></date>
        </from>
        <to>
          <date><month>December</month><year>1996</year></date>
        </to>
      </period>
      <achievements>
        <achievement>Automated an inter-office newscasting system between Toyota and NovoMedia</achievement>
        <achievement>Created scripts to run a voting booth for Toyota's website</achievement>
      </achievements>
    </job>
    -->
    <job>
      <jobtitle>Software Architect/Developer</jobtitle>
      <employer>(personal projects)</employer>
      <period>
        <from><date><year>1998</year></date></from>
        <to><present /></to>
      </period>
      <achievements>
        <!--<achievement><emphasis>(2001-2004)</emphasis> <emphasis>NFG</emphasis> (http://nfg.ca) is a fiction/poetry/art magazine for which I developed and maintain the infrastructure/website.  The website helps staff from several countries/continents communicate with each other and artists, and allows for extensive targeted document managemenet with the submissions.</achievement>-->
        <achievement><emphasis>(2026)</emphasis> <emphasis>spacetags</emphasis> (<url>https://spacetags.app</url>) macOS utility that overlays floating, color-coded labels on each Space, making workspace switching legible without a tiling window manager. Uses private Space-identification APIs for durable per-Space binding. Written in Swift.</achievement>
        <achievement><emphasis>(2026)</emphasis> <emphasis>izzit</emphasis> (<url>https://izzit.app</url>) Cross-platform daily drawing game: sketch a single word prompt, Gemini grades it in ~2 seconds, earn tier-ranked trading cards. iOS + Android, written in Swift and Kotlin.</achievement>
        <achievement><emphasis>(2016-)</emphasis> <emphasis>Timeful</emphasis> (<url>https://erif.org/timeful/</url>) iOS mindfulness/time-awareness app that counts the minutes aloud — designed for ADHD, meditation, and time blindness. Timer / Clock / Countdown modes with Siri Shortcuts integration. Collaboration with Craig Mieritz (production) and Fiel Valdez (design); I'm the developer and ongoing maintainer. Written in Swift.</achievement>
        <achievement><emphasis>(2011)</emphasis> <emphasis>Heaven</emphasis> and  <emphasis>Hell</emphasis> (<url>http://erif.org/code/games/tetris.php</url>) Implemented the xkcd comics "Hell" and "Heaven" within 12 hours of their being posted. "Heaven" was posted about on Boing Boing, ycombinator, kotaku, and more. Written in AS3.</achievement>
        <achievement><emphasis>(2008)</emphasis> <emphasis>Detritus</emphasis> (<url>http://erif.org/code/detritus/</url>) maps the standard Asteroids torus to the surface of a sphere; the game is largely unchanged from traditional play excepting the use of 3d models and the odd orientation of the rest of the playing field (and a few powerups). This was my first serious foray into C++, and gave me a chance to brush up on trig and geometry, as well as learn about quaternions. Written in C++ with OpenGL, OpenAL, and SDL.</achievement>
        <!--<achievement><emphasis>(2005-)</emphasis> <emphasis>alethe.net</emphasis> is my personal server, originally running Fedora Core 2; have upgraded remotely up to FC8. It serves roughly a dozen websites of various traffic levels on various technologies (MySQL, PostgreSQL, Tomcat, Apache httpd, varnish, postfix, mailman, php/jsp)</achievement>-->
        <!--<achievement><emphasis>(2004-)</emphasis> <emphasis>gudmagazine.com</emphasis> is an award-winning semi-pro magazine of literary + genre fiction, poetry, and art. We publish two issues a year, print+pdf (as well as other ebook formats); I'm responsible for building out the website to allow staff and contributors from all over the world to interact and manage submissions, orders, copyediting, and publishing. Via various server technologies, every PDF purchased is personalized&#8212;and it's also possible to just order parts of the magazine digitally. I'm also one of the (rotating) instigators responsible for slushing, selection, copyediting, and publication.</achievement>-->
        <achievement><emphasis>(2003)</emphasis> <emphasis>Falling Up</emphasis> (<url>http://erif.org/code/fallingup/</url>) is a "twist" on the standard falling tetronimos game, and is by far my most well-received. Building on ideas of an earlier version ("Groovy Tetris" ~ written with a C core and compiled with MFC for Windows and GTK+ for linux), this was my first foray into OpenGL.<!-- It starts traditionally, but every few lines the board changes orientation (and on some levels continues to change orientation throughout play). --> I later ported Falling Up to the iPhone using an ObjectiveC wrapper (and the reduced OpenGL ES library), but had to remove the app from the app store due to complaints from The Tetris Company.</achievement>
        <achievement><emphasis>(2001-)</emphasis> <emphasis>poemranker</emphasis> (<url>http://poemranker.com</url>) is a cross between a poetry workshop and the amihotornot phenomenon.  I designed, wrote, and maintain the site.  It was <emphasis>Yahoo's pick of the day</emphasis> (July 7, 2002) and has been covered in the UK's Guardian, twice, and once on BBC Radio 2.</achievement>
        <!--<achievement><emphasis>(1998-)</emphasis> <emphasis>imaginaries</emphasis> (http://imaginaries.org) is a writers' cooperative for fantasy, science-fiction, horror, and slip-stream.  Taking over the reins from its founder, I brought this writing group into the 20th century.  I coordinate the efforts of a team of contributors to provide support for an international membership that spans the globe, and act both as <emphasis>editor of the site and group facilitator</emphasis>, helping to smooth relations between people with enormously diverse backgrounds, desires, and intentions.</achievement>-->
      </achievements>
    </job>
  </history>
<!--
  <referees>
    <referee><name><firstname>Available upon request</firstname></name></referee>
    <referee>
      <name><firstname>Doug</firstname><surname>Klein</surname></name>
      <title>Director of Interactive Media</title>
      <organization>X-Centric, Inc.</organization>
      <contact>
        <phone>available on request</phone>
        <email>doug.klein@centric.com</email>
      </contact>
    </referee>
    <referee>
      <name><firstname>Korrie</firstname><surname>Gutierrez</surname></name>
      <title>Communications Manager</title>
      <organization>Joico/ISO/Senscience</organization>
      <contact>
        <phone>(626) 312-4128</phone>
        <email>KGutierrez@joico.com</email>
      </contact>
    </referee>
    <referee>
      <name><firstname>Jim</firstname><surname>Negrette</surname></name>
      <title>Senior Partner</title>
      <organization>Olliance Group</organization>
      <contact>
        <phone>(650) 743-3545</phone>
        <email>jim@olliancegroup.com</email>
      </contact>
    </referee>
  </referees>
-->
  <lastModified>
    <date>
      <dayOfMonth>17</dayOfMonth>
      <month>May</month>
      <year>2026</year>
    </date>
  </lastModified>
</resume>
