Resume-aware faculty matching

Find professors who actually fit you

Upload your resume. Four AI agents analyze your background, rank the faculty who fit, inspect their recent research, and help you draft outreach — grounded in their actual work, not templates.

Free to startNo credit cardCancel anytime
Top matches Balanced preset
Dr. Sarah Chen
Stanford · Interpretability · NLP
91
Dr. Marcus Holloway
MIT · Robotics · RL
84
Dr. Aisha Okonkwo
CMU · Fairness · HCI
82
Nova · Professor Researcher · re-ranking top 20…
David Malan

David Malan

Verified

Harvard University · Social Studies and Civics Education

Active 1994–2026

h-index19
Citations3.8k
Papers7931 last 5y
Funding
See your match with David Malan — sign in to PhdFit.Sign in

About

David J. Malan is the Gordon McKay Professor of the Practice of Computer Science at the Harvard School of Engineering and Applied Sciences. He received his A.B., S.M., and Ph.D. in computer science from Harvard University in 1994, 2004, and 2007, respectively. His research during graduate school focused primarily on cybersecurity and digital forensics, with his dissertation titled 'Rapid Detection of Botnets through Collaborative Networks of Peers.' Malan teaches Harvard College's second-largest course, Computer Science 50 (CS50), as well as edX's largest course, CS50x. He also teaches at Harvard Extension School and Harvard Summer School, with all courses available as OpenCourseWare. His professional background includes serving as chief information officer for Mindset Media, working as a forensic investigator for the Middlesex District Attorney's Office during graduate school, founding his own startup, and volunteering as an emergency medical technician (EMT-B) for MIT-EMS and the American Red Cross. His recent publications focus on pedagogy and instructional technologies.

Research topics

  • Computer Science
  • Chemistry
  • Psychology
  • Multimedia
  • Combinatorics
  • Mathematics education
  • Mathematics

Selected publications

  • Cohorts for Community: Structuring Undergraduate Staff Support

    2026-02-13

    articleOpen accessSenior author

    In our introductory computer science course, we face the challenge of supporting a sizable team of undergraduate teaching assistants while fostering both consistency and community. To address this challenge, we implement a cohort-based model for organizing staff, in which Head Teaching Assistants (TAs) take on additional leadership and course logistics responsibilities and lead a small group of four or five other TAs. This model decentralizes communication, granting Head TAs more agency in how they guide their groups while creating smaller communities where staff feel comfortable raising concerns, asking questions, and sharing strategies. In this lightning talk, we will share concrete examples of how cohort meetings have improved information flow, strengthened staff development, and cultivated a greater sense of belonging among teaching staff. Additionally, we will highlight challenges such as uneven dissemination of information across groups and discuss strategies we have implemented to mitigate these issues. Lastly, we will reflect on why we believe this structure offers a scalable and transferable model for other large courses seeking to balance efficiency with community while developing leadership pathways for experienced staff.

  • Teaching with AI

    2026-02-13

    articleOpen access

    Teaching computer science at scale can be challenging. From our experience in CS50, Harvard University's introductory course, we've seen firsthand the impactful role that generative artificial intelligence can play in education. Recognizing its potential and stakes, we integrated OpenAI's GPT into our own teaching methodology. The goal was to emulate a 1:1 teacher-to-student ratio, incorporating ''pedagogical guardrails'' to maintain instructional integrity. The result was a personalized, AI-powered bot in the form of a friendly rubber duck aimed at delivering instructional responses and troubleshooting without giving outright solutions. In this tutorial, we share our journey and offer insights into responsibly harnessing AI in educational settings. Participants will gain hands-on experience working with GPT through OpenAI's latest APIs, understanding and crafting prompts, answering questions using embedding-based search, and, finally, collaboratively building their own AI chatbot. We will also explore the growing landscape of agentic AI tools such as Claude Code, GitHub CoPilot, OpenAI Codex, discussing their applications in educational contexts. Prior knowledge of Python is beneficial but not required, as all demo source code will be provided. Ultimately, we'll not only share lessons learned from our own approach but also equip educators hands-on with the knowledge and tools with which they, too, can implement these technologies in their unique teaching environments.

  • Birds of a Feather Who'd Like to Share Software Together: Teaching Tools that Improve Efficiency and Outcomes

    2026-02-13

    articleOpen accessSenior author

    Odds are we've all used (or tried!) quite a few tools to facilitate efficiency inside and outside of the classroom and empower students to learn more effectively, whether on campus or off. Some of those tools are perhaps homegrown and unique to one's own institution, but freely available educational technologies abound as well, some in the cloud, some for Macs and PCs, some open-source. And quite a few commercial tools offer free or discounted educational plans as well. In this BoF, we'll begin with a whirlwind tour of the tools we ourselves use, including artificial intelligence (AI), identifying the problems they solve and how well, then quickly open the floor to everyone to share their favorites as well. Along the way, we'll jot down every tool mentioned and share the results. With educational technology an evergreen landscape, this year's list will surely be different from last! Attendees should exit this session with a better understanding of the current landscape, familiarized with innovations they can bring back to their own classes (whether high school, undergraduate, or graduate), without reinventing wheels themselves.

  • Teaching with AI (GPT)

    2025-02-18

    article

    Teaching computer science at scale can be challenging. From our experience in CS50, Harvard University's introductory course, we've seen firsthand the impactful role that generative artificial intelligence can play in education. Recognizing its potential and stakes, we integrated OpenAI's GPT into our own teaching methodology. The goal was to emulate a 1:1 teacher-to-student ratio, incorporating "pedagogical guardrails" to maintain instructional integrity. The result was a personalized, AI-powered bot in the form of a friendly rubber duck aimed at delivering instructional responses and troubleshooting without giving outright solutions. In this tutorial, we share our journey and offer insights into responsibly harnessing AI in educational settings. Participants will gain hands-on experience working with GPT through OpenAI's latest APIs, understanding and crafting prompts, answering questions using embedding-based search, and finally, collaboratively building their own AI chatbot. Ultimately, we'll not only share lessons learned from our own approach but also equip educators hands-on with the knowledge and tools with which they, too, can implement these technologies in their unique teaching environments.

  • Sharing Courses, Faculty, and Resources across Universities: An Argument for Cross-Institution Courses and Localized Support Structures

    2025-02-18 · 1 citations

    article1st authorCorresponding

    We present the results of multi-year collaborations among Harvard University, Yale University, and Miami Dade College in which students on all three campuses took the same introductory course in computer science. We present our respective motivations therefor and discuss how the course, CS50, has been both adopted and adapted for localized needs and constraints. Faculty at Harvard provided the course's lectures on video as well as assignments, while faculty at Yale and Miami Dade provided localized support structures, including sections (i.e., recitations) and office hours, with faculty oversight. We argue that this sharing of resources should become more common across otherwise independent campuses so that faculty on each can focus their most precious resource, time, on their own students as well as on other academic pursuits. We offer reassurance that these collaborations have not led to a reduction of resources on any of our campuses. We propose how other institutions could collaborate similarly in ways that benefit all parties. We argue that COVID-19, all things considered, was a missed opportunity for universities to lean on each other at scale, too. And we reserve much of the panel's time for discussion of attendees' perspectives, questions, and concerns.

  • Birds of a Feather Who'd Like to Share Software Together: Teaching Tools that Improve Efficiency and Outcomes

    2025-02-18

    articleSenior author

    Odds are we've all used (or tried!) quite a few tools to facilitate efficiency inside and outside of the classroom and empower students to learn more effectively, whether on campus or off. Some of those tools are perhaps homegrown and unique to one's own institution, but freely available educational technologies abound as well, some in the cloud, some for Macs and PCs, some open-source. And quite a few commercial tools offer free or discounted educational plans as well. In this BoF, we'll begin with a whirlwind tour of the tools we ourselves use, including AI, identifying the problems they solve and how well, then quickly open the floor to everyone to share their favorites as well. Along the way, we'll jot down every tool mentioned and share the results. With educational technology an evergreen landscape, this year's list will surely be different from last! Attendees should exit this session with a better understanding of the current landscape, familiarized with innovations they can bring back to their own classes (whether high school, undergraduate, or graduate), without reinventing wheels themselves.

  • Assessment in CS50 with AI: Leveraging Generative Artificial Intelligence for Personalized Student Evaluation

    2025-02-18 · 1 citations

    articleSenior author

    The scalability challenges of code review and pair-programming assessments in large computer science courses, such as CS50 at Harvard University, have opened up opportunities for the application of Generative AI. Leveraging large language models (LLMs), CS50.ai offers a suite of AI-based tools that assist both students and instructors in mastering course material while overcoming the limitations posed by human resource constraints. This demo highlights how generative AI can be employed to conduct code reviews and pair-programming simulations, providing real-time feedback, code explanations, and collaborative programming insights. By integrating these AI tools into students' learning journeys, we aim to mimic the 1:1 interaction between instructor and student, improving both formative and summative assessments. We will showcase how these tools are implemented to scale personalized feedback, ensure academic integrity, and maintain pedagogical efficacy. Our presentation will also reflect on lessons learned from deploying these AI-driven tools in recent course offerings.

  • Improving AI in CS50: Leveraging Human Feedback for Better Learning

    2025-02-12 · 10 citations

    articleSenior author

    In 2023, we developed and deployed AI-based tools in CS50 at Harvard University to provide students with 24/7 interactive assistance, approximating a 1:1 teacher-to-student ratio. These tools offer code explanations, style suggestions, and responses to course-related inquiries, emulating human educators to foster critical thinking. However, maintaining alignment with instructional goals is challenging, especially with frequent updates to the underlying large language models (LLMs). We thus propose a continuous improvement process for LLM-based systems using a collaborative human-in-the-loop approach. We introduce a systematic evaluation framework for assessing and refining the performance of AI-based tutors, combining human-graded and model-graded evaluations. Using few-shot prompting and fine-tuning, we aim to ensure our AI tools adopt pedagogically sound teaching styles. Fine-tuning with a small, high-quality dataset has shown significant improvements in aligning with teaching goals, as confirmed through multi-turn conversation evaluations. Additionally, our framework includes a model-evaluation backend that teaching assistants periodically review, ensuring the AI system remains effective and aligned with instructional objectives. This paper offers insights into our methods and the impact of these AI tools on CS50 and contributes to the discourse on AI in education, showcasing scalable, personalized learning enhancements.

  • Providing Students with Standardized, Cloud-Based Programming Environments at Term's Start (for Free)

    2024-03-14 · 1 citations

    articleSenior author

    CS50.dev is a cloud-based programming environment offered to students taking CS50 and other CS courses at Harvard University, both on-campus or online. Built atop GitHub Codespaces, CS50.dev simplifies the initial challenges commonly faced by students and instructors because of the complexities involved in setting up programming environments at term's start. This demo offers an in-depth exploration of CS50.dev's architecture and presents a detailed guide on customizing Docker images and development container (devcontainers) to meet the specific needs of courses within GitHub Codespaces. The demo will also provide general guidance on how to help students transition from CS50.dev to using VS Code independently on their local machines at the term's end.

  • Teaching CS50 with AI: Leveraging Generative Artificial Intelligence in Computer Science Education

    2024-03-14 · 22 citations

    articleSenior author

    CS50.ai is an AI-based educational tool developed and integrated into CS50 at Harvard University using large language models (LLMs), supporting both in-person and online learners. CS50.ai encapsulates a variety of AI-based tools designed to enhance students' learning by approximating a 1:1 teacher-to-student ratio. We showcase: "Explain Highlighted Code," a Visual Studio (VS) Code extension that provides just-in-time explanations of code snippets; style50, a VS Code extension that offers formatting suggestions and explanations thereof; and our "CS50 Duck," an AI-based chatbot for course-related questions, implemented both as a VS Code extension and as a standalone web application. We also demonstrate the integration of our tools into Ed, the course's discussion forum. This demo will illustrate the functionality and effectiveness of these tools as well as the pedagogical "guardrails" that we put in place to ensure secure and fair usage of these tools, while sharing insights from our own experience therewith this past summer and fall.

Frequent coauthors

Education

  • Ph.D., Computer Science

    Harvard University

    2007
  • S.M., Computer Science

    Harvard University

    2004
  • A.B., Computer Science

    Harvard University

    1999
  • Resume-aware match score
  • Save to shortlist
  • AI-drafted outreach

See your match with David Malan

PhdFit ranks faculty by your research interests, methods, and publications — grounded in their actual work, not templates.

  • Free to start
  • No credit card
  • 30-second signup