Research Opportunities

Undergraduate Research

Projects

P4 Language Extension

In this project we will explore language extensions to P4, a domain-specific language for network devices. This will include developing new language constructs by extending the grammar, writing program transformations, or modifying the compiler.

  • Good programming skills
  • Taken Systems Software or familiarity with its content
  • Interest in networking

DevOps Engineer

We are looking for students interested in DevOps practices to add continuous integration to our research prototypes.

  • Good software engineering skills
  • Some familiary with DevOps
  • An interest in research

Persistent Memory

We are looking for students to research the impact of persistent memory on applications. Persistent memory, in short, is nonvolatile memory (think SSDs) used as RAM. The consequence is that applications can persist data structures in memory beyond the lifetime of a process, without serializing data to via I/O to a disk, for instance. This project will include evaluating the performance and programmability of novel persistent memory APIs.

Requirements:

  • Good systems programming skills, e.g., C, C++, Rust, etc.
  • An interest in systems, architecture, compilers, or a related area.

Program Analysis for Configurable Software

We are looking for students to get involved in a research project related to the automated transformation and analysis of large-scale C programs. Your first task would be to recreate the programming interface to the C standard library. The purpose of this project is to provide a simpler description of the standard library API’s interface. It involves defining new header files to replace each standard library include, e.g., stdio.h, stdlib.h, that contain only the function declarations in them. It requires no implementation of these libraries, just the definitions of the functions. The larger utility of this effort is to improve the scalability of automated C transformation algorithms.

Requirements:

  • Good C programming skills
  • Experience using the C standard library

Contact Instructions

When emailing, please use the subject line “[Undergraduate Research] project: PROJECT(s)”, substituting PROJECT(s) with the projects you are interested in. Emails without this subject line may receive no reply.

Contact for an Interview

Graduate Student Hiring

Hiring for Fall 2021 is already complete.

Projects

Safe and Secure Software Configuration

Description NSF CAREER Grant

Candidates should have

  • Very strong GNU/Linux system skills: command-line usage, software installation, system configuration, and general system administrator skills
  • Programming ability
  • Familiarity with Boolean logic and discrete math
  • An interest in free and open source software development

Persistent Memory

We are looking for students to research the impact of persistent memory on applications. Persistent memory, in short, is nonvolatile memory (think SSDs) used as RAM. The consequence is that applications can persist data structures in memory beyond the lifetime of a process, without serializing data to via I/O to a disk, for instance. This project will include evaluating the performance and programmability of novel persistent memory APIs.

Requirements:

  • Good systems programming skills, e.g., C, C++, Rust, etc.
  • An interest in systems, architecture, compilers, or a related area.

Funding

Graduate research assistantships include tuition, stipend, and fringe benefits and is contingent on continued progress in the program. Some students may be offered a Graduate teaching assistantship instead.

Cyber Security and Privacy Fellowships are available for highly-qualified students and include an increased stipend, additional mentorship, and more. Please ask for applications instructions during the interview.

Application Instructions

PhD students are preferred, so MS students may not receive a reply. Set up an interview and apply to UCF if not already a student. When emailing, please use the subject line “[GRA Application] project: PROJECT(s)”, substituting PROJECT(s) with the titles of project(s) you are interested in (as a comma-delimited list if there are multiple). Emails without this subject line will likely receive no reply.

Contact for an Interview

Apply to UCF