Post Job Free
Sign in

Senior Software Developer (CDA)

Company:
BCC-NIH
Location:
Bethesda, MD, 20811
Posted:
May 21, 2024
Apply

Description:

Overview

Black Canyon Consulting (BCC) is searching for a Senior Software Developer to support the National Center for Biotechnology Information (NCBI). This opportunity is full time and onsite at the NCBI in Bethesda, MD and/or remote work.

The National Center for Biotechnology Information (NCBI) is part of the National Library of Medicine (NLM) at the National Institutes of Health (NIH). NCBI is the world's premier biomedical center hosting over six million daily users that seek research, clinical, genetic, and other information that directly impacts biomedical research and public health - at NCBI you can literally help to accelerate cures for diseases! NCBI's wide range of applications, platforms (node, python, Django, C++, you name it) and environments (big data [petabytes], machine learning, multiple clouds) serve more users than almost any other US Government Agency according to

Job Description

The Controlled Data Access (CDA) team is responsible for developing and maintaining state of the art digital token technologies to manage users and access to the Database of Human Genotype and Phenotype (dbGaP) systems.

The Senior Software Developer will work with the team to develop and maintain software supporting NCBI's Controlled Data Access technologies including the Authorized Access platform and Study Registration System. NCBI's implementation of the Researcher Auth Service (RAS Clearinghouse), and the Data Repository Service (DRS).

The CDA team employs several technologies such as: SQL, C++, C#, Python, Java, JSON, JWT, JWS, YAML, OpenAPI, XML, XSL, HTML, CSS, and JavaScript. Our development environment is currently comprised of: Microsoft SQL Server, Linux, .Net, gmake, with git for source control, TeamCity/Jenkins for CI/CD. Required Skills

10+ years' experience and demonstrated proficiency in Object-Oriented programming using C++

Fluency in scripting languages such as BASH, or Python

Programming experience in a Linux environment.

Experience with Cloud technologies:

AWS: EC2, S3

GCP: GKE, Google Store

Ability to work with JSON and similar structured document formats

Experience with network programming, multi-threaded programming

Experience with SQL and relational databases

Experience with HTML, CGI and REST APIs

Experience with Agile development practices

Experience with CI/CD pipelines, unit tests, integration, and regression testing Desired Skills

Understanding of theory of Capability Systems

Understanding of JSON Web Tokens (JWT) and JSON Web Signature (JWS)

Experience using cryptographic algorithms and PKI

Experience with keystores

Experience with AWS Lambda and GCP Cloud Functions

Experience in MSSQL stored procedures

Experience in multi-platform development (POSIX, .NET).

Experience with containers (Docker) Job Responsibilities

Stay up to date with new technologies and changes to the infrastructure

Share your knowledge with the team and help mentor others

Provide expertise to other developers for the design and development of new solutions

Participate in cross product skill sharing activities to decrease knowledge silos

Develop, Test, and Deploy solutions for the product line

Maintain and develop code in support of the product line

Estimate, plan, and manage all assigned tasks and report on progress

Document software and systems to meet product and program requirements

Apply