Project: PleaseHireUs

PleaseHireUs (PHU) is a desktop app for managing internships, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, PHU can get your internship management tasks done faster than traditional GUI apps. Given below are my contributions to the project.

  • New Feature: Added the Position field
    • What it does: allows the user to record an internship position (Pull request #26).
    • Justification: Knowing the role one has applied for is important to identify the skills required for the job. This feature improves the product significantly as it can easily remind user which role he has applied for during the internship application.
    • Highlights: This addition affects existing commands and many test cases needed to be changed.
  • New Feature: Added the Date field
    • What it does: allows the user to record the date of the internship application deadline (Pull request #26).
    • Justification: Important dates (such as interview dates, test dates, etc.) are crucial components of an internship application. This feature improves the product significantly not only because it reminds the user about important dates, but also because it helps prevent any schedule clashes.
    • Highlights: This addition affects existing commands and many test cases needed to be changed.
  • New Feature: Added the ApplicationProcess field
    • What it does: allows the user to record the current state of the internship application process (Pull request #26).
    • Justification: Knowing which stage of application one is currently at is important to prepare accordingly. This feature improves the product significantly since it reminds the user which stage of the application they are currently at.
    • Highlights: This addition affects existing commands and many test cases needed to be changed.
  • New Feature: Added the Website field
    • What it does: allows the user to record the website containing the details for the internship (Pull request #26).
    • Justification: To allow user to easily access more details about the internship, if there is any.
    • Highlights: This addition affects existing commands and many test cases needed to be changed.
  • New Feature: Added keyboard shortcuts for the help window
    • What it does: allows the user to close the help window and copy the user guide url link without any mouse usage (Pull request #141).
    • Justification: As an app that is optimized for use via CLI, we strive to minimize the need of a mouse to reduce the number of switches between keyboard and mouse.
  • Code contributed: RepoSense link

  • Enhancements to existing features:
    • Wrote additional tests to increase coverage (Pull request #64)
    • Updated help command to display the command summary and execute automatically when user run the app for the first time (Pull request #77)
    • Made small changes to the GUI to make it more user-friendly (Pull requests #102, #130)
    • Fixed bugs from Practical Examination Dry Run (Pull requests #176, #214, #215, #217, #224)
  • Documentation:
    • User Guide:
      • Added documentation for add (Pull requests #29, #68)
      • Added documentation for help (Pull request #141)
      • Added the glossary section (Pull request #138)
    • Developer Guide:
      • Added use case for add internship (Pull request #29)
      • Added use case for view help (Pull request #90)
      • Modified ModelClassDiagram to reflect current implementation and its description (Pull requests #90, #145)
      • Added manual test case for add and help command and updated value proposition (Pull request #112)
      • Added add command proposed implementation section and created the AddSequenceDiagram (Pull request #145)
  • Community:
    • Reported an above-average number of bugs in the PE-D (Examples: Bug #2, Bug #4)
    • PRs reviewed (with non-trivial review comments): #38, #225