Sorry, this listing is no longer accepting applications. Don’t worry, we have more awesome opportunities and internships for you.

Principal Software Engineer

Genex Systems

Principal Software Engineer

Riverdale, MD
Full Time
Paid
  • Responsibilities

    Genex Systems is seeking a software engineer to support NASA's Earth Observing System Data and Information System (EOSDIS) Evolution and Development 2 (EED-2) contract. The EED-2 team provides Earth scientists and others access to data from NASA's Earth Science missions. As a member of the EED-2 team, the software engineer will build innovative tools allowing scientists and students alike to discover, transform, update and improve the quality of Earth Science data in the pursuit of solving a wide range of environmental and socio-economic issues.

    The software engineer in this role will develop Geographic Information System (GIS) capabilities that will subset mission science data for remote science users. The engineer will use cloud optimized data formats and geospatial tools such as the Geospatial Abstraction Library (GDAL) to apply subsetting, reprojection and rasterization to the science data. They will also leverage AWS services to perform these functions in a cloud-based architecture. Familiarity with traditional science data formats (HDF, netCDF, etc.) will be desired skills as well as use of mapping tools such as ArcGIS or QGIS.

    The candidate will perform design, development, integration and testing of the software in support of software deliveries using the Agile software development methodologies. The successful candidate will have a knowledge of technical standards, principles, concepts of software engineering and will be expected to develop solutions to routine technical problems of limited scope and complexity. The candidate's work will be closely supervised, primarily with technical leads, until he/she has demonstrated a level of proficiency to work independently.

    Specific duties and responsibilities include

    • Designing and developing software to include Python 3, Java and C++.
    • Participate as a member on an Agile team and work with other team members to review user stories, estimate effort to build functionality supporting user stories and participate in sprint review and demonstrate new capabilities
    • Design and develop shell scripts to support system functionality.
    • Manage a project or a set of files using GIT.
    • Document release information to achieve an effective product deployment.
    • Use effective troubleshooting techniques to identify software problems.

    REQUIRED SKILLS:

    • Must have knowledge of Linux/UNIX OS (Red Hat or CentOS Linux 6 or 7)
    • Must have experience writing Python 3, Java, C++, and other high level languages
    • Must have experience writing scripting languages such as Bash or C-Shell
    • Must have experience supporting software development teams, tools, and processes
    • Demonstrated ability in writing and maintaining software documentation
    • Candidate must possess an active public trust clearance or the ability to pass a National Agency Clearance with Inquiries (NACI) screening.

    DESIRED SKILLS:

    • Experience with AWS (e.g. ECS, Lambda functions, S3)

    • Experience with Postgres, GIT, Apache, Tomcat, Jira or Web Coverage Services (WCS)

    • Python numpy and hdf libraries

    • Experience with Docker containers

    • Experience transforming satellite based Earth Science data

    • Experience with traditional data formats (HDF, netCDF, etc.) and tools (gdal, nco, QGIS/ArcGIS etc.)

    REQUIRED EDUCATION & EXPERIENCE:

    • Must have a BS degree in technical major, such as engineering or computer science, and 6 years direct professional experience.
    • 4 years of experience writing Python, Java, C++, or other high level language code
    • 4 year of experience in supporting development and sustainment of a large system in a Linux environment

    This position requires a U.S. Person who is eligible to obtain any required Export Authorization.