- Two programming languages: JavaScript and a Server Side languages (rails) in 5 months is not impossible.
- HTML/CSS/JS: A couple weeks.
- Databases: A couple days.
- Linux: Learn the commands on the go on these 5 months.
- Git: A night for the basic add/commit/push/pull. Maybe a couple more nights for branching.
- Unit Testing: A couple days at most.
To use an analogy (I deal with lots of business people, analogies help) You could teach someone to lay bricks to a good standard in 5 months, You could not teach them to be a safe civil engineer.
Not really. The average student takes 36 months. A more enthusiastic and invested one can perform better than the average in 5-6 months (in my opinion). Don't forget that the guy has industry experience even if it's not related to the field in question.