Early/Mid-Level Software Engineer

Battelle Memorial Institute
Idaho Falls, United States of America
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate
Compensation
$ 163K

Job location

Idaho Falls, United States of America

Tech stack

C
Java
Agile Methodologies
Software Applications
JIRA
Build Automation
Automation of Tests
Unit Testing
Azure
Bash
C++
CMake
Configuration Management
Capability Maturity Model Integration
Static Program Analysis
Code Coverage
Software Documentation
Software Quality
Code Review
Computer Security
Computer Networks
Computer Engineering
Continuous Delivery
Continuous Integration
Linux
Github
Gradle
Issue Tracking Systems
Integrated Development Environments
Python
Linux System Administration
Maven
Microsoft Visual Studio
Radio-Frequency Identification
Scrum
Regression Testing
Cyber-physical Systems
Requirements Management
Requirements Traceability
Secure Coding
Shell Script
Software Engineering
Software Requirements Analysis
Software Systems
Software Quality Assurance (SQA)
Systems Integration
UML
Virtualization Technology
Software Vulnerability Management
Jama (Software)
Software Troubleshooting
Gitlab
GIT
Containerization
Gitlab-ci
Integration Tests
Kubernetes
Information Technology
Polarion
Software Defined Radio
Devsecops
Docker
Jenkins
VMware

Job description

Idaho National Laboratory is hiring a Software Engineer to support research and development efforts involving radio frequency (RF) systems and modeling, software-defined radio platforms, laboratory test environments, automation tools, and mission-focused software applications.

The successful candidate will design, develop, integrate, test, document, and sustain software used in research, laboratory, and field environments. This role requires a hands-on software engineer who can work effectively as part of a technical team, follow disciplined software engineering practices, and help translate evolving research needs into reliable software solutions., Software Design & Development

  • Design, develop, test, integrate, and maintain software applications supporting research, test, automation, data collection, and analysis activities.
  • Develop software using languages such as C, C++, Java, Python, Bash, or similar technologies.
  • Implement software features based on user needs, technical requirements, and project objectives.
  • Support the development of software designs, implementation plans, and project artifacts under the guidance of senior engineers or technical leads.
  • Support software integration with laboratory systems, RF systems, software-defined radios, instrumentation, networks, and computing infrastructure.
  • Troubleshoot software defects, integration issues, build failures, performance issues, and deployment problems in Linux and Windows environments.

Team Collaboration

  • Work as part of a software development team to deliver reliable, maintainable software solutions.
  • Participate in task planning, design discussions, code reviews, integration activities, and technical issue resolution.
  • Collaborate with researchers, senior software engineers, system administrators, technicians, cybersecurity staff, and project leadership.
  • Communicate development status, technical challenges, and risks clearly and in a timely manner.
  • Support junior team members, interns, or project contributors as needed.

Software Quality & Documentation

  • Support software quality assurance practices consistent with disciplined software development processes.
  • Develop and maintain software requirements, design notes, interface documentation, test procedures, test results, release notes, and user documentation.
  • Apply software engineering practices including requirements traceability, configuration control, peer review, defect tracking, verification, and validation.
  • Develop and maintain Unified Modeling Language (UML) diagrams or similar software design artifacts, as appropriate.
  • Participate in software design reviews, code inspections, quality reviews, and release readiness activities.
  • Support software process activities consistent with Capability Maturity Model Integration for Development (CMMI-DEV) principles, where applicable.

DevSecOps & Configuration Management

  • Support the development, maintenance, and use of continuous integration and continuous delivery (CI/CD) pipelines.
  • Support automated builds, automated testing, static analysis, artifact generation, and release packaging.
  • Use Git or similar version-control systems to manage source code, configuration files, branches, tags, and release baselines.
  • Support build and automation tools such as Jenkins, GitLab CI/CD, CMake, Maven, Gradle, Make, or similar tools.
  • Assist with secure software development practices, dependency management, vulnerability remediation, and cybersecurity review support.

Requirements

