Junior Research Software Engineer
at North Carolina State University
Raleigh, North Carolina, USA -
Start Date | Expiry Date | Salary | Posted On | Experience | Skills | Telecommute | Sponsor Visa |
---|---|---|---|---|---|---|---|
Immediate | 02 Jan, 2025 | USD 90000 Annual | 05 Oct, 2024 | 2 year(s) or above | Docker,Processing,Game Development,Javascript,Software,Datasets,Object Detection,Programming Languages,Languages,Php,Training,Python,C++,Xml,Rapid Prototyping,Soap,Communication Skills,Research Projects,Java,Software Systems,English | No | No |
Required Visa Status:
Citizen | GC |
US Citizen | Student Visa |
H1B | CPT |
OPT | H4 Spouse of H1B |
GC Green Card |
Employment Type:
Full Time | Part Time |
Permanent | Independent - 1099 |
Contract – W2 | C2H Independent |
C2H W2 | Contract – Corp 2 Corp |
Contract to Hire – Corp 2 Corp |
Description:
MINIMUM EDUCATION AND EXPERIENCE
- Master’s degree in engineering or computer science background and at least one year of relevant experience or a B.S in engineering or computer science background and at least two years of relevant experience
- Experience in architecting, designing, and building complex software systems
- Writing software in languages such as Python, Javascript, and/or Java
- Writing shell-level scripts and linux system administration
- Applicable knowledge of version control systems, issue tracking, and build systems
- Experience running, training, and/or evaluating machine learning models such as object detection, image classification, or large language models
- Experience in data processing tasks such as converting datasets between various complex schemas and managing inconsistent data formats
OTHER REQUIRED QUALIFICATIONS
- The successful Research Software Developer must be an analytical problem-solver, able to learn and integrate complex technical information quickly, convey complex technical concepts to others in English and in both verbal and written form, and have a strong commitment to quality and best engineering practices.
- Strong experience and proficiency with (1) compiled (e.g. C, C++, Java) and interpreted (e.g. PERL, Python, Ruby) programming languages, (2) structured data file format approaches such as XML or RDF, and (3) cloud and/or web-services technologies and tools, such as PHP, JSP, or SOAP is required.
- Analytical ability to study and assimilate technical structure, data, and requirements of an ongoing research effort developed by the project team.
- Demonstrated ability to work in a collaborative team within a dynamic, exploratory environment.
- Ability to work in a self-motivated manner with a minimal amount of supervision.
PREFERRED QUALIFICATIONS
- Experience with container technologies such as Docker
- Experience with virtualized environments such as Amazon’s AWS
- Familiarity/Experience with rapid prototyping of software systems and solutions
- Experience with image, audio, or text processing
- Experience integrating ML models into software prototypes
- Experience working in a classified development environment
- Active security clearance is a plus
- The ideal candidate will have experience developing complex software in a team environment, have experience with game development and/or the development of artificial intelligences systems or web-based services, and have strong communication skills. Prior experience in industry or academic research projects is a strong plus.
- Both applicants with Ph.D.s and research experience and applicants without Ph.D.s but with industry experience are encouraged to apply.
Responsibilities:
THIS POSITION WOULD BE RESPONSIBLE FOR CARRYING OUT THE FOLLOWING TASKS:
- Collaboration with government, industry, and academic partners to develop prototype applications to enhance analyst processes and products. This includes analyzing the feasibility of business requirements, conceiving innovative solutions, implementing ad-hoc solutions, and assisting the team on technical matters.
- Performs self-directed applied research transitioning ideas, theories, and methodologies published in academic journals into working prototypes.
- Sets up computing infrastructure to support analysis efforts.
- Performs data management tasks as necessary. This include items such as:
- Integrating data from various sources into a centralized, cohesive platform
- Cleaning and preprocessing data to ensure data quality and consistency for analysis
- Supporting database maintenance tasks, such as optimizing queries, managing
- data schemas, and ensuring data security.
- Document software code, development processes, and workflows to ensure knowledgetransfer and maintainability
- Test and debug software applications to ensure proper functionality and meeting userrequirements
- Assists with managing the LAS computing environment.
OTHER RESPONSIBILITIES
Performs other relevant duties as assigned.
Qualifications
REQUIREMENT SUMMARY
Min:2.0Max:7.0 year(s)
Computer Software/Engineering
IT Software - System Programming
Software Engineering
Graduate
Engineering or computer science background and at least two years of relevant experience
Proficient
1
Raleigh, NC, USA