Project: Tether
Tether is an Applicant Tracking System (ATS) for hiring managers in small to mid range startups. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 15 kLoC.
Given below are my contributions to the project.
Features
Code contributed: RepoSense link
New Feature: Added find for applicants and interviewers
- What it does: allows hiring managers to find applicants or interviewers using either their name, phone number or email.
- Justification: This feature improves the product significantly because hiring managers often need to view a specific person's details from a long list of people.
- Highlights: This enhancement required deciding between implementing 3 separate commands for finding based on the 3 different compulsory person detail fields and a singular command that takes in as input an additional parameter to denote the field to find by.
- Challenges: During implementation, there were slight challenges in ensuring proper parsing of multiple inputs, as well as abstracting out common code to cut down on repeated code logic.
New Feature: Added a command to add a remark to applicants and interviewers.
- What it does: allows hiring managers to add remarks to persons.
- Justification: This feature is a minor enhancement to the product that allows users to add a short description to the person of their choice.
New Feature: Added a command to delete applicants and interviewers.
General Contribution: Ensured that code and documentation adhered to the required checkstyle and formatting guidelines in earlier iterations of v1.1 to v1.3.
Enhancements to existing features:
- Refactoring the name of the product to Tether and changing the product icon. (Pull request #79)
- Created a new
Applicant
type from existing Person
to more closely model usage for hiring managers in particular. - Modified
Delete
command to select person to delete based on phone number instead of index.
Project management
- Facilitated delegation of tasks and managed team issue tracker.
Documentation
User Guide:
- Added documentation for the features
clear
, find
, list_persons
and list_interviews
. (#143, #241) - Updated Quick Start section with details and hyperlinked guides to facilitate setting up Tether. (#251)
Developer Guide:
- Added user stories, user profile, value proposition and glossary in first iteration.
- Added implementation details of the
find
feature. (#103)
- PRs reviewed (with non-trivial review comments): #97, #98, #101)
- Contributed to course-wide forum discussions (example: 1)
- Aided in bug-triaging and response for received bug reports.
- Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3, 4, 5)