Computer Programmer III-Remote

Madison, WI
Work Type: Remote
  • Job Category: Information Technology
  • Travel: None
  • Clearance: Able to Obtain Public Trust
  • Req ID: 2024-11325


Job Summary:

The USGS National Wildlife Health Center (NWHC) is a full-service wildlife diagnostic laboratory that leads the nation in identifying and responding to emerging diseases affecting wildlife. To coordinate disease response and provide situational awareness to the wildlife, bio surveillance, and One Health communities, the NWHC developed a wildlife health data portal called WHISPers, which stands for Wildlife Health Information Sharing Partnership - event reporting system. It is a voluntary, partner-driven, web-based repository for sharing basic information about historic and ongoing wildlife mortality (death) and/or morbidity (illness) events and provides a portal for requesting diagnostic and epidemiologic assistance from NWHC. WHISPers provides timely, accurate information on where wildlife disease events are occurring or have occurred for better preparation and decision making. With recent congressional support, NWHC is planning to improve usability of existing functionality and develop a new platform that will focus on integrating numerous external wildlife health data streams. This effort will also include the development of mobile tools for offline data collections while in the field.

Akima Systems Engineering is hiring a Computer Programmer III whose primary responsibility will be to maintain and further develop the codebase for a RESTful web API by performing development tasks as defined by the development team. The WHISPers API handles data management between a PostgreSQL database and the WHISPers web client application and other API users by applying the WHISPers data business rules to data management actions and ensures clear quality assurance and quality control. Development of the new platform will require the building of pipelines utilizing various APIs and automate bulk import of semi-structured and unstructured data. Responsibilities will also include backend development to support tools that allow users to query the data and visualize through use of maps, charts, graphs, and reports.

Work will be conducted in an Agile software development environment. Efforts include refinement of the existing WHISPers back-end system. Existing back-end architecture includes a web API built in the Django REST Framework using the Python programming language, a PostgreSQL relational database, and Celery and RabbitMQ python packages which operate the application’s notifications feature. Alternative or additional frameworks, software, and libraries will likely be needed for development of the new platform.

The computer programmer performs programming assignments that require background experience in API development as well as knowledge of best practices in web development, data processing, unit testing, end-to-end testing, and Git version control. The programmer will participate in user experience design, code reviews, Agile sprint planning and retrospectives, and software development technical discussions. The programmer will test and document code releases and author documentation for software users.


Job Responsibilities:

  • Assists in the development of WHISPers web services using Python in a web-based environment that are operating system agnostic. Familiarity with microservices principles, design patterns. Also, understanding the principles of distributed systems, scalability, and decoupled architecture is required to assist in system analysis and design to expand functionality and enhance usability.

  • Assists with translation of business requirements to the system’s coded business rules.

  • Assists with translation of systems requirements into application prototypes.

  • Assists with planning and designing system and application architecture.

  • Assists in developing web-services from given design parameters.

  • Assists in the development of the WHISPers relational database hosted in PostgreSQL. Assists in system analysis and design to expand functionality and enhance usability.

  • Assists with planning and designing system and database architecture.

  • Assists in modifying the database from given design parameters.

  • Participates in agile software development lifecycle in a team environment.

  • Assists other developers with larger tasks

  • Leads development for certain use cases.

  • Joins in code reviews, presenting code for review and accepting feedback to make improvements in code design; and providing feedback and validation on code developed by other team members.

  • Learns and incorporates best practices in software design.

  • Defines and configures unit and integration testing platforms to ensure code correctness between releases.

  • Writes, debugs, and maintains code.

  • Works with customers to test applications.

  • Performs Quality Assurance testing on software and systems.

  • Writes and maintains program documentation in accordance with Agile documentation practices.

  • In collaboration with other developers, ensures the rigorous application of information security/ information assurance policies, principles, and practices to the delivery of application software services.

  • Works with usability experts, scientists, natural resource managers, and other stakeholders to develop web applications which enhance usability and encourages engagement from the natural resource and bio surveillance communities.

  • Participates in providing guidance as to the relative complexity of requested functionality

  • Facilitates ease of reporting and enhanced situational awareness of wildlife disease events through development of tools including data management portals and geospatial displays.


Minimum Qualification:

  • Experience in API development as well as knowledge of best practices in web development, data processing, unit testing, end-to-end testing, and Git version control.

  • Experience testing and documenting code releases and author documentation for software users.

  • Experience with Python

  • Experience with PostgreSQL

  • Familiar with agile software development lifecycle in a team environment

  • Experience with writing, debugging and maintaining code, code reviews and presenting code for review

  • Experience in web application development

  • BA degree in computer discipline

  • 2-4 years experience

  • Ability to obtain equivalent to Public Trust Clearance.

Job: Information Technology

Travel: None

Organization: ASE - Akima Systems Engineering

Clearance: Able to Obtain Public Trust

Work Type: Remote

Remote: Yes

ReqID: 2024-11325