I am an Assistant Teaching Professor in the Software and Societal Systems Department at Carnegie Mellon University. Prior to joining CMU, I finished my Ph.D. in Computer Science and Engineering at the University of Michigan, where I was advised by Westley Weimer. My areas of research interest broadly span software engineering and cognition.
In Spring’26, I am teaching 17-214/514: Principles of Software Construction, 17-632: Software Project Management (Mini-3), and 17-647: Engineering Data Intensive Scalable Systems (Mini-4).
In my spare time, I love playing soccer and ping pong. I also enjoy photography, and am always looking for excuses to take my camera out of the storage closet.
If you’d like to chat with me (school-related or otherwise), feel free to email me (hammada@andrew.cmu.edu) or drop by my office (TCS 341).
If you are curious, this is how my name is pronounced: [ɦəmaːd əɦməd].