I'm currently in the second year of my apprenticeship as a software developer in Germany.
My day-to-day work consists of getting tasks, doing them and then handing them off to the customer (other departments at my workplace, no external customers). Basically, for all intents and purposes, my direct superiors (the other software developers) don't really interact with me unless they have tasks to delegate.
I started learning coding about 1,5 years ago, so I'm very sure my programming style and ability are nothing really to write home about. Besides occasional questions about our specific code base in the company, most/all of what I know comes from Stack Overflow and online tutorials.
I can't shake the feeling that I'm not a real developer, that most of what I deliver is complete garbage and the people in the other departments are just too polite to say it. Nobody here does code review, the other developers say they trust me not to mess up production data with silly mistakes. (I do my own deploying, we don't really have a process here, it's five developers, including me, in a bigger company).
My classmates in vocational school always tell me about how they're heavily supervised, and how they have people scrutinizing everything they write. It seems at my job that's not an option.
I try to find good coding practices and do unit testing, but I have no clue if it works. If people find outward function issues with what I produce, the people from the other departments come to me directly.
How do I get a grip on where I am in terms of ability and where I need to improve? I can't shake the feeling that I'm horrible at this and the people in my company are just too polite to tell me.