Junior Research Software Engineer
Salary undisclosed
Apply on
Original
Simplified
This position would be responsible for carrying out the following tasks:
Prototype software development
Supporting Data Science and Machine Learning
Supporting LAS computing infrastructure
Minimum Education and Experience
Other Required Qualifications
Preferred Qualifications
Required License(s) or Certification(s)
N/A
Valid NC Driver's License required
No
Commercial Driver's License required
No
- 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 knowledge
transfer and maintainability - Test and debug software applications to ensure proper functionality and meeting user
requirements - Assists with managing the LAS computing environment.
Prototype software development
- Collaborating with government, industry, and academic partners
- Analyzing the feasibility of business requirements
- Designing (including UX and system architectures) and implementing full-stack software prototypes
- Transitioning ideas, theories, and methodologies published in academic journals into working prototypes.
- Documenting software code, processes, and workflows
- Integrating ML tools, 3rd party APIs, and data pipelines into prototype applications
- Testing and debugging software applications to ensure proper functionality
Supporting Data Science and Machine Learning
- Working in collaboration with a multidisciplinary team
- Performing data processing tasks such as converting datasets between various complex schemas and managing inconsistent data formats
- Running, training, and/or evaluating machine learning models
Supporting LAS computing infrastructure
- Setting up computing infrastructure to support analysis efforts and software development.
- Assists with managing the LAS computing environment and supporting research projects.
- Writing shell-level scripts and linux system administration
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.
Required License(s) or Certification(s)
N/A
Valid NC Driver's License required
No
Commercial Driver's License required
No
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.
Report this job Similar Jobs