Project: GoodMatch

GoodMatch is a desktop application used for managing applicants and job listings for hiring managers. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.

Given below are my contributions to the project.

  • New Feature: Added the ability to edit job listing.
    • What it does: Allows user to edit and update displayed job listing.
    • Justification: With this feature, user can ensure that the job listing stays updated.
    • Highlights: We needed to ensure a new listing when the edit command is used such that it can work seamlessly with undo feature in the future.
    • Credits: Referenced from AB3’s edit command
    • Pull request #75
  • New Feature: Added the ability to manage applicants.
    • What it does: Allows user add, edit, delete applicants.
    • Justification: With this feature, user can keep track of the applicants applying for the job.
    • Highlights: To differentiate job applicants with the same name, we add unique identifiers for applicants with the same name that is autogenerated.
    • Pull request #82
    • Pull request #110
  • New Feature: Added the ability to sort the job listings.
    • What it does: Allows user to sort the job listings according to certain fields.
    • Justification: This features allow user to have access to different views of the job listings.
    • Highlights: To make this feature extensible, Comparator class is created and future developers can extend this class to create new comparator logic.
    • Pull request #87
  • New Feature: Added the ability to sort the job listings.
    • What it does: Allows user to sort the job listings according to certain fields.
    • Justification: This features allow user to have access to different views of the job listings.
    • Highlights: To make this feature extensible, Comparator class is created and future developers can extend this class to create new comparator logic.
    • Pull request #87
  • New Feature: Added autocompletion feature in command box.
    • What it does: User can use TAB to autocomplete partially completed command.
    • Justification: This features allow user to be more efficient when typing command, to be faster when using GoodMatch.
    • Highlights: Need to add new commands to Autocompletion if there are new commands in the feature.
    • Pull request #111
  • Code contributed: RepoSense link

  • Project management:
    • Set up the project repository
    • Manage project configuration
    • Managed releases v1.2 - v1.4 (3 releases) on GitHub
  • Project management:
    • Reviewed most PRs in v1.2 and v1.3
  • Enhancements to existing features:
    • Updated the GUI color scheme (Pull requests #33, #34)
    • Wrote additional tests for existing features to increase coverage from 88% to 92% (Pull requests #36, #38)
  • Documentation:
    • User Guide:
      • Create draft user guide #29
      • Improve documentation coherentness, usability and language #220 #119
    • Developer Guide:
      • Add Delete Applicant use case#98
      • Add diagrams for undo and autocompletion #201
  • Community:
    • PRs reviewed (with non-trivial review comments): #16, #92, #59, #22, \31
    • Contributed to forum discussions (examples: 1, 2, 3, 4, 5)
    • Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)