In Chapter 13: Email Services with the Force Platform, you learned how to use email to extend the recruiting application. In this section, you go one step further and create public Web pages to accomplish similar goals. If you want to let public users apply online for open positions, you need to create a new Visualforce page, named PublicJobApplication, to accept applications.
Use the standard controller for the Candidate object, and create a new extension controller, named myPublicJobApplicationExtension, to do the following:
Create a new Candidate record
Attach the uploaded resume file to the Candidate record
Create a new Job Application record that’s linked to the Position and Candidate records ...