Integrated Reward System (IRS)¶
[Team | Holberton Team] [Tech Lead | prb34] [Service Owner | TBC] [Service Manager | ajc322] [Product Manager | TBC]
This page gives an overview of the Integrated Reward System (IRS), describing its current status, where and how it's developed and deployed, and who is responsible for maintaining it.
Service Description¶
The Integrated Reward System allows staff to apply for rewards, and allows HR and departmental staff to administrate the reward process, including collecting references and scoring applications.
The only reward scheme implemented so far is Academic Career Pathways: Research and Teaching (ACP R&T, formerly just ACP, formerly Senior Academic Promotions / SAP), which allows senior academics to apply for promotion.
The Referee Portal and Referee Admin Console components of the system have been used in the past to support another reward scheme, Professorial Pay Review (PPR), but PPR has never been fully supported by IRS.
While the original vision was to have all reward schemes implemented in IRS, the current thinking is that others may or may not be a good fit, depending on their similarity to ACP. This will need to be analysed before adding any additional schemes.
Service Status¶
IRS is a live service, and is used each year for that ACP round. ACP (as in the business process) runs every year. Demand on the system fluctuates throughout the year according to where we are in the cycle.
Contact¶
Technical queries and support should be directed to servicedesk@uis.cam.ac.uk and will be picked up by a member of the team working on the service. To ensure that you receive a response, always direct requests to servicedesk@uis.cam.ac.uk rather than reaching out to team members directly.
Issues discovered in the service or new feature requests should be opened as GitLab issues here.
Environments¶
IRS is currently deployed to the following environments:
Name | Main Application URL | Admin URL |
---|---|---|
Production | https://irs.hr.apps.cam.ac.uk/apply | https://irs.hr.apps.cam.ac.uk/admin |
Staging | https://staging.irs.hr.apps.cam.ac.uk/apply | https://staging.irs.hr.apps.cam.ac.uk/admin |
Development | https://development.irs.hr.apps.cam.ac.uk/apply | https://development.irs.hr.apps.cam.ac.uk/admin |
The GCP console pages for managing the infrastructure of each component of the deployment are:
Name | Main Application Hosting | Database |
---|---|---|
Production | GCP Cloud Run | GCP Cloud SQL (Postgres) |
Staging | GCP Cloud Run | GCP Cloud SQL (Postgres) |
Development | GCP Cloud Run | GCP Cloud SQL (Postgres) |
All environments share access to a set of secrets stored in the meta-project Secret Manager.
Source code¶
Source code for Integrated Reward System is spread over the following repositories:
Repository | Description |
---|---|
Integrated Reward System¹ | The Applicant Portal and Admin Console web-apps. Most of the business logic is here. |
Referee¹ | The Referee Portal (and Referee Admin Portal, which is only used for PPR) |
Orchestra¹ | Core backend component. Data repository and API. Implements some business logic. |
Panel¹ | Microservice where details of the committees who score applications, including members of the committees, are maintained |
Cloud Infrastructure¹ | Terraform configuration for infrastructure and deployment |
¹ DevOps only
Technologies used¶
The following gives an overview of the technologies that Integrated Reward System is built on.
Category | Language | Framework(s) |
---|---|---|
Web Apps and Web Services | Java 17 | TomEE Plume, CDI, JAX/RS, JSF, Primefaces |
DB | PostgreSQL 16, Oracle 19c to connect to CHRIS_EXTRACT schema |
|
GCP deployment | Terraform |
Operational documentation¶
The following gives an overview of how Integrated Reward System is deployed and maintained.
How and where Integrated Reward System is deployed¶
Deployment is via our standard terraform deployment CI pipeline.
Deploying a new release¶
Making a new release of the application is done via release automation.
Deployment is done by:
- Updating the deployment project's repository with any changes, including bumping the deployed web application release.
- Using the "play" buttons in the CI pipeline to deploy to production when happy. (Deployments to
staging happen automatically on merges to
main
.)
Monitoring¶
Monitoring is configured as per our standard Google Cloud Run application module, with uptime checks
configured for the referee
and irs-webapp
components, with the irs-webapp
monitoring path
configured as /admin/pages/system-status
which validates the health of downstream services.
Debugging¶
The README.md files in each of the source code repositories provide information about debugging both local and deployed instances of the applications.
Service Management¶
The Team responsible for this service is Holberton Team.
The Tech Lead for this service is prb34.
The Service Owner for this service is TBC.
The Service Manager for this service is ajc322.
The Product Manager for this service is TBC.
The following engineers have operational experience with this service and are able to respond to support requests or incidents: