It depends. The term 'developers' is used to describe different roles all around the world, and there are thousands of these roles. Those roles are filled with lots of individuals. Some of those individuals would make good testers, some wouldn't. You can't just simply say developers do or do not make good testers.
Almost anyone, including a developer, can be a "good" tester if given the proper training and tutelage. But to be an "excellent" tester it takes a lot of experience and devotion. A few have the abilities already; many do not and have to develop them.
I have found that the majority of developers having many years of experience in their trade have become "set" in their ways and do not have testing abilities but can learn them if they really desire to test.
Success is the ability to go from one failure to another with no loss of enthusiasm.
~ Winston Churchill ~