Join Emory's Distributed Computing Group!
interested in cutting-edge, large scale distributed systems
Interested Software Engineers look here: Software Engineer Job Posting.
Others, email Prof. Dorian Arnold (dorian.arnold@emory.edu) with:
- a statement of interest
- a resume highlighting your relevant experiences
- an (unofficial) copy of your academic transcript
- (unofficial) GRE scores, if not enrolled at Emory
- names of two references (with affiliation, phone number and email address)
Minimum Qualifications:
- Interest in computer systems-oriented research
- Strong computer science or mathematical undergraduate foundation
- Strong software development skills
- Programming proficiency in C/C++
- Strong oral/written communication and collaboration skills
- Advanced UNIX programming
- Strong mathematical foundation
- Experience developing system-level software
- Experience with batch-scheduled environments
- Experience developing distributed system software
Project 1: HPC Application Resilience
Our SMURFS project (Simulation and Modeling for Understanding Resilience and Faults at Scale) studies resilience for extreme scale applications. Specifically, SMURFS explores: (1) Advanced predictive simulation and modeling capabilities for studying application resilience; (2) Comprehensive comparative fault-tolerance studies; and (3) how application features interplay with different fault-tolerance strategies and hardware technologies. This NSF-sponsored project is intended to lead to multiple Ph.D. dissertations.
Project 2: HPC Software Test Development
As part of a partnership between Cray Inc. and Emory University, the successful candidate will help to test HPC software on advanced architectures, primarily Cray Supercomputers. He or she will collaborate with faculty, students and staff (including Cray engineers) to apply standard software engineering techniques to assess software functionality and quality.
Additional preferred qualifications for this project:- U.S. citizen or permanent resident
- Fortran programming experience
- Familiarity with automated software testing frameworks
- Experiences working with large software projects
- Significant software engineering and testing skills
- Scripting proficiency with Python, Perl, shell scripts, etc.
Other Potential Research Projects
- Extreme-scale Program Analysis: Exploring software execution models that emulate or predict large scale program behavior based on small scale executions.
- Self-Adaptive Runtime Systems: Exploring scalable, autonomic system mechanisms that allow exascale tools and applications to operate effectively without reliance on human expertise.
- Sustainable Personal Computing: Exploring the thin-client/fat-server computational model for cheaper, more energy efficient, higher utilization "home" computing, while maintaining or even elevating the user experience.