Resume

👨‍💻 Notable things I've done!

Experience

Software Engineer, DocJuris (February 2022 – February 2024)

  • Worked across the stack on a web application used by lawyers for contract negotiation.
  • Learned C# on the job as I built out features end-to-end. The tech stack includes a UI application built in React and written in TypeScript and various server-side microservices built using .NET, implementing a GraphQL API for the client and a public-facing REST API for other integrations.

Open Source Software Contributor & Maintainer (August 2015 – Present)

  • In addition to maintaining popular tools such as ESLint and Babel, I have created and maintained projects available on GitHub and npm and have contributed to various projects in the JavaScript ecosystem, including babel-eslint, typescript-eslint, Acorn, Prettier, stylelint, and JSCS.

Software Engineer, Outsmartly (October 2020 – December 2021)

  • Worked on a wide variety of tooling/infrastructure projects related to Edge Slice Rerendering, including a compiler for code slicing, Babel and webpack plugins, frontend libraries, and Cloudflare Worker scripts.
  • Built out headless client Shopify sites with a focus on performance and optimization, utilizing established techniques and in-house tools to improve conversion and metrics.

Core Maintainer of Babel & ESLint, Self Employed (October 2019 – October 2020)

Core Contributor & Maintainer, ESLint (March 2016 – October 2020)

  • Served on the Technical Steering Committee from September 2016 – October 2020.
  • Responsibilities included code and documentation contributions, mentoring others and assisting them with contributions, championing and seeking consensus for enhancements and new features, issue triage, pull request review, evaluating RFCs, managing documentation and the website codebase, maintaining dependency packages, coordinating and running regular releases, collaborating with the OpenJS Foundation, and planning for sustainability and funding.

Software Engineer, Adobe (July 2015 – Feb 2019)

  • Responsible for client and server-side JavaScript services, shared libraries, and internal Node.js CLI tools for Adobe Portfolio and Behance. Took ownership over establishing best practices for the team's JavaScript codebases, including responding to security concerns, maintaining and releasing the team's npm packages, and maintaining the team's Docker and JavaScript tooling configuration (including ESLint, Babel, webpack, TypeScript, and Prettier).
  • Prioritized code review as a member of a voluntary team of "code owners" who ensured those with domain knowledge reviewed relevant PRs and increased velocity of other team members with timely reviews.
  • Codified the team's onboarding process and a mentorship program to improve the new hire experience. Independently reached out to other companies to learn about their diversity and inclusivity initiatives and brought my learnings back to the team to improve our own processes.
  • Took a leadership role in the localization of Portfolio by designing and implementing systems across multiple services, mentoring others, and being a point person for other teams across Adobe.
  • Created a compiler for a CSS-like DSL for writing user-customizable site styles that improved the developer experience for authoring and maintaining site themes.
  • Developed and launched the Portfolio team's first Node.js service, improving site publishing speed by 40%.

Education

  • Bachelor of Music, Trumpet Performance, The Curtis Institute of Music (2009 – 2012)
  • Studies in Trumpet Performance, The University of Maryland, College Park (2006 – 2009)