Michigan Systems Laboratory
Faculty at the University of Michigan Computer Science & Engineering Division whose work spans distributed systems, operating systems, security, cyber physical systems, networking, databases, and software engineering.
The System Lab is hiring!
The Systems Laboratory at the University of Michigan comprises a multidisciplinary group of researchers conducting research in systems. The lab focuses on the experimental design, implementation, and evaluation of systems software technologies, which enable the development of a wide range of emerging applications.
Prospective graduate students
Enabling technologies covered by the Systems Lab include biological databases, collaborative computing, compiler and language design, embedded and real-time computing, fault-tolerant computing, file systems, host and network security systems, mobile and distributed systems, network protocols and architectures, operating systems, peer-to-peer storage systems, power-aware adaptation, security policy management, virtual machines, web databases.
News
Seventeen papers by CSE researchers at NeurIPS 2024
Papers by CSE authors cover a variety of topics related to machine learning and neural information processing.
Brian Noble receives 2024 SIGMOBILE Test-of-Time award
The award recognizes the significant and lasting influence of Noble’s research on application adaptation for mobile environments.
CSE Graduate Honors Competition showcases exceptional research by PhD students
The annual competition features research presentations by a selection of outstanding PhD students in CSE.
Tools for “more humane coding
Assistant professor Cyrus Omar and PhD student David Moon describe their work to design more intuitive, interactive, and efficient coding environments that can help novices and professionals alike focus on the bigger picture without getting bogged down in bugfixing.
Making complex software more reliable
Assistant professor Manos Kapritsos, a researcher in CSE’s Systems Lab, studies how formal verification can be used to ensure even the most complex, distributed systems can be guaranteed correct without testing.