Research Programmer Job Description
Research Programmer Duties & Responsibilities
To write an effective research programmer job description, begin by listing detailed duties, responsibilities and expectations. We have included research programmer job description templates that you can modify and use.
Sample responsibilities for this position include:
Research Programmer Qualifications
Qualifications for a job description may include education, certification, and experience.
Licensing or Certifications for Research Programmer
List any licenses or certifications required by the position: SAS, GIS, SQL, SSL
Education for Research Programmer
Typically a job would require a certain level of education.
Employers hiring for the research programmer job most commonly would prefer for their future employee to have a relevant degree such as Master's and Bachelor's Degree in Computer Science, Education, Statistics, Science, Economics, Math, Engineering, Information Systems, Software Engineering, Computer
Skills for Research Programmer
Desired skills for research programmer include:
Desired experience for research programmer includes:
Research Programmer Examples
Research Programmer Job Description
- Writes computer programs to meet system design specifications
- Designs, codes, tests, debugs, installs, documents and maintains complex and large in scope programs
- Assists with developing system definition and architecture
- Provide analyses and descriptive reports of project data for management of research projects
- Prepare final datasets for project deliverables
- Collaborate with Project Team members and Operational staff to identify and resolve serious technical problems
- Apply quantitative methods and techniques to manage and analyze research data, perform advanced statistical analysis
- Keep abreast of developments in the high-performance computing field, writing technical reports, conference and journal papers as appropriate
- Research, identify, develop and evolve software, services, and tools, as assigned, addressing data intensive facilities within the LSST project and Astronomy Core Services (ACS) Division at NCSA in collaboration with researchers and professionals in optical astronomy programs and external partners and stakeholders
- Report project progress through earned-value or other project management control systems
- BA/BS in Information Systems, or related field desired
- Literacy with common Microsoft Office tools (Word, Excel)
- Experience in survey research (CATI, mail, web modes) desired
- Undergraduate degree in Social Science, Mathematics, Statistics, Computer Science or a related field required
- Working knowledge of systems development principles, database theory, computer architecture and operating systems principles, computer operations, documentation principles, and data management principles
- Demonstrated knowledge of and skill in oral communication, written communication, interpersonal relations, problem solving (self motivated), and project management
Research Programmer Job Description
- Lead efforts to analyze and resolve software and hardware-related problems, including functional performance issues
- Maintain documentation on systems functions, both for internal group use and for operations staff
- Work with researchers and other project stakeholders and more senior programming staff to gather and analyze requirements for software and design approaches with potential to advance research project goals
- Fix bugs or develop features to meet enhancement requests for the projects as they occur
- Apply (in a research context) emerging best practices and various software development methodologies, including version control, automated testing and code refactoring, and leveraging appropriate programming frameworks and technical architectures to the requirements and proposed solutions
- Contribute to the development of data and research products (e.g., metadata, technical reports, empirical papers)
- Contribute to Blue Waters training as appropriate (i.e., author/maintain documentation/training materials, provide classroom- and/or web-based training, present seminars/tutorials at workshops, ) with an emphasis on scalable algorithms
- Serve as the primary point of contact at NCSA for several science and engineering teams
- Participate in center collaborations and outreach activities, , attending and presenting in meetings, conferences, and workshops, as a representative of the CyberGIS Center
- Participate center collaborations and outreach activities, , attending and presenting in meetings, conferences, and workshops as a representative of the CyberGIS Center
- 5+ years of programming experience in either SQL or SAS
- Minimum three (3) years of related experience with programming and data management using SAS or other computer language
- Experience with SAS graph, macros, PROC SQL, ODS, SAS/ACCESS and data extraction from large relational databases
- Proficient in SQL query writing against enterprise databases
- Experience using statistical software packages (R, SAS Enterprise Guide or similar)
- Strong SAS programming experience (SAS certifications preferred)
Research Programmer Job Description
- Interacting with CSEP participants to develop software modules that implement new forecasting and testing methods, such as ensemble forecasts and non-Poisson time dependence
- Provide expertise and assistance in data download and management, in software development, installation and maintenance for those analyses
- Guide project team members in terms of developing software and tools prioritization of deliverables and deadlines
- A relevant Bachelors/Masters Degree &/or equivalent experience in Scientific Computer Programming
- Ability to process and analyse the 100s of GB netcdf data files generated by the climate forecasting system
- Maintain data security and compliance in adherence to Partners Data and Research computing standards for DUAs, IRBs, Data Storage
- Assist in the design and development of new software
- Produce documentation, project reports, and other written material related to software development efforts
- Work with students, faculty, and staff in identification of new features for the developed software
- Architect and operationalize the delivery of a resilient, secure, scalable infrastructure to support research
- LAMP Stack Developer
- In-depth knowledge of computer programming
- HTML & Javascript experience a plus
- Bachelor’s degree in electromechanical engineering, computer science, or similar field
- Minimum 1-3 years of experience in Web Development or similar
- Ability to adapt to new technologies quickly and effectively
Research Programmer Job Description
- Provide leadership and coordinate all aspects of software and system design, integration and maintenance
- Interact with outside sponsors and others to create and develop technical requirements
- Assume the primary responsibility in a team of programmers for transforming technical requirements into an overall software system design, implementation, testing, deployment, and documentation by that team
- Direct and facilitate team building to accomplish overall objectives
- Present technical designs at meetings with project sponsors and others
- Mentor and advance junior programmers in the skills required for research programming by advising and providing feedback
- Assume additional programming related duties to further the mission of the institute
- Creates and maintains technical documentation for those software packages and mobile apps
- Keeps abreast of the latest technologies and suggest their implementation to the project manager to solve the challenges in the research projects
- Coordinates with the project manager about the project tasks and provides guidance, and technical support to RIME team members
- Possess strong problem solving and organizational skills
- Remain current on emerging technologies (operating systems, mobile computing, etc)
- Ability to collect, organize, and distribute feature requests, bug reports, known issues, etc
- Basic knowledge of electronic and mechanical processes preferred
- Bachelor's degree in Computer Engineering or Computer Science required
- BA/BS degree in engineering, mathematics, science, computer science or related field
Research Programmer Job Description
- Provides technology leadership and serve as a member of the LCSR Software Engineering Group, authoring applications and leading projects in support of a wide variety of research, administrative and instructional activities within the department, the University, and for external clients of LCSR
- Gathers specifications, designs, codes, tests and analyzes software programs prepared independently or collaboratively with other members in a team environment, under leadership of the faculty and senior technical staff
- Utilizes project management tools to track the status of projects, communicate with team members, coordinate and assign tasks
- Participates in the understanding, exploration, discovery, experimenting, analyzing, preserving, documenting, and reporting of research activities within an academic team
- Using SAS in a quality control and production capacity
- Programming from scratch updating existing programs
- Developing specifications for analysis files and annotating output shells for programming instruction and documentation
- Working and communicating effectively in a team environment
- Design software and develop test plans for software by producing reports, research, and other materials that will aid in the software development efforts
- Collaborates with researchers to determine system requirements to support research, and designs systems to satisfy their needs
- A background in physics or the exact sciences at an academic level
- 5+ years of active software development and maintenance experience
- Proven ability to guide a project and keep it on track
- Ability to work in Delft, the Netherlands
- Applicant must have experience with sample strategies for large databases and implementing various observational methods and leading SAS programming projects
- Must have a minimum of 1+ year (hands-on) experience in VR (Virtual Reality) using Oculus Rift and/or Microsoft HoloLens within the Unity Platform