Reversing strings using recursion
In production Java code, you would never reverse a string using recursion, primarily due to efficiency concerns, and also because new StringBuilder(str).reverse().toString() is better.  Therefore, this question should be treated as an academic exercise — a quick test to weed out candidates who don't understand recursion at all.  I don't think that an optimal solution is required.

Basically, your solution is good enough.  That said…


I prefer your reverse() to reverseRecursively(), since I consider the recursion to be an implementation detail that doesn't need to be reflected in the name.
str is a more appropriate parameter name, since the function doesn't care whether the string is a word or not.
The way you sliced the string is less elegant than in the second solution.
I find your brace style slightly irksome.  (Normally I wouldn't say anything about it, but given how little code I have been given to evaluate, I'm judging you on that.)  Try to stick to the obsolete official Java style guide or Google's Java style guide, which is a close derivative of it.