Here's why:
* Future: The sentence indicates an action that will happen in the future (by the end of the year).
* Perfect: The use of "will have read" suggests the action of reading will be completed before a specific time in the future.
Therefore, "will have read" is in the future perfect tense.