Profile
I enjoy building tools as part of a community that empowers domain experts to control and modify their digital workflows by tearing down the boundaries typically imposed by siloed applications from different vendors.
Projects
Modern computing is far too rigid. Applications can only function in preset ways determined by some far away team. Software is trapped in hermetically sealed silos and is rewritten many times over rather than recomposed. This community catalogs and experiments with malleable software and systems that reset the balance of power.
LLVM
May 2019 – present
C++
patches
Firefox
February 2013 – present
Rust, JavaScript, C++
patches
Experience
Research Associate
May 2022 – present
King's College London
London, UK
- Researching reliable debugging and malleable software with Dr. Stephen Kell
Staff Software Engineer
July 2021 – May 2022
Technical Lead
January 2020 – June 2021
Senior Software Engineer
December 2018 – January 2020
Element / JavaScript, Rust, Go
Austin, USA & London, UK
- Building open, decentralized, secure communications for all via Matrix
- Planning delivery with product team to ship high quality features on time
- Exploring Matrix-native projects beyond chat
Visiting Researcher
October 2019 – June 2021
University of Kent
Canterbury, UK
- Exploring formal semantics for debugging info with Dr. Stephen Kell
M.Sc. Student Researcher
August 2018 – November 2018
EPFL, Dependable Systems Lab
Lausanne, Switzerland
- Explored correctness of VPN software through symbolic execution and formal verification using KLEE, Z3, and LLVM in cooperation with Prof. George Candea’s lab
- Took courses in decentralized systems, concurrent algorithms, and machine learning
Staff Software Engineer
July 2015 – July 2018
Mozilla / Rust, JavaScript, C++
Chicago, USA
- Lead engineer for Firefox Developer Tools team
- Rewrote portions of Firefox CSS engine in Rust enabling large performance gains from concurrency while preserving memory safety
- Led Spectre attack mitigation efforts for Firefox Developer Tools
- Leveraged Rust CSS engine in Firefox Developer Tools via WebAssembly
- Built new tools to simplify responsive web design for designers and developers
- Mentored junior developers on the team to improve their skills
Senior Software Engineer
August 2013 – July 2015
Mozilla / JavaScript, C++
Austin & Chicago, USA
- Lead engineer for Firefox mobile web developer tools
- Simplified mobile debugging using WiFi connections instead of USB cables
- Guided other team members on compatibility support between devices
Senior Engineer / Engineering Lead
April 2012 – August 2013
Mass Relevance / JavaScript, Ruby
Austin, USA
- Lead engineer for client-configurable social visualization platform
- Improved flexibility of client-side code drastically via tools like RequireJS and Grunt
- Rebuilt visualizations for best UX across the device spectrum
- Created a tool to demo our visualizations on the websites of prospective clients
Senior Software Engineer
April 2011 – March 2012
Bazaarvoice / Java, JavaScript
Austin, USA
- Lead engineer for the end user UI to display and submit user-generated content (UGC)
- Led organization-wide effort to reduce release cycle to two weeks
- Redesigned media submission flow to support multiple data centers
- Created virtualized UI support to simplify testing of simultaneous client changes
- Mentored new team members to distribute technical knowledge and improve their skill set
- Implemented GWT UI and back end allowing client change deployment at any time
- Acted as Agile scrum master for the team
Associate Software Engineer
June 2009 – April 2011
Bazaarvoice / Java, JavaScript
Austin, USA
- Built a variety of new features for our end user UI from the database layer all the way up to HTML and JavaScript on the client
- Implemented code search and cross referencing tool for our entire code base in spare time
- Balanced feature flexibility against impact to Client Services organization
- Built data generation tools to reduce testing time
- Enhanced search i18n through customization of Solr
Implementation Engineer
January 2009 – June 2009
Bazaarvoice / JavaScript, CSS
Austin, USA
- Responsible for all technical aspects of client’s implementation of end user UGC UI
- Configured features and customized design (HTML, CSS, Tapestry, FreeMarker) to match client requirements
- Supported clients with any issues they encountered during implementation
Software Engineering Intern
May 2008 – August 2008
National Instruments / C++, C
Austin, USA
Undergrad Researcher
May 2006 – May 2008
Rice University, Wireless Sensor Networks group
Houston, USA
- Designed communication API to provide a unified interface for any application
- Implemented data compression using wavelets on nodes
- Created reference implementation of networking API
- Built numerous tools to simplify sensor network research
Education
PhD in Computer Science
June 2022 – May 2025
King's College London
London, UK
Professional M. in Electrical Engineering
January 2009
Rice University
Houston, USA
B.S. in Electrical Engineering
May 2008
Rice University
Houston, USA
Refereed Papers
Source-Level Debugging of Compiler-Optimised Code:
Ill-Posed, but Not Impossible
Onward! 2024
Stephen Kell, J. Ryan Stinnett
Pasadena, USA
Accurate Coverage Metrics for Compiler-Generated Debugging
Information
CC 2024
J. Ryan Stinnett, Stephen Kell
Edinburgh, UK
Just Fuzz It: Solving Floating-Point Constraints using
Coverage-Guided Fuzzing
ESEC/FSE 2019
Daniel Liew, Cristian Cadar, Alastair Donaldson,
J. Ryan Stinnett
Tallinn, Estonia
Talks
Accurate coverage metrics for compiler-generated debugging
information
EuroLLVM 2024
Room to grow: Building collaborative, open software
HYTRADBOI 2022
Service
Artifact Evaluation Committee Member
2023
Programming Language Design and Implementation (PLDI)
Orlando, USA
Artifact Evaluation Committee Member
2023
Principles of Programming Languages (POPL)
Boston, USA
Program Committee Member
2022
LLVM Developers' Meeting
San Jose, USA
Program Committee Member
2020
Convivial Computing Salon
Porto, Portugal
Technical Reports
Distributed Wavelet Transform for Wireless Sensor Networks: TinyOS
Implementation
August 2007
J. Ryan Stinnett
Houston, USA
A Network Application Programming Interface for Data Processing in
Sensor Networks
January 2007
Raymond Wagner, J. Ryan Stinnett, Marco Duarte, Richard Baraniuk,
David B. Johnson, T. S. Eugene Ng
Houston, USA
A Network API-Driven Survey of Communication Requirements of
Distributed Data Processing Algorithms for Sensor Networks
November 2006
Raymond Wagner, Marco Duarte, J. Ryan Stinnett, T. S. Eugene Ng,
David B. Johnson, Richard Baraniuk
Houston, USA
Achievements and Honors
New Year's Honours List, OpenUK
2024
Quarterly Achievement-based Bonus, Mozilla
August 2013 – July 2018
Various Achievement Awards, Bazaarvoice
2009 – 2012
W. L. Moody, Jr. Scholarship
Fall 2006 – Spring 2007
Chair, Rice Honor Council
March 2007 – March 2008
Rice President’s Honor Roll
Fall 2004, Fall 2005, Fall 2007
National Merit Scholarship
Fall 2004 – Spring 2008