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

Office: TCS Hall

Research

I am a Software Engineer and PhD student at Carnegie Mellon’s School of Computer Science and am co-advised by Dr. Brad A. Myers and Dr. Joshua Sunshine. I reside in the Software and Societal Systems Department and work on projects across S3D, HCII, Cylab, and RI.

Software engineers are users, too! My research focuses on improving the human ability to build and test useful software. I move my research agenda forward with a unique combination of empirical and theoretical methods that include human studies of professional software engineers as well as the design and engineering of state-of-the-art human-focused tools such as the TerzoN and NaNofuzz automatic test suite generators.

I publish my work and speak at top venues in software engineering, such as FSE, ICSE, and TOSEM. Additionally, I give invited talks at universities about my research as well as how researchers might use their empriical work as a springboard to theoretical research. Reach out if you need a speaker at your upcoming seminar or lab meeting!

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 (or TerzoN) 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.
  • 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, as a treat. 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.