-
Notifications
You must be signed in to change notification settings - Fork 7
VRO Engineer Onboarding
Gabriel Zurita edited this page Oct 25, 2024
·
31 revisions
Editors: Any new additions to onboarding that require the reverse process for offboarding should be added to VRO Engineer Offboarding. See VRO Engineer Offboarding for the offboarding process.
The VRO Onboarding Checklist is a GitHub issue template that can be edited here. Ask the VRO delivery manager to make a Github issue to get you started!
VRO Software uses a variety of tools and technologies. Here's a quick rundown:
- Java: Most of the project is built using the Spring Framework.
- Python: Partner team projects, also called domain services, are mainly written in Python.
- Ruby: There is one domain service written in Ruby.
- RabbitMQ: The primary communication bus between microservices using AMQP architecture.
-
Gradle: Heavily used for build automation (see the
buildSrc
folder). -
Docker: Used extensively for local development and deployments.
- Note: Most use cases don't provide a Docker Desktop license, so you'll need an alternative like Colima for local development.
- Postgres: AWS RDS Postgres is used for database services, as defined in Helm charts.
- Redis: Pending removal from the stack.
- Kubernetes: DevOps operations are handled via LHDI's infrastructure.
- ArgoCD: For deployment management (see the issue).
Current State (as of June 2024):
VRO supports two partner teams: Contention Classification (CC) and Employee Experience (EE).
The following are the main projects that make up VRO:
-
Repository:
cc-app
- Description: Maps VA.gov disability form contentions to classifications defined in the Benefits Reference Data API.
- Language: Python
- POCs: Contention Classification team
-
Repository:
ep-merge-app
- Description: Automates claim merging, removing the need for manual intervention.
- Language: Python
- POCs: Employee Experience team
-
Repository:
max-cfi-app
- Description: Provides an API for retrieving the maximum disability rating for a specific condition.
- Language: Python
- POCs: Employee Experience team
-
Repository:
svc-bie-kafka
- Description: Handles event streams for contention changes on the disability compensation form (526).
- Language: Java (Spring Framework)
- POCs: Virtual Regional Office team
-
Repository:
svc-bip-api
- Description: Exposes APIs for retrieving claim information, updating statuses, and routing claims.
- Language: Java (Spring Framework)
- POCs: Virtual Regional Office team
-
Repository:
svc-bgs-api
- Description: Allows partner teams to create notes on veteran files.
- Language: Ruby
- POCs: Virtual Regional Office team
VRO also uses these key repositories:
- VRO Public Repo: Main repository for the VRO project.
- VRO Internal Repo: Used for running SecRel scans.
- ArgoCD Repo: Contains the ArgoCD URL to view deployments.
The VRO Onboarding Checklist is available as a GitHub issue template and can be edited here. Contact the VRO Delivery Manager to create an issue to get you started.
- VRO Architecture Design Diagram: Overview of VRO architecture.
- VRO Engineering Onboarding: Onboarding guidelines for new engineers.
- On-Call Responsibilities: Guidelines for on-call duties.
- Datadog Monitoring: Instructions for setting up and using Datadog for monitoring.