I work with a senior developer with more 15 years of experience - we'll call him Paul - who displays a very careless attitude, and demonstrates a complete disregard for other people's time and patience (which he abuses). Here are a few examples of daily occurrences with Paul:
Example 1: Misreads tickets and feeback
- Ticket says: Implement feature X for classes A, B, C and D
- Paul implements that for classes A and C only.
- PR reviewer flags that classes B and D are still missing the feature
- Paul now implements feature X for classes A, B and C (D is still ignored)
Example 2: Carelessness in implementing feedback
- Paul submits duplicate files x and y.
- He is notified that x and y do the same thing, but that only x is active, and asked to delete file y
- Paul agrees to file y, but then goes on to delete file x and break the project instead
Example 3: Bugs the team for trivial reasons
- Paul asks where a method is defined in a Ruby repository on the team channel
- I run the appropriate query and find the file for him in seconds. I understand that he might have forgotten the appropriate syntax, but that is something which he should look up and remember, as it very useful on an almost daily basis.
Consequences
His mistakes are costing the team time, and his many trivial inquiries are both an annoyance and a clear display or carelessness (or even laziness) on his part. Our very tactful managers have given him plenty of constructive feedback, being careful not to hurt his morale and self esteem, and plenty of time to improve, but these types of mistakes seem to just be his nature.
While I'm trying to remain professional in my dealings with him, I'm also losing my patience.
How can I best deal with someone like himself in a work environment?