Summary

Entrepreneur and consultant with over 20 years of web application development experience. I've helped cross-functional teams save $100K+/year through automating manual processes and dev workflows, speeding up onboarding and test suites, improving developer happiness and productivity, and improving code quality and maintainability.

Creator of Ruby on Mac, former Civic Technologist at Code for America, 18F, and Truss, former Excellence in Government Fellow, speaker, author of popular programming and productivity tutorials, and contributor to open source projects.

Read testimonials from former colleagues about what's it's like to work with and learn from me.

Work Experience

Monfresh LLC - Vienna, VA - Sole Proprietor

Developer, Consultant, Marketer, Designer, Author - 02/2022 to Present

Project: Ruby on Mac (rubyonmac.dev)

Ruby on Mac eliminates all the frustrations and days wasted that hundreds of people face every day when trying to work on Ruby projects on their Mac. With a single terminal command, they are up and running in minutes.

  • Ruby on Mac is a CLI (command-line interface) written in Ruby, and delivered as a self-contained binary generated by ruby-packer. It allows people to automatically and effortlessly set up, restore, and maintain a proper Ruby development environment on both Intel and Apple Silicon Macs. It supports all the popular version managers (asdf, chruby, frum, rbenv, rvm), and is the only tool that lets you easily install Ruby versions as old as 1.9.3.
  • Worked with customers to troubleshoot and resolve technical issues that were not yet handled by the script, and then immediately updated the script to automatically detect and fix those issues for future customers. The result is that bug reports are very rare now.
  • Built the rubyonmac.dev website with the Bridgetown Ruby static site generator (based on Jekyll), Liquid templates, Markdown, HTML, JavaScript, and Tailwind CSS. Deploys to Netlify are automatic after pushing commits to GitHub.
  • Developed a Rails web application to receive webhooks from Paddle (my payment processor), which then updates the customer and order info in a Postgres database, and in my ConvertKit account, the service I use to send emails to customers.
  • Developed a feature in the Rails app to generate and verify the Ruby on Mac software licenses. The "Prime" version of Ruby on Mac is limited to run on only 1 Mac at a time, and only 1 year of updates is included. Tracking in a privacy-friendly way whether or not Ruby on Mac was used on a particular Mac required writing a small macOS app with Xcode and SwiftUI to use Apple's DeviceCheck API. I gave a talk about this process at the Rocky Mountain Ruby conference in October 2023: Licensing and Distributing a Paid CLI With Ruby, Rails, and SwiftUI
  • Wrote blog posts and documentation based on common questions from customers. This significantly reduced emails from customers, saved me lots of time, and increased traffic to the site, as well as sales. Since launching Ruby on Mac in February 2022, I now have over 2200 happy customers.
  • My thoroughness and attention to detail is what sets Ruby on Mac apart from other solutions. I test my product regularly on 4 different Macs, using all kinds of real-world scenarios. This is why many customers tell me that my product is the only thing that worked for them, after having spent days trying other solutions.

Truss - San Francisco, CA (worked remotely from Virginia) - (100 employees)

Truss is a fully-distributed small business with clients from the private sector and government. Truss works side by side with the client's team, partners, and customers to help build software that makes life better for the people they’re trying to serve.

Senior Backend Engineer - 12/2018 to 10/2021

Client: U.S. Department of Veterans Affairs (VA) - 12/2018 to 08/2019
Project: Caseflow

