# Hilary H. > Principal Engineer, DevOps Location: Oakland, California, United States Profile: https://flows.cv/hilaryh I have 25+ years experience in software engineering, specializing in the web since NCSA HTTPd and Mosaic. I am hooked on BDD, APIs, web frameworks, CI/CD, refactoring and thorny testing problems. I'm very data-driven; along the way I did my doctorate in statistical pattern recognition. Code bases should get smaller and more elegant as they mature. Specialties: devops; APIs; developer experience; API driven architecture; interaction design; platform design & development; build/release; pattern recognition; visual explanations ## Work Experience ### Principal Engineer @ Nubo Jan 2021 – Present | London, England, United Kingdom (Remote) ### Staff Engineer, Developer Experience @ Lob Jan 2020 – Jan 2021 | San Francisco, California, United States https://github.com/lob/lob-openapi ### Senior Engineer II @ DigitalOcean Jan 2018 – Jan 2020 ### Infrastructure Engineer @ Scribd Jan 2017 – Jan 2018 | San Francisco Bay Area ### Chief Architect @ Dictionary.com Jan 2016 – Jan 2016 | Oakland, California ### Software Architect @ MAGNIFI.FM Jan 2015 – Jan 2016 | Emeryville, California ### API engineer @ Yammer, Inc. Jan 2014 – Jan 2015 Infrastructure Engineer, Tools ✧ Co-authored 18 month Internal Tools roadmap. ✧ Authored CI/CD Ruby gem (client+CLI) -- Accelerated data center migration -- Reduced MTTR -- Client: GLI, ROAR, Virtus, Faraday, Typheous -- BDD: Cucumber (Aruba), MiniSpec, Sinatra, Jenkins CI -- Used in TeamCity & Jenkins for CD, gem by in-house QA website -- Built-in help, extensive README. Engineers adopt without need to consult. ✧ Reclaimed Deployer, pure Ruby backend of legacy build/deploy system (deploys > 150 services written in 6 PLs) -- Grew contributor community from previous single author to a broad set of collaborators across all three Yammer locations. -- Increased test coverage from 2% to > 70% -- Wrote extensive README, refactored massive classes into SOLID design. ✧ Reduced Infrastructure tech debt and improved integration with other teams by re‐establishing Infrastructure SupEng and serving as Infra SupEng Tech Lead ✧ Authored Infrastructure on-call runbook -- Streamlined process for handling incidents -- Automated gitbook on github enterprise pages ✧ Authored gitbook-template to automate adoption of gitbook by other teams. ✧ Demonstrated continuous delivery effectiveness by prototyping go.cd tool chain for internal hackday. Awarded “Best use of science fair trifold” API Engineer ✧ Extracted configuration from workfeed (massive rails app) into Puppet to make app data-center agnostic ✧ Extensively refactored workfeed's API authentication code -- Cleared dozens of P2 workfeed-related security support engineering tickets -- Identified a series of vulnerabilities that exceeded the scope of an individual contributor. Researched the vulnerabilities, e.g., collecting data on risk, and collaborated with a colleague from security to produce a report. Security funded a project to mitigate the vulnerabilities. -- Prepared the code for faster, more secure update once a related project no longer needed a legacy component. ✧ On-call rotation ### Senior Software Engineer @ CrowdFlower Jan 2014 – Jan 2014 Author, Contributor Profile API gem ✧ HAL JSON API: designed, documented via apiary.io ✧ Mountable Rails 4 engine -- Mounts in existing Contributor Profiles (pg) app (admin web interface) -- Controllers, representers, routes for new profiles models (roar-rails, PaperTrail, json_spec, Oj) -- Provides factories, RSpec helpers -- BDD via dummy rails app ✧ Client -- Leverages representers, routes, provides controllers -- BDD, versioned in sync with engine ✧ Decomposed development into bite-sized stories, coordinated development across team ✧ Wrote conversion plan for older ad-hoc profiles client ✧ Detailed READMEs covering design through troubleshooting Primary, proprietary single-sign on / role-base authorization ✧ Service (Rails 4): Devise, Warden, RABL, Slim, Faraday, Focused Controller, RSpec, pg on Heroku ✧ Client (Rails 3.2 engine): Warden, Her, Slim, Faraday, RSpec, VCR ✧ Successfully negotiated 1 hour hand-off from author -- Partially deployed, under development, undocumented replacement for older proprietary SSO service -- Wrote detailed READMEs for service/client -- Completed conversion, other teams moved apps per the READMEs ✧ Extended functionality as needed, CD heroku-san ✧ Reconfigured RSpec, decreasing time specs ~ 75% ✧ Coordinated ongoing development across teams, reviewed contributions Tasking app ✧ Added new features, made improvements to dashboard, task listing -- Refactored code into decorators (Draper) -- Tweaked mockups for better usability on laptops ✧ Rails 3.2, RequireJS, Draper, Slim, Decent Exposure, RSpec (parallel), pg, MongoDB, Resque/Redis on EC2 Primary, local dev environment automation ✧ Reduced 13 step setup to 1 step -- Rake, rspec-rake, serverspec -- brew cask install: VirtualBox, Vagrant ✧ Developed a rich set of Rake tasks to support developer needs ✧ Detailed README covering use and development CI (Jenkins): configured dashboard, overhead displays, builds (gems, apps) Internal test support gem: added tasks via Railties ### Senior Software Engineer @ InternMatch Jan 2013 – Jan 2014 Overhauled user (employer ) facing Analytics dashboard ✧ Wrote model, integration RSpec to anchor existing behavior (legacy code had no coverage) ✧ Implemented new functionality while identifying, fixing long-standing bugs ✧ Refactored models, controllers, views -- Initial dashboard view now renders in real-time -- Reduced complexity -- Identified and removed 1000s of lines of unused code ✧ De-normalized student metadata -- Cleansed data -- Millions of rows ✧ Rails 3.1, MySQL, MongoDB, HAML Lead, front end, split Student Profiles into separate app ✧ Rails 4.0, Foundation 4, CoffeeScript, Slim, Draper, Carmen ✧ Feature specs with Capybara and RSpec Architected, implemented new elements in Student Profile app ✧ Desired locations for internships, jobs (Metropolitan Statistical Areas) ✧ Fields of study Enhanced / Refactored API as needed ✧ spec'd improvements Apiary.io ✧ core IM app, Rails 3.1, views: jbuilder, HAL JSON ✧ routing, request, controller, model specs ### Senior Software Developer @ NestWise Jan 2013 – Jan 2013 Refactored single huge (> 1500 line) custom Rails ⇔ Salesforce proxy class into an API and a set of models * API: NestWise Salesforce proxy -- Leverages databasedotcom, salesforce_bulk gems -- Flexible expectations and exception handling -- Design incorporates elements from multiple patterns including proxy, strategy * NestWise Salesforce models -- Captures translation between models, systems -- Refactored sync method invocations to callbacks, then to observers (Rails 3.2) for a clean, consistent, readable flow -- Wrote custom (and leveraged existing) DelayedJob hooks for flexible and robust syncing * Refactored Apex triggers on other side of Rails / Salesforce sync * Analyzed integration gaps via complexity analysis Refactored Engine Yard integrated dev environment (Chef, Ruby) Built new Member display (and related controllers) -- Tabbed display with custom Visualforce components (and component controllers) -- Refactored member controller into small, single-purpose methods (SOLID) -- Enable semi-Apex/VF literate colleagues to add new tabs and elements with ease by following pattern Refactored NestWise classes and challenges public list view and controller Introduced version control (github) into NestWise Apex, Visualforce development workflow ### Full Stack Web Developer @ Monsoon Company Jan 2013 – Jan 2013 | Oakland, California - Developed continuous integration (~ github flow) and continuous deployment practices, wrote a set of developer user stories to illustrate and facilitate adoption - Founded internal best practices project, instigated adoption of a Confluence wiki, architected landing pages which promoted use and findability - Reclaimed server code, RoR admin portal for iOS app. Designed RESTful API, implemented model and infrastructure: Geocoder, Devise, Redis, Resque, MySQL. Behavior-Driven Development w/Cucumber, RSpec and Factory Girl on Vagrant, managed with Chef/Berskshelf, deployed to EC2 & S3. ### Consultant @ hholz.com Jan 2011 – Jan 2013 | Oakland, California Wrote Octoburn (see projects), blogging engine for information architects * Sinatra DSL, static pages via Jekyll * Templates: schema.org microdata, semantic HTML5 * Rich set of microdata filters (plugin) for intuitive customization of templates * Tag page generator plugin, tag filters, integrated with microdata * Views: responsive design (Susy); Google fonts; Vertical Rhythm, hsl color design * Uses Octopress's code-related Liquid filters, Javascript for fluid embedding of code * Follows convention over configuration: ** intuitive architecture ** consistent naming scheme for templates, Sass Migrating a set of scoreboards from Google Spreadsheets (Google Apps Script) to Rails * Roughly 1000 combined users (some overlap in membership among the scoreboards) * Global, polyglot, gender-balanced community, mid teens through retirement age * Includes members with a variety of disabilities; several use screen readers * Project is several years old, scoreboards have been an integral part of growing the groups * Selected current scoreboards: ** Boss Challenge: http://bit.ly/BossCC (ss), http://bit.ly/BossCCWeb (web) ** 90%: http://bit.ly/mh90pcNew (web, ss restricted) ** see also http://gist.github.com/3779235 (gist for 90%) * Lead, RoR project: http://github.com/hilary/boss_mice_sb (repo) * Pilot project: migrating Boss Challenge scoreboard * Integrated i18n, Cucumber for DRYer features, facilitate global dev team * Development: Cucumber, RSpec, Capybara, Machinist * Staging: Vagrant, Chef * Views: responsive design (Susy) * Templates: Slim, semantic HTML5 Adopted, stabilized long-established geneology site: http://hoisington-horsington.com * current version uses open source PHP software * geneologist (retired tech writer) is now writing features for a new RoR platform in Cucumber Technical lead, co-founder: Laurel Village Community Garden Association * http://solvinghunger.hholz.com (live) * Deliberative design project to address hunger in Oakland's Laurel District ### Director, Laboratory for Adaptive Hypermedia and Assistive Technologies @ California State University, East Bay Jan 2002 – Jan 2011 Developed first implementation of unobtrusive user modeling 'in the wild' (no specialized browser, plugin, … needed) * Custom mod_perl backend (in what became the standard implementation) * Contributions to WWW::Mechanize, Module::Install, Apache::TestMB, CIS RHEL Benchmark * Started project (2003) RAD, transitioned to TDD (2005), then to BDD (2006) ** Apache::Test, Selenium, Devel::Cover (100% code coverage) * Dynamic (adaptive and personalizable) content, generated from XML stored in postgreSQL, views in XLST * Pages rendered by mod_perl backend (which injected user modeling Javascript / extracted results for analysis) * Designed unobtrusive user modeling Javascript * Developed 'time before first scroll', first statistically significant version of 'time-spent reading' in the wild * Iterative, participatory design - Extended decomposition model of adaptation in adaptive hypermedia to incorporate summative evaluation - Introduced two-stage model for formative evaluation of unobtrusive user modeling - Journal paper "Unobtrusive User Modeling for Adaptive Hypermedia" was picked up and republished in an industry book Lead, AhatSkin, prototype TWiki skin designed to support collaborative discovery * BDD * designed, collected, triangulated qualitative data, taught methods to team members * developed deliberative design, a sense-making approach to interaction design grounded in deliberation, visualization and digital inclusion Consulted on any number of interdisciplinary projects, e.g., shaped novel hybrid, recursive clustering algorithm for bioinformatics project. ### Associate Professor, Mathematics and Computer Science @ California State University, East Bay Jan 2001 – Jan 2011 Co-lead, Methodology in Computing * Multi-perspective sense-making project with self-organizing teams * Design research project exploring transition to fully enfranchised member of the geek community, whether in academia, industry or FLOSS * Research partner (CS Ed specialist): Dr. Anne Applin, Southern Maine Community College * Co-founder and facilitator, SIGCSE Committee on Teaching Research Methods in Computing * Developed Mutual Discovery, an approach and set of sense-making tools for the acquisition of core cognitive and meta-cognitive skills identified by the committee. Selected Courses: - Programming Language Design, Webserver Development, Human Computer Interaction, Programming Languages Concepts, Research Methodologies, Pattern Recognition, Machine Learning, Computer Simulation, Artificial Intelligence ### Postdoctoral Fellow @ Stanford University Medical Center Jan 2000 – Jan 2001 Secured NSF funding for research in soft segmentation Conducted comprehensive analysis of sources of error in navigation system for spine surgery ### Founder/President @ AccessAbility Internet Services, Inc. Jan 1995 – Jan 2000 Designed materials and scripts for customers, designers who resold web-hosting Budgeting and strategic planning Extensive front-line customer contact ## Education ### Doctor of Philosophy (Ph.D.) in Pattern Recognition (Computer Science), Doctoral minors: Statistics, Cognitive Psychology The George Washington University ### MS in Computer Science The George Washington University ### BS in Mathematics, Computer Science Dickinson College ## Contact & Social - LinkedIn: https://linkedin.com/in/hilaryholz - GitHub: http://github.com/hilary --- Source: https://flows.cv/hilaryh JSON Resume: https://flows.cv/hilaryh/resume.json Last updated: 2026-04-12