Trevor Schmidt
Senior software engineer with a proven record of technical leadership and achievement, across a wide range of problems and disciplines:
- driving projects from conception to successful adoption and sustainable growth
- acquiring and applying deep domain/subject matter expertise
- fostering an engineering culture of velocity, quality, and continuous improvement
- reducing and overcoming risk, to grow and deliver on new project/business opportunities
Web UI & UX
- React (+ Preact & similar)
- Reactivity (framework-agnostic)
- “Vanilla” JS
- Vue
Services
- HTTP (REST, RPC, Distributed systems)
- Node.js (+ similar)
- Django (+ REST Framework)
Languages
- TypeScript/JavaScript
- CSS
- HTML
- SQL
- Python
- Swift
- Java
Niche/Esoteric
- ODK XForms
- Clojure
- SolidJS
- DSLs (parsers, semantics & runtime)
Recent Experience
ODK
Created and led ODK Web Forms, a runtime for user-defined data collection tools & form-based applications.
Led ODK Web Forms development, from conception to user adoption in production.
Led design and architecture to ensure key business and product goals: alignment with the flagship Collect app for Andriod; sustainable productivity and maintainability for user-facing functionality core to the business; long-term anticipation of unification on Web Forms for that core functionality.
Primary development of ODK XForms and XPath engines. Responsible for design and implementation of parsing, data model, runtime computational architecture, and client-/framework-agnostic rendering APIs.
Prototyped initial UI/UX; collaborated with dedicated UI developers as team grew; coordinated downstream integration with team developing ODK Central software for managing form applications and data access.
2021-2023: Maintainer of ODK Web Forms' legacy predecessor, Enketo.
Reup → Mister Kraken → Treez
Full-stack web service and application development serving a diverse range of responsibilities related to the legal cannabis industry.
Treez2018-2020
Led integration between Treez B2B inventory management services, and Mister Kraken’s extant integrations with state-mandated traceability services; expanded on prior success maturing said integration to all major regulatory and vendor environments.
Built robust, general web service tooling as basis for Treez/Mister Kraken integration, which became a foundation for all new and anticipated service development.
Intervened on personal initiative in the wake of widespread vendor outages and data corruption, to institute reliable, auditable, and reproducible processes to recover and reconcile customer regulatory reporting and inventory history.
Mister Kraken2017-2018
Led efforts to mature and adapt early-stage integrations with WA state-mandated traceability services, ensuring stable continuation of service for customers through abrupt/rapid changes to the state’s regulatory environment and service vendor.
Promoted a team culture shift to embrace automation and other safeguard processes, significantly improving both team velocity and product quality.
Integrated Reup’s B2B marketplace software, filling the remaining gaps in Mister Kraken’s end-to-end inventory management offering.
Reup2015-2018
Led technical design and development of Reup’s core web application, a B2B cannabis supply chain marketplace.
Shared leadership and development of associated web services.
Joined founders and design team in user research, to ensure direct engineering involvement in product-market fit.
Reup partnered with Mister Kraken in 2017; both companies were acquired by Treez in 2018.
ClipCard
Full stack engineer, leading frontend team and then service integrations.
Led design and development of data processing tools used by all of ClipCard’s cloud API integrations; providing common interfaces to standardize and accelerate development of service API authorization, backpressure, fault tolerance, and common data extraction patterns.
Led integrations with Dropbox, Evernote, GitHub and Trello; contributed to integrations with 8 additional cloud services.
Led frontend architecture and development of ClipCard’s web app, and provided mentorship for my successor in that role.
Organized a hackathon which produced 8 API integration prototypes, ultimately leading to company wide alignment on product direction as a search engine for private cloud data.
Projects I Created
Client-agnostic, reactive runtime for ODK XForms
Extensible XPath 1.0 interpreter, supporting ODK XForms extensions, arbitrary DOM implementations
tree-sitter parser for XPath 1.0 syntax
Dark mode web extension for Hacker News.
Quick weekend project, made by request when I saw that it had been left up to the Hacker News community.
A ClojureScript wrapper for rrule.js, with common Clojure
semantics for RRule
and RRuleSet
, conforming to RFC 2445
(with some specific exceptions).
Created and open sourced at Reup for generating standardized rules for recurring dates & times.
A ClojureScript REST client, suitable for AJAX interaction with RESTful APIs.
Created and open sourced at Reup to simplify integration between ClojureScript websites & web apps and backend REST APIs.
A ClojureScript implementation of alter-var-root
.
Created to provide the same behavior as Clojure on the JVM.
Utility for exporting all of an organization’s GitHub issues and comments.
Created and open sourced at ClipCard to easily produce a full archive of an organization’s GitHub issues activity.
Open Source Contributions
ODK Web Forms UI client
Several bug fixes and feature enhancements. Microsite powers my site, thanks @natemoo-re!
Introduced the ignoreInferredTypes
option for the
prefer-readonly-parameter-types
rule to improve DX when the rule
is used with third-party libraries.
Fixed a pair of bugs where query parameters on a link were not set when the link was clicked, and where a previous location state’s query parameters were not removed when navigating to another link without those query parameters.
Added support for the :notify-command
configuration allowing
projects to run arbitrary commands once a rebuild is complete.
Projects
24 projects listed at eyelidlessness.github.io/projectsReferences
Available upon request, email gnosis@gmail.com