Benefits:
401(k)
401(k) matching
Health insurance
Paid time off
Vision insurance
Job Summary
We are looking for an experienced individual to work independently and in a team environment, filling the language gap between Linux CentOS embedded systems software with external hardware IP networks. As an Embedded Systems Software Developer you will be working with the Airport Surveillance Radar (ASR-9) team that supports the Federal Aviation Administration (FAA) in Egg Harbor Township, NJ. ASR-9 is a radar system used by the Federal Aviation Administration (FAA) to monitor air traffic and weather conditions in the United States. ASR-9 is a primary surveillance radar that provides air traffic controllers with information on aircraft position and weather.
Essential Job Duties
Responsible for providing 2nd level engineering support for ASR-9 modifications installed in the field.
Provides expertise in software requirement analysis, design, design reviews development, software testing, integration, installation, and maintenance of complex computer systems.
Responsible for the following:
Research, evaluate and test new hardware technology that will be used to replace current obsolete components in the NAS equipment.
Capture project requirements and design and develop document changes in hardware and software required for future modifications.
Perform key site testing operations and responsible for preparing the modification kits that will be shipped and installed in the field.
Responsibilities
Strong understanding of the NAS system hardware and software, knowledge of FAA procedural requirements.
Experienced with real-time design and development, testing and interface of software and computer hardware systems, regression impact analysis, reliability, maintainability, human factors, standardization and other reengineering regarding FAA missions and NAS systems.
Skilled with performing system wide analysis and functional allocations, including business process modeling and reengineering, internal operating systems, databases, and network architectures.
Knowledge of using prescribed methods and information furnished, to develop draft inputs to project documentation as it relates to any of the support functions.
Performing assignments on a broad range of tasks associated with the implementation of standards, techniques, procedures, and criteria as they apply to technical tasks.
Developing new technology, modifying the structure of existing software products, and providing technical guidance on complex projects.
Reviewing final draft documents for conformity to requirements and completeness.
Tracking preparation and delivery status of required deliverables.
Attending and may lead meetings, design reviews, working groups and briefings.
Reporting issues and problems and recommends solutions.
Performing other related duties in line with tasks assignments.
Familiarity with object-oriented programming techniques, client/server development, cross-browser development, and Unix/Linux CentOS Operating system.
Qualifications
Bachelor of Science in Computer Science or Math, or a Bachelor’s degree in another technical field with a minimum of thirty (30) semester hours in a combination of mathematics, statistics, and computer science and twenty (20) years related experience.
OR
Master’s Degree in any field of study with a minimum thirty (30) semester hours of either undergrad or grad study in a combination of mathematics, statistics, and computer science and sixteen (16) years related work experience in a computer science or math field.
OR
PhD or Doctorial in a related field with a minimum of thirty (30) semester hours of either undergrad or grad study in a combination of mathematics, statistics, and computer science and six (6) years of related work experience in a computer science or math field.
Technical Proficiencies
Programming languages for embedded systems:
C/C++ (Visual Studio and Qt)
Python
Java
Programming languages for webpage development:
Visual Basic
VBScript
HTML
Managing software/hardware development lifecycles and establishing software baselines using development tools (majority is required):
Operating System: Linux CentOS (Community Enterprise Operating System)
Linux real-time operating systems (RTOS) and embedded software development methodologies.
Network routing, analysis and debugging: Wireshark and Linux Network Device Drivers
Compilers: GCC Compiler and Cross Compiler Environment
APIs: BSD Sockets
Programming internal and external devices in a PC environment either directly or through a device API: USB, COM, Ethernet, TTY, RS-232 (Serial Connector), RS-422 (Serial Connector).
Linux Tool Production: Yocto, Bitbake, Netlink
Build Automation: OpenEmbedded
Troubleshooting: Logic Analyzer
Database Management: SQL
Versioning: Git (any flavor)
Communication protocols used in embedded systems: Ethernet, HDLC, UDP, IP, ARP, etc.
Skilled in oral and written communication
Detail Oriented
The above statements are intended to describe the general nature and level of work being performed by employees assigned to this position. This description is not intended to be an exhaustive list of all responsibilities, duties, and skills required of employees assigned to this job. Management retains the discretion to add or change the duties of the position at any time. Work will be conducted at the William J. Hughes Technical Center, and the work environment will be a desk/lab, requiring little to no travel.