This position is ideal for an early to mid-level software engineer with experience in software development, requirements implementation, test support, configuration management, continuous integration and continuous delivery, and full software development lifecycle execution. The incumbent of this role will work a 9x80 schedule onsite Idaho Falls, Idaho with every other Friday off., * Level 2: Bachelor's in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 2 years of experience. OR Master's in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 0 years of experience. OR PhD in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 0 years' experience. Level 3: Bachelor's degree in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 5 years of experience. OR

  • Master's in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 2 years of experience, OR

  • PhD degree in computer science, software engineering, computer information systems, information technology, or a related field from an accredited institution AND 2 years of experience

  • Equivalent combination of education and experience commensurate with a level that provides the required skills, knowledge, and abilities to successfully perform the essential functions of the position.
  • Relevant experience using Integrated Development Environments (IDEs) such as Visual Studio or VS Code.
  • Depending on work assignment, obtain and maintain Q-clearance and SCI access, and willingness to complete a US Government polygraph upon request. Depending on work assignment, applicants may be subject to the requirements of DOE O 142.3B, Unclassified Foreign National Access Program.

The ideal candidate will possess:

  • Hands-on software engineering experience with developing, testing, documenting and sustaining software as part of a collaborative technical team.
  • Ease in working within research environments, implementing software from evolving requirements, supporting disciplined software engineering practices, and learning from senior engineers while contributing to reliable, mission-focused software solutions.
  • Experience developing software for RF systems, software-defined radio applications, laboratory test systems, cellular test environments, instrumentation, data acquisition, or cyber-physical systems.
  • Experience working within or supporting a CMMI-DEV software process environment.
  • Experience supporting research and development environments where requirements evolve as prototypes mature.
  • Experience with DevSecOps practices, secure coding, dependency scanning, static analysis, vulnerability remediation, or software supply chain considerations.
  • Experience with Agile, Scrum, Kanban, or hybrid software development methods.
  • Experience with issue tracking and project management tools such as Jira, GitLab, GitHub Issues, Azure DevOps, or similar tools.
  • Experience with automated testing frameworks, unit testing, integration testing, regression testing, and test coverage analysis.
  • Experience with containerization or virtualization technologies such as Docker, Kubernetes, or VMware.
  • Experience with Linux system administration concepts, networking concepts, shell scripting, and deployment in isolated or controlled lab environments.
  • Experience with requirements management tools such as DOORS, Jama Connect, Polarion, Jira, or similar tools.
  • Bachelor's degree in software engineering, computer science, computer engineering, electrical engineering, or a related technical discipline; equivalent experience may be considered.

Physical Requirements:

While performing the duties of this classification, the employee may be required to stand, walk, sit, stoop, kneel, bend, use hands to handle materials, manipulate tools, keyboard, and type, reach with hands and arms, and operate job-related equipment. The employee may occasionally lift and/or move up to 50 pounds with assistance. Sufficient visual acuity and hearing capacity to perform the essential functions and interact with the public is required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions., * The pay range for this position is: Level #2 ($79,344 - $162,732)/ Level #3 ($95,256 - $195,288) /. At Idaho National Laboratory compensation decisions are determined using factors such as education, relevant experience, and other credentials.

  • Multi-Level: This is a multi-level posting and you will be placed at the appropriate level dependent on depth and breadth of proven experience and skills.
  • TDP: This is a testing designated position; you will be required to submit to a pre-employment drug screen and periodic drug testing throughout the term of your employment.

Benefits & conditions

  • Medical, Dental, Vision, and Flexible Spending Accounts
  • 401(k) with a 4.2% employer contribution and up to 4.8% match (regular positions) or self-contribute access (postdoctoral positions)
  • Paid time off (personal leave)
  • Employee Education Program (tuition assistance for eligible positions)
  • Comprehensive Relocation Package
  • Benefit eligibility subject to multiple factors, including employment status and position classification.

At this time, BEA will not sponsor any H1-B visas obtained outside of the United States of America (U.S.A.), including consular visas.

About the company

INL is a science-based, applied engineering national laboratory dedicated to supporting the U.S. Department of Energy's mission in nuclear energy research, science, and national defense. With more than 6,300 scientists, researchers, and support staff, the laboratory works with national and international governments, universities and industry partners to change the world's energy future and secure our nation's critical infrastructure. INL Mission: Our mission is to discover, demonstrate and secure innovative nuclear energy solutions, other clean energy options and critical infrastructure. INL Vision: Our vision is to change the world's energy future and secure our nation's critical infrastructure.

Apply for this position