Agree with the answer by @PeteCon.
You might be going into a defensive mode, because it is your code and somewhat a reflection of your skill. You say, there is no regard to the constraints you were facing at the time of writing, but that does not really matter. Bad code is bad code. If you created something functional, but not maintainable, then there is refactoring to do. This does not mean that putting out something that works in a short period of time wasn't an achievement.
As mentioned in the other answer, you need to stop doing full time coding and transition into managing resources. Also I strongly disagree with you thinking that your devs working on strictly separated pieces of your codebase is a good thing - it is not! If you want to effectively adopt things like code reviews, where devs can start reviewing each other's merge requests, then they should be familiar with the codebase they are reviewing. In addition you are creating islands of knowlegde and when one of your devs eventually leaves, there will be no one understanding how their implementations work, because no one worked with their part of the codebase and no one ensured quality, readability and documentation of their code via review.
I would like to share an exprience, because it sounds very similar to your story.
The Tale of Technical Debt
Back in the day i joined a tech startup. It was my second part time IT job, I was still attending university at the time. The team was great and I liked my tasks, but there were some organizational issues.
The lead dev was one of the greatest and most experienced persons I ever worked with. Very skilled, very knowledgeable. Their projects were also their baby. I suspect they could have held a much better position with much much higher salary, but they loved their project and remain there to this day to my knowledge. It was also pumped out with amazing speed, faster than I could have, but thus it came with a lot of technical debt.
Over time more students and non-students joined the dev ranks, but the lead kept working on the codebase, because this is what they liked doing and I get that. But with more and more projects they just started to burn. Later and later evenings, trying to finish this, trying to finish that, coding and maintaining servers on weekend, on vacation, during sick leave and so on.
Meanwhile company policy had no review or testing protocols in place. Several devs myself included asked the lead for less coding and more managing, because we needed proper versioning structure, proper repository organization and so on, but that just did not come to be. They genuinely promised we would, but were always to overloaded with work to do DevOps.
And so, two things developed. One thing were islands. I maintained my project, which was a large source of income for the company, as a student on my own. I knew all the secret paths, all the code intricacities, but there was not enough time to do all that was asked. Pumped out features, tried to find some organization in the repository, did customer support and kept putting out fires. The second thing - our codebase deteriorated. Nobody reviewed my code, nobody could at some point, there was zero time for documentation and always ad hoc patchwork.
This was also true for other colleagues.
So everything slowed more and more w.r.t. feature development on all but the newest projects, because ever more technical debt started to take its toll and we were under constant pressure from management. Psychologial pressure. I once caught a colleague crying in the bathroom, talked a bit to them, realized that I have been offloading my stress on my family and my partner for almost a year - and decided it was time to leave.
To this day I am ashamed to leave this codebase behind in such a messy state, because I worked a lot on it, a lot of it is stuff I put in. But if you ever only do patchwork, quick and dirty stuff and so on, then your code becomes an irredeemabe mess. As i quit, a few other people left as well. Another two islands. No one was ever familiar with their codebases, except the lead to a degree.
The conclusion of this tale - these projects are mostly dead. The company still makes money of them afaik, but there have been no further development, except for some things the lead may have changed. The positions stayed vacant, newly hired devs apprently were unable to keep maintaining the respective codebases.
Now I am working in a company with proper code reviews, testing, automated pipelines, process.. it is so good. Sure we have our specialties in the codebase, but there is effectively no island knowledge at all, besides there are code reviews, so no code ever reaches the master branch, that has not been seen by someone else. My mental health w.r.t. to my workplace improved as well and my skills are a lot sharper now too.
I understand, criticism to your work is hard to deal with emotionally, but you should see critique as a good thing, that means your devs may improve the codebase, because they see things that could be different. Don't create codebase islands, because you will lose people at some point and don't try to fix everything yourself, you will work yourself into the ICU.