Caseflow makes it possible for attorneys, judges, and administrative staff across VA to process appeals and serve hundreds of thousands of Veterans more quickly, efficiently, and effectively.

  • Worked as a member of a cross-functional team including designers, web developers, infrastructure engineers, product managers, client leads, and executive leaders across 4 groups (Truss, Nava, United States Digital Service, TISTA Science & Technology Corporation) to ensure the Caseflow web applications (built with Ruby on Rails) met all the requirements before the Veterans Appeals Improvement and Modernization Act (AMA) took effect on February 19, 2019.
  • As a result of our work on Caseflow, the percentage of cases arriving at the Board of Veteran Appeals with data problems (such as missing documents or data discrepancies) dropped from 41% to less than 5%, and the backlog of Veterans waiting for an appeal was reduced by 50% in about one year.
  • Although the Caseflow web application is highly complex, I was able to jump right in and make impactful contributions right away as a new team member. Below are several examples.
  • Improved the RSpec test suite by making it run faster in CircleCI by 90 seconds per build, and 3 times faster on developer computers (from 18 minutes to 6 minutes). This resulted in time savings of almost an entire quarter per year! This was done by reducing the usage of the Postgres and Oracle databases in the test suite. I gave a talk about this at ParisRB in February 2020: Speeding up Tests With Creativity and Behavioral Science
  • Fixed a production issue that caused the AWS RDS CPU utilization to spike and time out, and wrote a blog post about it titled The 6 Characters That Could Bring Down Your Rails App, which was featured in issue 547 of Ruby Weekly. I also gave a lightning talk about this at Euruko in 2021.
  • Within a day of looking into it, I resolved a bug that had been plaguing the Caseflow team for 9 months. The Rails server would hang locally intermittently, and I used the ActionDispatch::DebugLocks middleware to get to the bottom of it. More details are in the GitHub issue.

Truss Reserve (internal projects) - 08/2019 to 02/2020

  • Led the Engineering effort for internal projects. This included regular 1:1 meetings with 7 engineers.
  • Coordinated with the Sales team, Hiring team, and Engineering leadership to move engineers off of Reserve and onto a client project based on skills and interest.
  • Supported the private sector and government sales teams by responding to engineering questions in Requests for Information, participating in sales calls, and drafting and reviewing proposals.
  • Delivered challenges requested by potential government clients as a way to evaluate our competence. Collaborated with designers, user experience researchers, developers, and product managers to create prototypes under a tight timeline.
  • Created a Ruby on Rails template to quickly spin up a web application prototype, as we did for one of the challenges mentioned above. The Rails template comes with RSpec, sample unit and integration tests, a script to deploy the app on Heroku, and integrates with Circle CI and Code Climate.
  • Improved the Truss Engineering Playbook by updating articles and creating new ones, such as a Ruby guide, Learning Resources, and Git workflow best practices.

Client: U.S. Transportation Command (Transcom) - 02/2020 to 10/2021
Project: MilMove

MilMove is a modern, user-centric web application to help service members move their own belongings and get reimbursed, or use a third-party to handle it for them. For the first time, they can conduct this process from their mobile devices in under 10 minutes.

As Truss's largest client project, MilMove involved 40+ people including web developers, infrastructure engineers, security engineers, designers, user experience researchers, content writers, product managers, client leads, and delivery managers.

  • Worked within smaller cross-functional teams of developers, researchers, designers, and a product manager to develop a specific aspect of the MilMove web application, using Golang for the backend, and React and JavaScript for the frontend.
  • Quickly learned the Golang programming language, and successfully rewrote session management to replace JSON Web Tokens (JWT) with a server-based solution using Redis and Postgres. This was dictated by our Authority To Operate (ATO), which requires the ability to revoke individual sessions.
  • Automated a manual part of the production deployment process that required compiling and linking to the GitHub pull requests that were part of the deploy, posting them to Slack, then deploying to Amazon Web Services via CircleCI pipelines and workflows. This used to take 10 minutes per day, but now takes seconds. This saved about 40 hours per year.
  • Sped up the test suite by at least 1 minute, resulting in 5 person-weeks saved per year.
  • Refactored and sped up scripts that populate the development database, resulting in a 13x speed improvement, from 3.25 minutes, down to 15 seconds. Based on 24 engineers running the script once a day, the total time savings was 7.2 work-weeks per year, and an additional 12 hours saved per year for each new engineer that joins the project.
  • Worked with the Engineering Lead to address technical debt by creating a small Technical Risk Assessment committee. Our work involved asking all engineers to list their pain points, which we then organized and prioritized. To ensure continued progress, we enforced a 20% time allotment per sprint to address technical debt.
  • Mentored junior developers, and shared best practices about testing and code quality with both junior and senior engineers through code reviews, written guides, and internal talks.

Technology Transformation Services - Washington, DC - (300 employees)

The Technology Transformation Services’ (TTS) mission is to lead the digital transformation of the federal government by helping agencies build, buy, and share technology that allows them to provide more accessible, efficient, and effective products and services to the American people.

Senior Software Engineer - GS-15 Step 4 - 01/2015 to 12/2018

Project: Login.gov - 04/2016 to 12/2018

Login.gov is the public’s one account for government, simplifying access to government benefits and services for members of the public by enabling them to reuse one secure account across government agencies. It improves the security of government systems by enabling agencies to leverage a shared technology service to provide strong authentication and identity verification services to their customers. Login.gov is used by more than 80 million people to access 340+ sites and services, such as USAJOBS, the Small Business Administration, and the Trusted Traveler Programs.

  • Prioritized high-leverage activities that resulted in time savings of over 1400 person-hours (175 days) per year. Examples include writing a Bash script to automate the setup and maintenance of employee laptops, a Ruby script to automate the release management process, automating smoke tests with RSpec and Capybara, cutting CircleCI test suite execution time in half, writing Ruby and Bash scripts to speed up local development, sharing workflow techniques with the team, and eliminating unnecessary meetings.
  • Convinced risk-averse executive leaders to deploy code to production twice as often (every 2 weeks instead of 4), with the eventual goal to deploy daily (a DevOps best practice).
  • Identified executive reports requested by the Office of Management and Budget that had been based on the wrong metrics and that no one had questioned before. Raised the issue with management and proposed better metrics for measuring login.gov's authentication success rate, which were promptly used going forward.
  • Often caught bugs, performance degradations, and security vulnerabilities that were overlooked by others. Frequently was the first to determine the root cause of production issues with reproducible steps. Select examples below:
  • Found several high-profile security and privacy issues, such as sensitive user info being included in several different logs, Time-based One-time Password (TOTP) codes being reusable for authentication, and a way to bypass phone verification during identity proofing.
  • Caught security issues in some GitHub pull requests (PR) that were approved by other team members. For example, I once spotted that a PR would allow a malicious person to bypass two-factor authentication when trying to take over someone else's account.
  • Implemented an analytics framework for login.gov that was instrumental in helping troubleshoot issues reported by users and agency partners, and in allowing data-driven decisions and measuring the impact of changes. To speed up the development time, I used the Ahoy Ruby gem that provides a lot of functionality out of the box. I gave a talk about this called "Smart Decisions and Happiness All Around with Analytics" at RubyNation in 2018 (no recording unfortunately).
  • Collaborated with the Infrastructure team to upload the analytics logs, which were were stored in JSON format in a text file, to the Elasticsearch service on Amazon Web Services via Logstash. The data was then made available in Kibana, which allowed us to perform helpful queries, such as where in the authentication flow people were having the most issues, or how many people used SMS versus an Authenticator App as their two-factor authentication method.
  • Developed new features and resolved technical issues for the secure.login.gov web application using the Ruby on Rails framework, PostgreSQL, and Redis for the backend, and JavaScript, CSS, and HTML for the frontend.
  • Improved network security by configuring the "rack-attack" Ruby gem to throttle abusive requests and brute-force authentication attempts.
  • Developed, tested, and maintained an Identity Provider service that supports both the Security Assertion Markup Language (SAML) and Open ID Connect (OIDC) authentication protocols, to make it easier for partner agencies to integrate with login.gov.
  • Developed and maintained example web applications using the Sinatra framework, to help developers at partner agencies implement their part of the code that integrates with login.gov (the Relying Party).
  • Regularly kept Ruby gem dependencies up to date across all GitHub repositories related to login.gov to take advantage of improvements and security fixes. Used the "bummr" gem to automate most of this process. Also kept track of new Rails and Ruby version releases, and updated all repos where applicable. This ensured the login.gov codebases remained secure and up to date at all times.
  • Introduced a pull request template with a checklist based on issues that had bitten us in the past. This resulted in the decrease or elimination of technical issues that had previously fallen through the cracks.
  • Ensured clean and maintainable code by promoting best practices and teaching new techniques. The login.gov codebase maintained a perfect rating for code quality, and 100% test coverage, as measured by Code Climate.
  • Mentored frontend engineers and designers to help them become more familiar with Ruby on Rails, which allowed them to work more efficiently.
  • Worked with designers, web developers, Infrastructure/DevOps engineers, Integration engineers, product managers, project managers, User Experience (UX) researchers, content writers, Customer Contact Center folks, executive leaders, and government agency partners on distributed, cross-functional, multidisciplinary teams to develop a secure and easy-to-use authentication and identity verification service.

Project: myaccount.uscis.gov - 01/2015 to 04/2016

myaccount.uscis.gov is an Identity, Credential, and Access Management (ICAM) authentication service provided by the U.S. Citizenship and Immigration Services (USCIS) that allows people to create a single account to access various USCIS services. The primary use case was to allow people to access myUSCIS.

myUSCIS is a service provided by the U.S. Citizenship and Immigration Services that makes immigration simpler by providing a personalized account to help navigate the process. It includes up-to-date information about the application process, tools to help prepare for filing and help finding citizenship preparation classes, and information to help explore immigration options.

  • Increased test coverage from 70% to 98% of the Ruby on Rails web application by writing more RSpec tests, which facilitated confident code refactoring.
  • Reduced technical debt, and established code quality guidelines. Used tools like Rubocop, Gemnasium, Hound, and Code Climate to enforce and measure code consistency, quality, and security.
  • Reduced by 92% the memory footprint of the "phony_rails" Ruby gem dependency. Submitted a pull request that was approved and merged, thereby making it better for everyone else using the gem. I gave a talk about this at a local meetup, and also wrote a blog post: A Trip Down Memory Lane With Derailed Benchmarks

Accomplishments outside of project work:

  • Collaborated with assessors, penetration testers, developers, and Infrastructure Leads to reduce the time to obtain an Authority to Operate (ATO) from 6 months to 30 days.
  • Spearheaded the effort to create a Development Guide to document the shared expectations around how engineers work. Collaborated with the Director of Engineering and other developers to create various working groups focused on shaping Engineering best practices around testing, code reviews, and code quality. Co-authored a set of guidelines for code reviews emphasizing mutual communication, constructive criticism, and knowledge sharing.
  • Mentored a fellow developer to teach him Ruby on Rails. Covered various aspects of web application development including testing, code design and architecture, feature prioritization, and debugging.
  • Contributed to the recruitment and hiring process by conducting interviews, reviewing resumes, and providing Ruby/Rails code review samples. Attended hiring training that taught awareness of unconscious bias and how to correct for it.

Recognition: 5/5 rating in my year-end Performance Appraisals every year for the 4 years I was at 18F.

San Mateo County Human Services Agency (HSA) - Belmont, CA

HSA's mission is to enhance the well-being of children, adults, and families by providing professional, responsive, caring, and supportive service.

Independent Ruby on Rails Consultant - 04/2014 to Present

Project: SMC-Connect

