A developer has repeatedly shown an unwillingness to co-operate with the team in a few ways: being passive aggressive, sometimes not creating stories/tasks for the work he is actively doing, pessimistic and arguing about the way we point stories. This problem has been going on for months.
He tends to over-engineer things. This developer is overall a nice guy. He is a strong, intelligent developer and a hard worker.
IME, it's best to focus on the issues and not the people. I'm struggling with finding ways to point out the issues in this case without pointing at the person. I am the scrum master. I've been approached by another person on the team about at least some of these issues. Should I discuss these issues in retrospective or just pull the person aside and try to work it out between the two of us?