Matthew Davis Software Engineering
School of Computer Science
Carnegie Mellon University
Pittsburgh, PA, USA

Office: TCS Hall

Research

I am a Software Engineering PhD student at Carnegie Mellon’s School of Computer Science co-advised by Dr. Brad A. Myers and Dr. Joshua Sunshine. I reside in the Software and Societal Systems Department.

My research focuses on the intersection of software engineering and human computer interaction, particularly within the context of improving the human ability to build and test useful software.

Programming languages and associated tooling are best viewed as products with a responsibility to help humans produce reliable, secure, and predictable software. Imagine the last 20 years of software security without memory safety errors. Even a “small” improvement in one area may be impactful when applied across thousands of projects and developers.

Bio

My industry background encompasses more than twenty years building and managing complex critical software systems. This experience includes coding, architecting, design, testing, QA, process management, managing projects, integrating applications and supply chains, and managing geographically distributed teams including software engineers. My experience includes the entire stack of delivering software solutions: datacenter infrastructure, compute, storage, power, environmental, disaster recovery, security, identity management, vendor management, procurement, LAN, WAN, MAN, delivery controllers, user support, and telecom.

Papers and Publications

Teaching

Funding Awards

Projects

Present projects in which I am involved:

  • NaNofuzz is an automatic test suite generation tool for Typescript that is designed with a developer’s attention and usability in mind. NaNofuzz is currently available in the VS Code Marketplace as an experimental preview. We have a forthcoming paper with some surprising findings about the impact of usability and human factors on developer productivity.
  • PURSE is a multi-university collaboration to identify and lower barriers researchers encounter when planning and running programmer user studies. The goal is to advance the field of software engineering by increasing the amount and quality of direct evidence available to software engineering researchers. We have a forthcoming article in ToSEM that shares many of our findings.
  • Penrose uses domain-specific languages and complex mathematics to generate beautiful diagrams. Its home is at Carnegie Mellon University, and I primarily work on the renderer and Style debugger. Try it out!
  • Iris Moon Rover is a student-run space robotics project that plans to put a robotic rover on the moon this winter. We have a planned launch date of December 24, 2023 on ULA’s Vulcan rocket and Astrobotic’s Peregrine lander. I serve as a telemetry and systems operator for the rover, run the project website, and operate part of the project’s social media presence.

A subset of past projects includes:

  • An experimental snapshot memory facility within the HotSpot JVM.
  • Security remediation suggestion system ingesting feeds from multiple sensors and data sources to direct action amd focus the attention of diverse software and infrastructure teams.
  • Configure, Price, and Quote (CPQ) systems for complex telecom products, including a highly-configurable product pricing engine with a novel user interface that allowed pricing analysts to speak to the system in terms they were used to.
  • Automated consignment management system. Ingested a diverse set of material movement signals from across North America to bill and plan fillups and returns according to location-specific contract terms. This system utilized an accessible and lightweight rules engine allowing users to easily update contract terms to allow timely, accurate, and automated processing of physical and fiscal transactions.
  • Many (usually unnamed) infrastructure automation tools and projects to reduce human toil and human error.
  • Several hundred large-scale global enterprise software system integrations among a complex web of Fortune 500 customers, manufacturers, vendors, 3PLs, financial institutions, and service providers using a combination of off-the-shelf and custom-developed software, whichever was most appropriate.
  • Multiple full-cycle global SAP implementations across various modules and industries inclusive of integrations.
  • EAMON, a web-based and extensible re-imagination of Don Brown’s classic Apple ][ RPG that included a graphical user interface for building dungeons, traps, monsters, and so on. Several original Apple ][ EAMON modules were ported to this system.
  • SiteDrive, A lightweight flexible content management system used by a variety of small companies and non-profits in the early 2000s.
  • McList, a mailing list processor reviewed favorably by c’t magazine in 1997 and used by the Ontario Ministry of Housing as well as other global clients for many years.
  • stree, which was ranked #8 best online utility by a Japanese-language IDG publication in 1999.
  • McD-CBV, a popular call-back verifier for AdeptXBBS.
  • Mail Center Professional, a multi-protocol email server.
  • And so on…

Education

I am a Software Engineering PhD student at Carnegie Mellon University’s School of Computer Science. My GPA at CMU is 4.0, and I am co-advised by Dr. Brad A. Myers and Dr. Joshua Sunshine.

Prior to CMU, I completed my Masters of Science in Software Engineering at East Carolina University’s Department of Computer Science under the supervision of Dr. Mark Hills, who is now at Appalacian State University. My GPA at ECU was 4.0.

Between CMU and ECU, I spent some time at North Carolina State University as a non-degree-seeking student in the Mathematics Department. My GPA at NCSU was 4.0.

My undergraduate work was completed in Lenoir-Rhyne University’s Computer Science Department under the advisement of Richard Hull.