Aaron Muir Hamilton
Senior Software Engineer with over 8 years of Experience+1 313 240 2152 (Verizon) +1 307 365 7527 (AT&T) firstname.lastname@example.org
Various Open Source, 2013 — Present | See Open Source below
Contract — Xilem
2024-01 — Present | Researcher/Developer
Developing and characterizing open source UI middleware and libraries in the Rust ecosystem; focused on power management, performance, accessibility, mixed layout including rich text with variable fonts, advanced input method integration, and Android platform integration.
This work is part of an effort funded by Google Fonts, involving four contractors.
2018-10 — Present | Co-Founder, Lead Developer, VP R&D
Leading the software engineering practice and financial model development; I set cornerstones for every technical project, from our backend and data storage architecture, to each frontend application and webpage. I also co-developed the initial financial model, and managed/directed a full-time modeler thereafter.
Hamilton Professional Services of Canada Incorporated
2017-04 — 2018-10 | Owner, Software Engineer
- Distributed stochastic simulation for casino games modeling on Google Compute Engine with NATS-based message passing.
- Custom high-performance WebGL data visualization.
- Straightforward, well-behaved business data entry and display applications.
- An application merging a web interface with a Unity WebGL view; import tools and processes to bring a library of more than a hundred thousand geometry assets into the application, on contract.
2014-08 — 2016-10 | Software Developer
Delivering state of the art web applications, ahead of schedule and under budget for multinational online retailers, financial services companies, and media syndicates. Working on the official Angular 2 debugging tool, Augury.
Miscellaneous small libraries
- je.suis/lbx (Clojure) — A relatively fast XML emitter for Clojure with a similar API to hiccup (HTML emitter). Unlike the other options in Clojure, je.suis/lbx reliably outputs minimal and simple UTF-8 XML; it emits self-closing tags for elements with no children, correctly escapes CDATA and comments (using the
COMMENTsymbols), and minimally escapes text nodes by default (override with the
Miscellaneous drive-by contributions
I have made modest contributions to a variety of public open source projects that I have used over the years, including:
- originating the current maintenance branch of Anthy, a Japanese input method — I did this in 2013 as a user of Anthy, because the upstream version had source and data files in a JIS encoding rather than UTF-8, and was throwing compiler warnings; I converted the source files to UTF-8 and fixed the compiler warnings and build issues. The authors of Anthy forked my Github repository and now maintain it at https://github.com/fujiwarat/anthy-unicode
- fixing ICC color profile loading and profile embedding for PNGs in the SANE command line utilities — I did this in 2017, as a user of SANE (scanner drivers and utilities) relying on color profiles of my scanner.
- fixing WebSocket connection upgrade detection in Aleph HTTP — This was causing issues with Firefox users accessing our WebSockets at WealthyPlanet.
- fixing font variant selection in the iBus input panel — I was an iBus (input method system) user, and I was frustrated that a Japanese input method window was displaying Taiwanese-variant fonts, the changes herein ask the library selecting the font to consider the advertised locale on the input method.
adding missing properties to Preact TypeScript defs — We had use for this event on
This is nowhere near exhaustive, but my point is: I am well accustomed to making upstream contributions to open source projects in the course of work and leisure; and I am ready to do so across a variety of languages and disciplines.