Research Programmer

Job description

Posting Details

Posting Information

Vacancy Type EHRA Non-Faculty Is Internal Transfer Only No Working Title Research Programmer Salary Range Anticipated Hiring Range Commensurate with education and experience Position Number 00107013 Work Schedule Monday - Friday; 8:00 am- 5:00 pm Full Time Equivalent (FTE) 1.00 Department 141901 - Computer Science-engr Department Computer Science-engr Job City & State Raleigh, NC Primary Function of Organizational Unit

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 Work/Responsibilities

Perform other related duties as assigned or requested.

Minimum Education/Experience

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.

Departmental Required Skills

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 Experience, Skills, Training/Education

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 or Certification


Special Instructions

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

Job Open Date 06/19/2018 Anticipated Closing Date Is this position partially or fully funded on ARRA stimulus monies? No Proposed Hire Date 08/01/2018 AA/EOE

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.

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 verified at Degree must be obtained prior to start date.

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.

Supplemental Question

Required fields are indicated with an asterisk (*).

  1. How did you learn of this opportunity?
    • NCSU Website
    • NCSU Executive Search Services
    • Other Online Job Board
    • Carolina Job Finder / Employment Guide
    • Job / Career Fair
    • The Chronicle of Higher Education
    • Professional Journal
    • Print Advertisement (Newspaper / Periodical)
    • Professional Organization
    • Higher Education Recruitment Consortium (HERC)
    • Direct Contact from NCSU HR Representative / Recruiter
    • NCSU Employee Referral
    • Social Media (LinkedIn, Twitter, Facebook, Other)
    • Other
  2. If you learned about this vacancy from "other source" or "other website", please provide the source.

    (Open Ended Question)

  3. * Do you have a Master’s degree in computer science or information systems?
    • Yes
    • No
Application Materials Required Required Documents
  1. Cover Letter
  2. Curriculum Vitae
  3. Research Statement
Optional Documents




    Diversity Profile: University



    View more

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

    Arrow pointing right
    Job No:
    Posted: 2/8/2019
    Application Due: 4/9/2019
    Work Type: