Research Software Developer

The Research Software Developer will design and implement cloud native computing environments including (1) implementing data structures, algorithms, and workflows (2) applying devops automation to develop continuous integration pipelines as well as deployment, orchestration, and dynamic scaling capabilities (3) constantly improving security and observability via automated vulnerability detection, performance monitoring relative to service level agreements, and automating incident response. The Research Software Developer will work with RENCI management and staff to develop project requirements, and with users to demonstrate functionality and solicit feedback.

Minimum Education and Experience Requirements

Relevant post-Baccalaureate degree required (or foreign degree equivalent); for candidates demonstrating comparable independent research productivity or professional-level institutional planning/assessment experience, will accept a relevant Bachelor’s degree (or foreign degree equivalent) and 3 or more years of relevant experience in substitution.

Required Qualifications, Competencies, and Experience

At least three years of professional software development using Python, Java, or another major programming language. Experience applying design patterns, object oriented and functional programming, designing and troubleshooting concurrent systems and container based micro-services using Linux and the command line, deploying in cloud environments, applying operating systems concepts, installing system software and services, applying authentication and authorization concepts, and using databases are required. The position also requires a demonstrated practice of iterative, customer focused software development in a continuous integration setting involving multiple teams, a capacity for self education, interdisciplinary study and inquiry, effective oral and written communication skills and interpersonal communication, human relations and team building skills, and the ability to foster and maintain collaborations with local and national researchers and subject matter experts.

Preferred Qualifications, Competencies, and Experience

Experience with Linux containers, Kubernetes, database design including relational and graph databases, full text search with Elasticsearch, word embedding models like BioBert, workflows in Apache Airflow, Apache Spark analytics, and authentication protocols like OpenID Connect and JWT are all desirable. A track record of team leadership, promotion of code review, and quality oriented automation are also helpful.

Equal Opportunity Employer Statement

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.

To learn more and apply, please visit: