The Software Developer is responsible for providing software engineering support to the Command and Control Processor (C2P) Modernization project at Naval Information Warfare Center (NIWC) Pacific. They will play a supporting role in achieving the organization's goals by developing new features using C++ in the areas of system diagnostics, Link 16 Functional Input Message/Functional Output Message (FIM/FOM) interface, User Interface and more, as well as validating and correcting software defects. This position will directly impact Naval War Fighter through enhanced tactical communications and battlefield awareness.
CORE FUNCTIONS / JOB DUITES
An
Entrylevel Software Developer will have the ability to perform the following, under close supervision:
Assist in designing, coding, and testing software applications.
Collaborate with senior developers to understand project requirements and contribute to development efforts.
Write clean, efficient, and well-documented code.
Participate in code reviews and incorporate feedback to improve code quality.
Debug and fix minor software issues.
Learn and adapt to new technologies and programming languages as needed.
Contribute to the maintenance and improvement of existing software systems.
Participate in Agile methodologies such as sprint planning, daily stand-ups, retrospectives, and backlog grooming.
Attend and actively participate in team meetings and training sessions.
A
Juniorlevel Software Developer will have the ability to perform the following, with some supervision:
Designing, coding, and testing software applications.
Collaborate with senior developers to understand project requirements and contribute to development efforts.
Write clean, efficient, and well-documented code.
Participate in code reviews and incorporate feedback to improve code quality.
Debug and fix minor software issues.
Learn and adapt to new technologies and programming languages as needed.
Contribute to the maintenance and improvement of existing software systems.
Participate in Agile methodologies such as sprint planning, daily stand-ups, retrospectives, and backlog grooming.
Attend and actively participate in team meetings and training sessions.
SKILLS and ABILITIES
An
Entrylevel Software developer will have Foundational knowledge of the following:
Programming language(s) (e.g., Python, Java, JavaScript, C++)
Data structures and algorithms
Version control systems
Database technologies
Software development methodologies (e.g., Agile, Scrum)
Testing procedures and debugging techniques
Software security principle
A
Juniorlevel Software Developer will have a minimum of two (2) years and basic knowledge of:
Programming language(s) (e.g., Python, Java, JavaScript, C++)
Data structures and algorithms
Version control systems
Database technologies
Software development methodologies (e.g., Agile, Scrum)
Testing procedures and debugging techniques
Software security principle
EDUCATION and CERTIFICATIONS
An
Entrylevel Software Developer will have:
GED and/or equivalent years of experience
Preferred (BS STEM Degree)
A
Juniorlevel Software Developer will have:
BS in STEM Required
Additional two years of experience and relevant Software Development Certification Required, in lieu of BS STEM Degree
TYPICAL WORKING CONDITIONS
General office environment
Computer/Equipment lab