I just started to work at a new company, and encountered a very strange system. For some reason the original designers imbedded the domain model as part of the actual busines data. In fact the whole architecture is driven by `codes` in tables. This is the 2nd time in my life that I encountered this kind practice, the first being a insurrance company I had the pleasure working at some 10 years ago.
Even then I thought it so wrong. It just ignores all best practices in building a proper relational data model. Compressing & folding whole object trees in special database fields.
Has anyone experience something similar. And how should such as system be handled. More to the point how should I as developer handle a situation where questions such as `why has this or that been done`, evokes answers such as: It is magic. It is to `optimize database access`. All of it sounds like utter bull. But me being the new guy is being forced in a way to just accept this.
Am I wrong? Or is just that another type of animal in the IT zoo?