SMC-Connect is a customized open-source version of Ohana API, developed for San Mateo County. Ohana API is an open source platform that enables government, nonprofits, and community members to collaborate in publishing and maintaining a human services resource directory, and allows residents in need to easily find the services they are eligible for.

  • Optimized the performance of smc-connect.org on Heroku using Ruby on Rails caching features, Redis, and the faraday-http-cache gem. The average response time is under 50ms according to the Skylight performance monitoring tool.
  • Simplified the code and reduced dependencies for the project's two Ruby on Rails apps, making them stable, scalable, easy to customize, and easy to install and deploy. An example was replacing Elasticsearch and MongoDB with PostgreSQL, and using the full-text search functionality provided out of the box by Postgres.
  • Regularly updated the dependencies of the two Ruby on Rails apps as needed, as well as the Ruby, Rails, and Postgres versions, to keep the apps secure and up to date on Heroku. Used Dependabot and the bummr gem to automate updating gem dependencies.
  • Set up monitoring for performance, downtime, and errors using services such as Sentry, Papertrail, Logtail, Skylight, New Relic, and Updown.io

Code for America - San Francisco, CA - (100 employees)

Code for America works shoulder to shoulder with community organizations and government to build digital tools and services, change policies, and improve programs.

Fellow/Software Engineer - 01/2013 to 11/2013

  • Selected out of over 550 applicants to join 26 other fellows who took leave from their jobs to make a positive impact on society during a year of public service.
  • Partnered with the Human Services Agency in San Mateo County, CA to increase access to human services for residents in need through innovation and community engagement.
  • Using quantitative and qualitative research methods, led a team of three to build the Ohana API open source platform, incorporating feedback from users and stakeholders throughout the process. Ohana API enables government, nonprofits, and community members to collaborate in publishing and maintaining a human services resource directory, and allows residents in need to easily find the services they are eligible for.
  • Wrote all of the code and documentation for the API (using the Ruby on Rails framework), the back-end code for the Web Search interface (a Ruby on Rails web application), and some of the code for the Ruby API wrapper.
  • Wrote clear and detailed documentation and Wiki articles to help users install, use, and deploy Ohana API.
  • Created a Vagrant virtual machine and Docker image to make it easy for developers to get started with Ohana API.
  • As the team spokesperson, I presented our project along with the Director of the San Mateo County Human Services Agency at the Code for America Summit in October 2013, and at the Healthy Communities Data Summit in May 2013.
  • Recognition: Our work was featured in several media outlets, including the LA Times, SF Examiner, and a PBS NewsHour segment that aired on TV on May 20, 2013.

Awards

Awarding Organization: Knight Foundation
Award Title: Knight News Challenge: Health Grant
Year Received: 2014

One of 7 grant recipients out of 686 entries, Ohana API is an open source platform that enables government, nonprofits, and community members to collaborate in publishing and maintaining a human services resource directory, and allows residents in need to easily find the services they are eligible for.

I built Ohana API with Anselm Bradford and Sophia Parafina during our 2013 Code for America Fellowship. This grant from the Knight Foundation allowed us to keep working on it for another year in 2014.

Training

Name: Excellence In Government Fellows Program
Organization: Partnership For Public Service
Date Completed: 03/2018
Location: Washington, D.C. and Williamsburg, Virginia

Language Skills

Language: French
Spoken Level: Advanced
Written Level: Advanced
Reading Level: Advanced

Language: Arabic
Spoken Level: Advanced
Written Level: Intermediate
Reading Level: Advanced

Language: Spanish
Spoken Level: Novice
Written Level: Novice
Reading Level: Intermediate

Language: Polish
Spoken Level: Novice
Written Level: Novice
Reading Level: Novice

Education

University of Virginia - Charlotesville, VA

Bachelor's of Science in Electrical Engineering and a Music Degree - 06/1997

  • For my senior thesis, wrote a program in Visual Basic to interface with ERICA (Eye-gaze Response Interface Computer Aid), to allow quadriplegics to play music on the computer using their eyes.
  • During a summer break, collaborated with a small group of top students chosen to build a solar-powered airship.

Casablanca American School - Casablanca, Morocco

International Baccalaureate High School Diploma - 06/1992

  • Top of my class every year between 6th grade and 12th grade. Valedictorian at our graduation ceremony.
  • Recipient of numerous academic achievement awards.
  • Gold medal recipient in the 1500m track and field race against students from Rabat American School and American School of Tangier (12th grade).