Systems Software Engineer – 20028586

The Renaissance Computing Institute (RENCI) is a research institute at the University of North Carolina at Chapel Hill and is a collaborative that combines the strengths of Duke University, North Carolina State University, and UNC Chapel Hill. RENCI strives to support the scientific, technological, social, business and entrepreneurial aspirations of the Research Triangle Park and the State of North Carolina. RENCI’s work covers a breadth of intellectual activities, with the aim of enriching and empowering human potential by creating intellectual activities that span the sciences, engineering, arts, humanities, and commerce. RENCI accelerates and supports research, enabling engagement with faculty, staff and students across the three universities and the state.
RENCI is seeking a talented individual for the position of a Systems Software Engineer to support the activities of the Network Research and Infrastructure Group (NRIG) and the Operating Systems, Security, Concurrency, and Architecture Research (OSCAR) Lab in the UNC Computer Science (CS) department, specifically in continuing to develop software solutions that enable a software ecosystem supporting NRIG and CS projects.
NRIG has multiple projects that involve designing and maintaining distributed software systems that operate on a scale of wide-area networks with a focus on resource management in multi-domain environments and software-defined networking.
The OSCAR Lab investigates experimental system designs, primarily focused on operating systems, but past work has ranged from experimental hardware designs to mobile and wearable user interface design. The lab has a track record of building large prototype systems for realistic studies, as well as technology transfer through open source and commercialization of successful projects.
The Systems Software Engineer will focus their primary efforts on developing software solutions for federally-funded research projects. They will work closely with CS department faculty and students, as well as with NRIG team members, in designing and implementing new features within different frameworks, as well as evolving the core functionality to improve stability, scalability, and performance. The incumbent will assist in developing research prototypes as well as helping with technology transfer and support of successful projects.

Educational Requirements

Master’s degree in Computer Science or related field, plus 2 years of software development.

Qualifications and Experience

REQUIRED QUALIFICATIONS:

  • Programming languages: C (Linux Kernel Programming Experience), Python
  • Practical understanding of OS, security, and architecture principles
  • Proficiency with debugging, code analysis, and performance tuning tools
  • Experience with Open Source software development model, CI tools (e.g. github, Jenkins, Travis or other)
  • Experience with container technologies (e.g. Docker or Singularity)

PREFERRED QUALIFICATIONS:

  • Experience with C++, Objective C, C#, and/or x86 assembly programming
  • Experience with Java and associated build technologies (Maven, Gradle)
  • Experience with device driver programming or other low-level hardware features (Intel VT, SGX)
  • Experience with Mobile and/or Desktop App development
  • Experience with Open Source community building

Equal Opportunity Employer

The University of North Carolina at Chapel Hill is an equal opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to age, color, disability, gender, gender expression, gender identity, genetic information, national origin, race, religion, sex, sexual orientation, or status as a protected veteran.

For more information and to apply, please visit http://unc.peopleadmin.com/postings/130670.