Automating annual reviews

People are using Anvil every day to replace error-prone manual processes with automated systems that can’t go wrong. This is just such a story – this annual review system was built in 90 minutes to streamline a process that could otherwise be a wasteful time sink.

Imagine you work in a company with a three-step annual review process:

  1. Each year, every supervisor has to email their reports with some questions.
  2. The reports each email back the answers.
  3. A meeting is organised between the supervisors and their reports, and the outcome is recorded in a further email.

Unfortunately, this process isn’t always followed correctly. And when it is, the data often goes missing or lingers in personal inboxes where it can’t easily be found.

Why not build an app to solve this? The workflow is enforced by the logic of the app, and the data is stored in a central database.

Click here for a copy of the final app:

The app

The solution: an online portal that supervisors and their reports can log into. The three steps from above are now carried out within the online portal.

Step 1: Supervisor starts review

The supervisor logs into the app, selects one of their reports and triggers a new review.

The supervisor triggers a review.

The supervisor triggers a review.

Step 2: Self-evaluation

The employee recieves an email and logs into the app. They then fill in their part of the review and submit it back to the supervisor.

Filling out the self-evaluation.

Filling out the self-evaluation.

Step 3: Record results of meeting

The supervisor arranges a meeting with the employee. After the meeting, the supervisor logs in to the system and records the outcome of the meeting.

Recording the meeting outcome.

Recording the meeting outcome.

When the record is submitted, the employee recieves an email:

The employee gets an email for their own records.

The employee gets an email for their own records.

The process is now complete. The date of the review, the self-evaluation, and the meeting writeup are all stored in the database:

The review data is stored centrally in the app.

The review data is stored centrally in the app.

The Admin console

How does the system know who reports to whom? There’s an admin interface that allows privileged users to configure the reporting relationships (it’s only available to users designated as admins):

Admins can configure the reporting structure.

Admins can configure the reporting structure.

A manual process is now a web app

That’s the full annual review process, encapsulated in a web app. Now all reviews will follow the procedure, and all the data is stored in one place.

You can get a copy of the source code and design of the app by clicking here:

To get started building your own workflow apps in Anvil, read our tutorial on building database-backed apps: