We sacrifice the art of writing good and performant code for the short term gains of improving developer productivity.
Annotations can be powerful but only when used to add context and information to the code. But trying to configure your application with them is nothing less that a crime.
When you have to spend hours and hours and mostly on night, weekends and your anniversaries you ask yourself what could I have done better during development to make this all go easy on me.
Thread Dumps are you best friend when a production application (Java) crashes and if you can enable it to tell you something about the application then thats something. Here I have explained how and have included a bunch of Java Code you can reuse.