I design, test, and guide the implementation of end-user programming tools.
2021-01 Head of Product through 2022-01
2020-03 Full-time Product Owner
2020-01 Part-time Product Designer
UX design, usability testing, and technical architecture for novel NLP Text Engine and type system for a semi-structural textual programming language.
This design was uniquely challenging as at the time of design and throughout the company's life-span, there were no other products that quite achieved this vision of end-user programming.
While simple on the surface, the combination of a Rich Text Editor plus a Text Engine with grammar correction and value type checking, is actually a huge amount of technical complexity with many moving pieces.
For ease of troubleshooting, we incorporated and designed several dev tools which could be accessed via our central editing UI.
Local developer environment setup and tooling infrastructure.
I believe that everything done locally should be able to mirror production as closely as possible, that is why I invested in putting together a proof of concept local development environment with Tilt.dev + Helm charts. This was the first experience I had with writing helm charts, but I was able to demonstrate how this could work over the course of a weekend. The following week, I worked on documentation and handed-off code ownership to our director of engineering, Will. Will later set up our production deployment infra with Github Actions + GCP using the same templated helm charts as we used in local development.
2022-08 Sole Founder
Product design and minimal viable product scoping for an art generation app with an initial focus on in-person demonstration and interactivity.
One thing I love about this product is its simplicity. It's relatively easy to explain and demonstrate, and the technical side is little more than CRUD. So, moving quickly and focusing on a high-quality user experience and a flexible technical implementation is easy. This simplicity has made the product a joy to work on, unlike Story.ai, where it took months to design and implement core functionality due to the number of interconnected moving parts and lack of precedence.
We're using a combination of remotely hosted Figma Tokens, custom TailwindCSS plugins, and the Material Design 3 Color tools to maintain consistent styles and typography between code and design files.
Our tools allow us to experiment quickly with different color palettes and themes between different screens in progress. The typography styles replace the base TailwindCSS text classes with classes of both the font family and font size, so we can precisely control the correct letter spacing programmatically, using a system called Dynamic Metrics. So, an example of a TailwindCSS component in our codebase looks like text-ui-sm instead of text-ui and text-sm
2019-05 Design Consultant through 2019-07
UX design and communication design for a distributed data host based around IPFS.
Key UX problems:
Contributions
2016-10 Founder & Engineer through 2017-05
University student founder for a new mobile app to reduce pervasive loneliness on campus.
Key UX problems:
Contributions: