TPS Staffing

  • Full-Stack Development
  • LAMP Stack
  • Responsive Design
  • Senior Project

I designed and developed this application for my senior project (CIS 470) at DeVry University. The front-end and back-end were developed by me in accordance with UMLs, use case diagrams, and data flow diagrams. The MySQL database schema was written by my teammate in charge of data architecture and implemented by me. Coding the senior project was not required due to the course being eight weeks long with seven weeks to complete the project, but I felt that the project could be coded within that timeframe.

About Taylor Professional Services IT Temporary Services (TPS)

TPS is an Information Technology staffing service. When a TPS client company determines that it will need a temporary IT professional, it issues a staffing request to one of the TPS staffing agents.

Requirements Summary

TPS wants to improve its services by providing an online system for filling staffing requests. Currently, all staffing requests are made through the phone. Requests will include a short description of the job, skill(s) needed, offered salary, job location, and the date and duration of the job. A list of qualifying candidates (if any) will be sent to the client. Staffing agents will ensure each request is processed successfully by providing oversight of all requests.

Detailed Requirements

  • Steps
    1. Client fills out and submits staffing request.
    2. System searches for qualifying candidates based on information from the request and provides a list of all qualifying candidates to the client. The list will contain the candidate's Candidate ID Number, experience, preferred salary, education, and location.
    3. Client is notified to accept or decline staffing candidate list.
      • Client Accepts: Client prioritizes the candidate list by rearranging the order in which the candidates are listed (move on to next step).
      • Client Declines: Staffing request is put on hold until a new list can be generated for the request. The new list will follow this step. The client has the option to close the request at this point.
    4. Client submits the candidate list and waits for the request to be filled by a candidate.
    5. The candidate at the top of the list is notified to accept or decline the offer.
      • Candidate Accepts: Staffing request is marked as "filled" in the system, the client is notified (notification will incldue candidate's contact details), and the system closes the request.
      • Candidate Declines: Candidate provides reason, the client is notified, and the next candidate is placed at the top of the list. The next candidate will follow this step. Note: If all candidates decline the request, then the staffing request is put on hold until a new list can be generated for the request. The new list will follow Step 3. The client has the option to close the request at this point.

Samples

Home


The Home page is a simple and straightforward page with emphasis on getting users started with the service.

Login


The Login page is where the user can log in or sign up for an account.

All Requests
(as the client)


The All Requests page is where the client can go for an overview of all requests (e.g., open requests, requests filled, requests on hold, etc.).

Create Request
(as the client)


The Create Request page is where the client can fill out and submit a request to fill a position. Upon submission, a staffing candidate list will be sent in response.

Request Details
(as the client and request status is "open")


This is the Request Details page where the status of the request is "Open." This means the request is waiting for the client to accept or decline the staffing candidate list. The client can also prioritize the list by dragging and dropping the candidate information boxes. This feature exists to allow the client to choose the order in which candidates are contacted. In this sample, John Wick will be contacted first if the client accepts the list.

All Requests
(as the candidate)


The All Requests page is where the candidate can go for an overview of all requests (e.g., requests awaiting responses, accepted requests, etc.).

Requests Details
(as the candidate and request status is "fill pending")


This is the Request Details page where the status of the request is "Fill Pending." This means the request is waiting for a response from the candidate. Candidates will have the option to accept or decline a request.

Request Details
(as the client and request status is "filled")


This is the Request Details page where the status of the request is "Filled." This means the request has been accepted by a candidate. All filled requests will display the assigned candidate's information and the invoice total for the job.

Account Settings
(as the candidate)


The Account Settings page is where the candidate can update their contact information, password, education, qualifications, and job interests. The Job Interests section controls what types of requests they will see on their All Requests page.