By: Team 15-3
Since: Feb 2019
Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Applicants Related Features
- 3.1.1. Import Resumes to slaveFinder() :
importResumes
- 3.1.2. Open CV for potential applicants :
openCV
Coming in v2.0
- 3.1.3. Adding a person:
add
- 3.1.4. Listing all persons :
list
- 3.1.5. Editing a person :
edit
- 3.1.6. Locating persons by name:
find
- 3.1.7. Deleting a person :
delete
- 3.1.8. Clearing all entries :
clear
- 3.1.1. Import Resumes to slaveFinder() :
- 3.2. Job Related Features
- 3.2.1. Create a Job Hiring Process:
createJob
- 3.2.2. Delete the Job Hiring Process :
deleteJob
- 3.2.3. Displays one of the four persons list in a job :
displayJob
- 3.2.4. Add all shown persons in a list to another list :
addAll
- 3.2.5. Adds people using by index to a selected list in a Job :
movePeople
- 3.2.6. Adds people using by index to a selected list in a Job :
remove
- 3.2.7. Select people into "Interview" List:
selectInterview
Coming in v2.0
- 3.2.8. Select people into "To be sent to boss" List:
selectfinal
Coming in v2.0
- 3.2.9. Generate a final report for the Job Hiring Process :
report
Coming in v2.0
- 3.2.1. Create a Job Hiring Process:
- 3.3. Filter Related Features
- 3.4. Analytic Related Features
- 3.5. Interview Related Features
- 3.5.1. Generate Interview Dates :
generateInterviews
- 3.5.2. Generate Interview Dates for a particular job :
generateInterviews jn/[JOB_NAME]
Coming in v2.0
- 3.5.3. Clear Interview Dates :
clearInterviews
- 3.5.4. Clear Interview Dates for a specified job opening :
clearInterviews jn/[JOB_NAME]
Coming in v2.0
- 3.5.5. Set maximum number of interviews a day :
setMaxInterviewsADay [NUMBER]
- 3.5.6. Set block out dates for interviews :
setBlockOutDates [DD/MM/YYYY] OR [DD/MM/YYYY - DD/MM/YYYY] OR [DD/MM/YYYY], [DD/MM/YYYY - DD/MM/YYYY]
- 3.5.7. Show interviews dates :
showInterviews
- 3.5.8. Show interviews dates for a job opening :
showInterviews jn/[JOB_NAME]
Coming in v2.0
- 3.5.9. Reschedule Person for interview:
move jn/[JOB_NAME] nric/[NRIC] [FROM_DATE(dd/mm/yyyy)] [TO_DATE(dd/mm/yyyy)]
Coming in v2.0
- 3.5.10. Save interviews data
Coming in v2.0
- 3.5.1. Generate Interview Dates :
- 3.6. Other Basic Command
- 3.1. Applicants Related Features
- 4. FAQ
- 5. Command Summary
1. Introduction
slaveFinder() is a resume management application that helps recruiters manage most of the hiring process.
The application is optimized for those who prefer to work with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, slaveFinder() can get your resume management tasks done faster than traditional GUI apps.
Interested? Jump to the Section 2, “Quick Start” to get started or Section 5, “Command Summary” for the list of commands. Enjoy!
2. Quick Start
-
Ensure you have Java version
9
or later installed in your Computer. -
Download the latest
addressbook.jar
here. -
Copy the file to the folder you want to use as the home folder for your Address Book.
-
Double-click the file to start the app. The GUI should appear in a few seconds.
-
There are two main Screen for this Software.
All Jobs Screen: Two main list will show in this screen, one is for all applicants, the other is for all jobs openings.Job Detail Screen: Four main lists will show in this screen, they are all applicants list and represent four stages of hiring process in a specific job.
-
The GUI should start with some data preloaded to allow easier trying out of system
-
Type the command
clear
to start with an empty addressbook instead. -
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
add n/John p/91757536 nric/S8761230Q e/john@example.com a/123 Disneyland g/Male r/Malay m/Psychology s/NUS gr/4.33 j/Manager
: adds a person namedJohn
to all applicants database. -
createJob jn/Manager
: creates new job openingManager
. -
addAll a jn/Manager
: adds all applicants in the database to theapplicants
list of jobManager
. -
displayJob jn/Manager
: displays the selection process for job openingManager
-
list
: Goes back to the list of all applicants and job openings.
-
-
Refer to Section 3, “Features” for details of each command.
3. Features
Command Format
-
Words in
UPPER_CASE
are the parameters to be supplied by the user e.g. inadd n/NAME
,NAME
is a parameter which can be used asadd n/John Doe
. -
Items in square brackets are optional e.g
n/NAME [pj/PASTJOB]
can be used asn/John Doe pj/Software-Engineer
or asn/John Doe
. -
Items with
…
after them can be used multiple times including zero times e.g.[pj/PASTJOB]…
can be used aspj/Software-Engineer
,pj/Software-Engineer pj/Web-Developer
etc. -
Parameters can be in any order e.g. if the command specifies
n/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable. -
But INDEX and FILTERLISTNAME should always be put follow on command word (preamble). INDEX and LISTNAME don’t have prefix before. e.g.
n/NAME INDEX
,n/NAME FILTERLISTNAME
are not allowed
3.1. Applicants Related Features
3.1.1. Import Resumes to slaveFinder() : importResumes
Given input resume txt files in placed in the specified folder, reads all the resumes and saves them into slaveFinder().
Format : importResumes path_to_folder
Examples:
-
importResumes C:\Users\MyName\Desktop\MyResumes
Imports all resumes in the given path -
To try this command with 1000 resumes, use the folder
CVFolder
found in the zip file of slaveFinder()'s release.
3.1.2. Open CV for potential applicants : openCV
Coming in v2.0
Opens the real CV provided in Resume Form of applicants
Format: `openCV [FILTERLISTNAME] INDEX `
Examples:
-
openCV 1
Opens the CV of the 1st applicants showing on All Allicants List -
openCV applicant 2
Opens the CV of the 2nd applicants showing on Allicants List in Job Detail Screen.
3.1.3. Adding a person: add
Adds a person to the address book
Format: add n/NAME p/PHONE_NUMBER nric/NRIC e/EMAIL a/ADDRESS g/GENDER r/RACE m/MAJOR s/SCHOOL gr/GRADE j/JOBS_APPLY
Examples:
-
add n/John p/91757536 nric/S8761230Q e/john@example.com a/123 Disneyland g/Male r/Malay m/Psychology s/NUS gr/4.33 j/Manager
-
add n/Betty p/123 nric/S4444455Y e/betty@bet.com a/321 USS g/Female r/Others m/Life Science s/NTU gr/0.44 j/Helper is/1,2,1,10,5 kpl/Java pj/Chief-Executive-Officer
3.1.4. Listing all persons : list
Shows a list of all job openings and applicants in slaveFinder().
Format: list
-
Useful after using filter/displayJob which shows a subset of the all applicants list.
3.1.5. Editing a person : edit
Edits an existing person in slaveFinder().
Format: edit INDEX n/NAME p/PHONE_NUMBER nric/NRIC e/EMAIL a/ADDRESS g/GENDER r/RACE m/MAJOR s/SCHOOL gr/GRADE j/JOBS_APPLY
Examples:
-
edit 1 p/91234567 e/johndoe@example.com
Edits the phone number and email address of the 1st person to be91234567
andjohndoe@example.com
respectively. -
edit 2 n/Betsy Crower
pj/Manager
Edits the name of the 2nd person to beBetsy Crower
and clears all existing past jobs and replace it with 'Manager".
3.1.6. Locating persons by name: find
Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Examples:
-
find John
Returnsjohn
andJohn Doe
-
find Betsy Tim John
Returns any person having namesBetsy
,Tim
, orJohn
3.1.7. Deleting a person : delete
Deletes the specified person from slaveFinder().
Format: delete INDEX
Examples:
-
list
delete 2
Deletes the 2nd person in slaveFinder(). -
find Betsy
delete 1
Deletes the 1st person in the results of thefind
command.
3.1.8. Clearing all entries : clear
Clears all entries from slaveFinder().
Format: clear
3.2. Job Related Features
3.2.1. Create a Job Hiring Process: createJob
Create a Job hiring process with four person lists: "Applicants", "KIV", "Interview", "Shortlist".
Format : createJob [jn/JOBNAME]
3.2.2. Delete the Job Hiring Process : deleteJob
Delete a Job Hiring Process and all its information
Format : deleteJob [jn/JOBNAME]
3.2.3. Displays one of the four persons list in a job : displayJob
Displays a Job
Format : displayJob [jn/JOBNAME]
3.2.4. Add all shown persons in a list to another list : addAll
Adds all currently shown people in source list to the destination list
Format : addAll TO FROM(Optional) [jn/JOBNAME](Optional)
Examples:
-
list
createJob jn/Lecturer
-
addAll applied jn/Lecturer
addAll adds all in database to Lecturer Job -
addAll kiv applied jn/Lecturer
addAll adds all in applied list to kiv list in lecturer
3.2.5. Adds people using by index to a selected list in a Job : movePeople
Moves a few people specified by index from a specified list to another list in a job.+ Format : `movePeople TO FROM INDEXES [jn/JOBNAME]`
Examples:
-
list
createJob jn/Lecturer
-
movePeople applied 1, 2 jn/Lecturer
moves persons with index 1 and 2 to applied list in Lecturer -
displayJob jn/Lecturer
-
movePeople kiv applied 2
moves person 2 in applied list to kiv list in Lecturer
3.2.6. Adds people using by index to a selected list in a Job : remove
Removes people from a specific list in Job+ Format : `remove FROM INDEXES [jn/JOBNAME]`
3.2.7. Select people into "Interview" List: selectInterview
Coming in v2.0
Select people from display board to the Job Hiring Process’s "Interviewed" list
Format : selectInterview [INDEX] [INDEX-INDEX] [all]
Examples:
-
selectInterview 2-10
Selects the 2nd person to 10th people to the "Interview" list. -
selectInterview 2 4
Selects the 2nd person and 4th people to the "Interview" list. -
selectInterview all
Selects all the people on the Person Display List to the "Interview" list.
3.2.8. Select people into "To be sent to boss" List: selectfinal
Coming in v2.0
Select people from display board to the Job Hiring Process’s "To be sent to boss" List
Format : selectInterview [INDEX] [INDEX-INDEX] [all]
3.2.9. Generate a final report for the Job Hiring Process : report
Coming in v2.0
Generate report.txt
to show 3 categories of applicants for a specific role:
"Applied", "Interview", "To be sent to boss". in a Job Hiring Process.
Format : report JOBNAME
3.3. Filter Related Features
3.3.1. Filter results : filter
Filter the people displayed on the Person List. Each filer has a name and can be delete, diplay result always base on all filter request.
Format: filter [FILTERLISTNAME] fn/FILTERNAME [n/NAME] pp/PHONE_NUMBER] [nric/NRIC] [e/EMAIL] [a/ADDRESS] [g/GENDER] [r/RACE] [m/MAJOR] [s/SCHOOL] [gr/GRADE] [is1/INTERVIEWSCORESQ1] [is2/INTERVIEWSCORESQ2] [is3/INTERVIEWSCORESQ3] [is4/INTERVIEWSCORESQ4] [is5/INTERVIEWSCORESQ5] [j/JOBS_APPLY]… [kpl/KnowPROGLANG]… [pj/PASTJOB]…
Examples:
-
filter fn/nus s/nus
Shows all persons whose school is NUS in All Applicants List. -
filter fn/nus s/nus m/CS
Shows all persons whose school is NUS and major is CS in All Applicants List. -
filter fn/nus s/nus
filter fn/CS m/CS
Shows all persons whose school is NUS and major is CS in All Applicants List. -
filter fn/grade gr/4.8-5.0;3.0-3.1
Shows all persons whose grade in range of [4.8,5.0] or [3.0,3.1] in All Applicants List. -
filter Interview fn/nus s/nus
Shows all persons whose school is NUS in Interview List in Job Detail Screen.
3.3.2. Delete a Filter : deleteFilter
Delete a filter showing on the display board and renew the update display people list.
Format: deleteFilter [FILTERLISTNAME] FILTERNAME
Examples:
-
filter fn/nus s/nus
Shows all persons whose school is NUS in All Applicants List. -
deleteFilter nus
Shows all persons in All Applicants List. -
filter Interview fn/nus s/nus
Shows all persons whose school is NUS in Interview List in Job Detail Screen. -
deleteFilter Interview fn/nus
Shows all persons in Interview List in Job Detail Screen.
3.3.3. Clear a Filter List: clearFilter
Clear a filter showing on the display board and renew the update display people list.
Format: clearFilter [FILTERLISTNAME]
Examples:
-
filter fn/nus s/nus
filter fn/CS m/CS
Shows all persons whose school is NUS and major is CS in All Applicants List. -
clearFilter
Shows all persons in All Applicants List. -
filter Interview fn/nus s/nus
filter Interview fn/CS m/CS
Shows all persons whose school is NUS and major is CS in Interview List in Job Detail Screen. -
clearFilter Interview
Shows all persons in Interview List in Job Detail Screen.
3.4. Analytic Related Features
3.4.1. Display Analytics : analytics
Display the analytics of applicants for desired job list (applicant, kiv, interview, shortlist) or all applicants.
Format : analytics LISTNAME
or analytics
(for all applicants)
Examples:
-
analytics applicant
-
analytics kiv
-
analytics
3.5. Interview Related Features
3.5.1. Generate Interview Dates : generateInterviews
Generate interview dates for all applicants in slaveFinder(). Interview dates cannot be generated again if they are already present. Dates generated exclude weekends and block out dates(see below).
3.5.2. Generate Interview Dates for a particular job : generateInterviews jn/[JOB_NAME]
Coming in v2.0
Generate interviews for applicants of a particular job in slaveFinder(). Interview dates cannot be generated again if they are already present. Dates generated exclude weekends and block out dates(see below).
3.5.3. Clear Interview Dates : clearInterviews
Clears the list of generated interview dates.
3.5.4. Clear Interview Dates for a specified job opening : clearInterviews jn/[JOB_NAME]
Coming in v2.0
Clears the list of generated interview dates for the specified job.
3.5.5. Set maximum number of interviews a day : setMaxInterviewsADay [NUMBER]
Sets the maximum number of interviews to be generated in a day.
3.5.6. Set block out dates for interviews : setBlockOutDates [DD/MM/YYYY] OR [DD/MM/YYYY - DD/MM/YYYY] OR [DD/MM/YYYY], [DD/MM/YYYY - DD/MM/YYYY]
Sets the block out dates(unavailable dates) which the interviewer is not available for interviews to be scheduled.
3.5.7. Show interviews dates : showInterviews
Shows the list of dates which the interviewees in slaveFinder() are assigned. (Show is not considered an operation in terms of undo/redo, therefore when undo, the previous command before showInterviews is called)
3.5.8. Show interviews dates for a job opening : showInterviews jn/[JOB_NAME]
Coming in v2.0
Shows the list of dates which the interviewees for the state job in slaveFinder() are assigned to.
3.5.9. Reschedule Person for interview: move jn/[JOB_NAME] nric/[NRIC] [FROM_DATE(dd/mm/yyyy)] [TO_DATE(dd/mm/yyyy)]
Coming in v2.0
Reschedules a person scheduled to a particular date to another date. If to date is not present, the person is removed from that date.
3.5.10. Save interviews data Coming in v2.0
Scheduled interviews is automatically stored in a json file.
3.6. Other Basic Command
3.6.1. Viewing help : help
Format: help
3.6.2. Listing entered commands : history
Lists all the commands that you have entered in reverse chronological order.
Format: history
Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. |
3.6.3. Undoing previous command : undo
Restores the address book to the state before the previous undoable command was executed.
Format: undo
Undoable commands: those commands that modify the address book’s content ( |
Examples:
-
edit 1 n/Johnny
list
undo
(reverses theedit 1 n/Johnny
command)
3.6.4. Redoing the previously undone command : redo
Reverses the most recent undo
command.
Format: redo
Examples:
-
edit 1 n/Johnny
undo
(reverses theedit 1 n/Johnny
command)
redo
(reapplies theedit 1 n/Johnny
command) -
edit 1 n/Johnny
redo
Theredo
command fails as there are noundo
commands executed previously. -
edit 1 n/Johnny
clear
undo
(reverses theclear
command)
undo
(reverses theedit 1 n/Johnny
command)
redo
(reapplies theedit 1 n/Johnny
command)
redo
(reapplies theclear
command)
3.6.5. Exiting the program : exit
Exits the program.
Format: exit
3.6.6. Saving the data
Address book data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
4. FAQ
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous Address Book folder.
5. Command Summary
-
Add
add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS g/GENDER r/RACE m/MAJOR s/SCHOOL [pj/PAST_JOB]… `
e.g. `add n/James Ho p/22224444 e/jamesho@example.com a/123, Clementi Rd, 1234665 g/Male r/Chinese m/MATH s/NUS pj/Professor t/friend t/colleague -
Clear :
clear
-
Delete :
delete INDEX
e.g.delete 3
-
Edit :
edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [g/GENDER] [r/RACE] [s/SCHOOL] [pj/PAST_JOBS] `
e.g. `edit 2 n/James Lee e/jameslee@example.com -
List :
list
-
Help :
help
-
History :
history
-
Undo :
undo
-
Redo :
redo
-
Generate Interviews :
generateInterviews
-
Set maximum number of interviews a day :
setMaxInterviewsADay[MAX_NUM_INTERVIEWS]
-
Set block out dates for interviews : `setBlockOutDATES[DD/MM/YYYY OR DD/MM/YYYY - DD/MM/YYYY]
-
Clear interviews dates :
clearInterviews
-
Read to slaveFinder() :
readAll
-
Get ranked list :
getRankedList
-
Filter search results :
filter [FILTERLISTNAME] [fn/FILterName] [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [g/GENDER] [r/RACE] [s/SCHOOL] [pj/PAST_JOBS] `
e.g. `filter fn/Chinese r/Chinese -
Delete Filter search results : `deleteFilter [FILTERLISTNAME] [fn/FILterName] `
e.g. `deleteFilter fn/Chinese ` -
Clear Filter search results : `clearFilter [FILTERLISTNAME] `
e.g. `clearFilter ` -
Display Hiring Process :
displayProcess
-
Display Analytics :
analytics LISTNAME
oranalytics
-
Create Job :
createJob [jn/JOBNAME]
-
Delete Job :
deleteJob [jn/JOBNAME]
-
Display Job :
displayJob [jn/JOBNAME]
-
Add All :
addAll TO FROM(OPTIONAL) [jn/JOBNAME](OPTIONAL)
-
Move People :
movePeople TO FROM(OPTIONAL) INDEXES [jn/JOBNAME](ONLY ON DEFAULT SCREEN)
-
Remove : 'remove FROM INDEXES [jn/JOBNAME]'