Research Programmer

Job description

Posting Number:


Internal Recruitment :


Working Title:

Research Programmer

Anticipated Hiring Range:

Commensurate with education and experience

Work Schedule:

Monday - Friday; 8:00 am- 5:00 pm

Job Location:

Raleigh, NC

Department :

Computer Science-engr

About the Department:

The Department of Computer Science is an academic teaching and research department in the College of Engineering. It is a large and complex unit that encompasses research intensive, teaching intensive and professional activities. It is one of the largest such departments in the nation by the number of faculty and students, and its total budget and size are comparable to, or larger than, a number of NC State University colleges and divisions.

Essential Job Duties:

The Research Programmer will build an adaptive online course, which will result in an integration of intelligent tutoring systems into online courses (aka MOOC). This project builds on our past successes in the SimStudent project ( where we developed technologies to create an Intelligent Tutoring System (ITS) by teaching a computer how to solve problems—aka programming by tutoring. For the current project, we will primarily develop (1) a web-browser based GUI builder to create a user interface for an intelligent tutoring system, (2) an API to connect the user interface with the programming-by-tutoring backend, (3) an integration technology for the intelligent tutoring system to run on the online course (e.g., XBlock), and (4) student modeling technology to dynamically compute the proficiency of the individual students at runtime. We will conduct user studies with actual students to measure the effectiveness of the developed system.

The ideal candidate is responsible for developing experimental research applications and modifying existing software for specific research specifications based on knowledge of the theoretical foundations of information and computation, including algorithms and data structures, and the application of state-of-the-art programming methodology and languages for their implementation and application in computer-based systems; provides consulting services to researchers relative to software technology and capability.

Other Responsibilities:

Perform other related duties as assigned or requested.

Minimum Experience and Education:

Master’s degree in computer science or information systems. Experience in computer systems or complex application programming, preferably in a research and development team setting.

Additional course work in software engineering methods and project-oriented classes developing group designed and implemented computer applications and/or systems. Knowledge of system development environments such as VxWorks for real-time systems for interactive development of algorithms, data visualization, image processing, and statistics for data analysis.

Other Required Qualifications:

Skill in applying functional, imperative, and object-oriented programming languages and methods for Web programming, in particular an experience with one or more general programming languages including Java, C/C++, Python, JavaScript. Front-end implementation utilizing JavaScript, AJAX, HTML/CSS.

Familiar with networking and data storage solutions. Understanding of message transfer between frontend and servlet backend, understanding of MVC structure. Required confidence working in Unix/Linux environments with knowledge and experience developing and testing in UNIX environments (Linux) OS. Familiarity with Web-applications including Apache, Tomcat, JSP, etc.

Knowledge of research methods applicable to the development and validation of complex computer-based systems or equivalent combination of training and experience. Knowledge of the specific domain application areas and their methods, such as artificial intelligence, data systems, machine learning, robotics and human computer interaction.

Excellent analytical, problem solving and organizational skills. Ability to comprehend system and application related specifications and requirements; design and maintain applications using modern computer science-based tools and techniques; communicate with systems users; understand and follow directions.

Preferred Qualifications:

Two or more years of experience in research programming; some experience in programming artificial intelligence or relational database applications and use of program development environments and version control software.

Required License(s) or Certification(s):


Valid NC Driver's License required:


Commercial Driver's License required:


Job Open Date:


Special Instructions to Applicants:

In addition to your application, please attach a CV, cover letter, contact information for professional references, and a research statement.

Position Number:


Position Type:

EHRA Non-Faculty

Full Time Equivalent (FTE) (1.0 = 40 hours/week):



12 Month Recurring

Is this position partially or fully funded on ARRA stimulus monies?:


Department ID:

141901 - Computer Science-engr


NC State University is an equal opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to race, color, national origin, religion, sex, gender identity, age, sexual orientation, genetic information, status as an individual with a disability, or status as a protected veteran.

If you have general questions about the application process, you may contact Human Resources at (919) 515-2135 or [email protected] Individuals with disabilities requiring disability-related accommodations in the application and interview process, please call 919-515-3148.

Final candidates are subject to criminal & sex offender background checks. Some vacancies also require credit or motor vehicle checks. If highest degree is from an institution outside of the U.S., final candidates are required to have their degree equivalency verified at or equivalent service. Degree(s) must be obtained prior to start date in order to meet qualifications and receive credit.

NC State University participates in E-Verify. Federal law requires all employers to verify the identity and employment eligibility of all persons hired to work in the United States.




Diversity Profile: University



View more

Learn more on Inside Higher Ed's College Page for University

Arrow pointing right
Job No:
Posted: 10/17/2019
Application Due: 1/27/2021
Work Type: Full Time