logo

View all jobs

NCBI Full Stack Developer

Bethesda, Maryland

Overview

Ariadne is searching for a Full Stack Developer to support our work at the National Institutes of Health (NIH). This opportunity is full time and onsite/hybrid at the NIH in Bethesda, MD.

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 NIH developed 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

  • 5+ years’ experience and demonstrated proficiency in software and/or SQL database programming 
  • Fluency in scripting languages such as BASH, or Python 
  • Programming experience in a Linux environment. 
  • Ability to work with JSON, XML and similar structured document formats
  • Experience with SQL and relational databases 
  • Experience with HTML, CGI and REST APIs 
  • Experience with Agile development practices 
  • Experience with unit tests, integration, and regression testing 

Desired Skills

  • Understanding of theory of Capability Systems
  • Knowledge 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 
  • 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

 

 
 
 

We look forward to reviewing your application.

Click Apply button now!

Share This Job

Powered by