Logo
NIH-NCBI

Senior Software Developer

NIH-NCBI, Bethesda, Maryland, us, 20811


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 https://analytics.usa.gov/.

We attract the best people in the business with our competitive benefits package that includes medical, dental and vision coverage, 401k plan with employer contribution, paid holidays, vacation, and tuition reimbursement. If you enjoy being a part of a high performing, professional service and technology focused organization, please apply today!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 Skills10+ years' experience and demonstrated proficiency in Object-Oriented programming using C++Fluency in scripting languages such as BASH, or PythonProgramming experience in a Linux environment.Experience with Cloud technologies:AWS: EC2, S3GCP: GKE, Google StoreAbility to work with JSON and similar structured document formatsExperience with network programming, multi-threaded programmingExperience with SQL and relational databasesExperience with HTML, CGI and REST APIsExperience with Agile development practicesExperience with CI/CD pipelines, unit tests, integration, and regression testingDesired SkillsUnderstanding of theory of Capability SystemsUnderstanding of JSON Web Tokens (JWT) and JSON Web Signature (JWS)Experience using cryptographic algorithms and PKIExperience with keystoresExperience with AWS Lambda and GCP Cloud FunctionsExperience in MSSQL stored proceduresExperience in multi-platform development (POSIX, .NET).Experience with containers (Docker)Job ResponsibilitiesStay up to date with new technologies and changes to the infrastructureShare your knowledge with the team and help mentor othersProvide expertise to other developers for the design and development of new solutionsParticipate in cross product skill sharing activities to decrease knowledge silosDevelop, Test, and Deploy solutions for the product lineMaintain and develop code in support of the product lineEstimate, plan, and manage all assigned tasks and report on progressDocument software and systems to meet product and program requirements