You're right about training costs for college graduates. Another thing to consider which isn't directly mentioned in the post is training across a (programming) language difference. If someone is a C# developer and wants to join a company that uses Ruby or Scala, they might be willing to take a pay cut to get experience with new technologies.