Electrical Engineer III (Software Engineer)
The Electrical Engineer III (Software Engineer) supports and maintains the operational infrastructure and electro-mechanical subsystems that support the FAA's navigational aids and runway lighting technologies. The position performs analysis, design, programming, and testing in support of proposed acquisitions of operational and support software. During the acquisition and life cycle process, the position participates in meetings and conferences and provides responses to action items as needed. These systems are critical in airplane approaches to airport landings and in flight navigation.
ESSENTIAL DUTIES AND RESPONSIBILITIES
Essential duties and responsibilities include the following. Other duties may be assigned.
Responsible for the integration of CNI Core Competencies into daily functions, including: commitment to integrity, knowledge / quality of work, supporting financial goals of the company, initiative / motivation, cooperation / relationships, problem analysis / discretion, accomplishing goals through organization, positive oral / written communication skills, leadership abilities, commitment to Affirmative Action, reliability / dependability, flexibility and ownership / accountability of actions taken.
Researches and designs hardware and software systems or enhancements to existing systems or networks.
Provides engineering review of software and hardware design data to ensure it meets the required performance criteria.
Performs analysis, design, programming, and testing in support of proposed acquisitions of operational and support software.
Develops operator, programmer, operations and maintenance, software user, and computer system diagnostic manuals where equivalent FAA or commercially developed documents are unavailable. This documentation describes software functions, maintenance requirements, and maintenance techniques.
Operates and generates software programs for various automated systems as permanent or temporary additions, deletions, and changes to the equipment configuration.
Provides support for hardware, firmware, and software acquisition, development, distribution, and installation.
Develops and executes detailed plans, schedules, and related activities to test, debug, and validate subroutine, module, and software systems.
Provides engineering review of software and hardware design data.
Performs analysis, design, programming, and testing in support of proposed acquisitions of operational and support software. Protects the integrity of the original design implementation, program function, and maintainability.
Ensures hardware and software changes are performed in a thorough and complete manner to enhance future maintainability.
Ensures all system software and hardware continues to meet NAS facility operational and functional standards as modifications and retrofits are developed or installed.
Develops or reviews Contract Data Requirements Lists (CDRL) and other contractual documentation.
Participates in Preliminary Design Reviews (PDR), Critical Design Reviews (CDR), Physical Configuration Audits (PCA), and Functional Configuration Audits (FCA).
Provides Quality Assurance support by performing/executing quality assurance policy and procedures.
Maintains inventory for software program masters, operational firmware, documentation, and developmental system software for assigned hardware and software. Develops a listing of each program by version, revision level, and other information.
Provides other software and hardware engineering support as defined by individual project.
Provides technical guidance in the procurement of new equipment and services and in the installation, operation, and maintenance of equipment and services.
Investigates user issues with equipment and services.
Develops modifications to equipment hardware and software.
Conducts trend analyses on the reliability of equipment and services.
Troubleshoots failures in equipment.
Conduct testing of equipment and services.
Maintains configuration control of equipment and services.
Establishes and maintains equipment support facilities.
Responsible for aiding in own self-development by being available and receptive to all training made available by the company.
Plans daily activities within the guidelines of company policy, job description and supervisor’s instruction in such a way as to maximize personal output.
Responsible for keeping own immediate work area in a neat and orderly condition to ensure safety of self and coworkers. Will report any unsafe conditions and/or practices to the appropriate supervisor and human resources. Will immediately correct any unsafe conditions to the best of own ability.
EDUCATION / EXPERIENCE
Bachelor’s degree in Computer Science, Computer Information Systems, or Computer / Electrical Engineering with at least one curriculum accredited by the Accreditation Board for Engineering and Technology (ABET) as a professional engineering curriculum.
Software Engineer or Computer Science major with 5-plus years of programming and software management experience preferred.
A degree in engineering technology or in an appropriate professional field such as physics, chemistry, architecture, computer science, mathematics, hydrology, or geology may be substituted in lieu of the engineering degree, depending on other qualifications, and length and type of specialized experience.
Specialized advanced degrees appropriate to the field of technology may be substituted for a limited portion of the experience requirements. Specialized engineering experience on NAS systems and equipment is highly desirable. Experience in analyzing and testing electronic system performance, and in producing engineering prototypes, studies, and technical documents is required.
Software Engineer – Level 6 (required degree + 15 years of experience)
Software Engineer – Level 5 (required degree + 12 years of experience)
Software Engineer – Level 4 (required degree + 9 years of experience)
Software Engineer – Level 3 (required degree + 6 years of experience)
Software Engineer – Level 2 (required degree + 3 years of experience)
Software Engineer – Level 1 (required degree)
CERTIFICATES / LICENSES / REGISTRATION
Requires the ability to pass an FAA background investigation to work in a position of Public Trust
Must be U.S. Citizen or Green Card Holder due to government or federal requirement
JOB SPECIFIC KNOWLEDGE / SKILLS / ABILITIES
Knowledge of professional engineering principles, practices and procedures, knowledge of computer hardware, systems software, and computer systems architecture and integration
Basic knowledge and understanding of network programming (sockets) and inter-process communication
Highly developed software programming skills in NAS applications software such as C/C++, UNIX, Python and Assembly languages working with integrated development environments for MS Windows and/or embedded microprocessors.
Skilled in software development and modifications, circuit analysis, and technical writing
Ability to work both individually and in a team environment
Advanced analytical and problem-solving skills with ability to develop and follow through on creative solutions for software design and development tasks
Effective verbal and written communication skills with ability to organize, document, present and explain information
Ability to escalate issues in a timely manner
Ability to apply logic and reasoning to goals and assumptions
Ability to coordinate efforts with others for the timely completion of projects and deliverables
Ability to work well both individually and in a team environment
Ability to be self-motivated and to deliver quality products with limited direction and guidance
Ability to read, analyze, and interpret general business periodicals, professional journals, technical procedures, or governmental regulations. Ability to write reports, business correspondence, and procedure manuals. Ability to effectively present information and respond to questions from groups of managers, clients, customers, and the general public.
Ability to apply advanced mathematical concepts such as exponents, logarithms, quadratic equations, and permutations. Ability to apply mathematical operations such as frequency distribution, determination of test reliability and validity, analysis of variance, correlation techniques, sampling theory, and factor analysis.
Ability to solve practical problems and deal with a variety of concrete variables in situations where only limited standardization exists. Ability to interpret a variety of instructions furnished in written, oral, diagram, or schedule form.