Congratulations to the solvers of Riddle #1!
Tom Amel
Ben Maraney
The correct answer is:
before_create will not work because the user is still not saved and has no ID.
Since active record performs all callbacks in a single transaction with the original action, after_create is the most suitable one, since we probably want the user and profile creation to be performed in the same transaction. This will guarantee that if the profile fails to be saved, the user creation will rollback, and vice versa.