TheNegotiator: Project Implemenation

Last week I motivated the need for The Negotiator, a tool to ease the uncomfortable process of salary negotiations. The idea is that up-to-date information along with targeted experience-based salary predictions empowers those of us who feel a little bit less than excited about the prospect of negotiating one’s own salary.

The following details the project goals in terms of application input and output and also how I envision implementing that in the project code.

Project Goal:

  1. Input: The user provides occupation, location and number of years of experience.
  2. Output: The Negotiator returns a targeted salary along with a fair salary range.

Project Implementation:

  1. Access the Bureau of Labor Statistics [API](http://www.bls.gov/developers/).
    1. Access salary data for requested information (occupation and location).
    2. Return to the recommender engine input the mean and min/max values for salary (or median, standard deviation, etc.)
    3. Report values and visualize information to user.
  2.  Calculate a targeted salary for user by incorporating number of years of experience. (This can be done by simply assuming the salaries are normally distributed and have a one-to-one mapping for years of experience and salary.)
    1.  Create a normal distribution with mean or median equal to the salary mean and spread equal to the range or standard deviation of reported salaries.
    2. This range is mapped as the min equals to zero years of experience and the max equals 20 years of experience.
  3. (Optional)
    1. Widgets
    2. Application
    3.  Is 20 years fair?