Hey all, apologies in advance for any typos or grammar mistakes, im writing this on my phone. I'm a pretty Jr. developer with about 1YOE all things considered. Im entirely self-taught. I did a few months at an agency mainly writing JS and Python, I did a few months of contract work writing Elixir, and I've been in my current position for about 6 months, mainly writing TS.
I left the agency due to getting a better offer (my current job) and chose not to renew my contract at the Elixir shop for the same reason, I didn't want to overstretch and decided to focus fully on my new role. I've never been reprimanded or spoken to about my performance in any of these roles.
At the agency, the code I wrote was typically standalone. Small client apps in React or simple Python servers. Small, one-off tasks that didn't need to be maintained or integrate with any existing systems. This is where I feel I shine.
My current role, however, is the complete opposite. Our product is massive, and spread out over dozens of repositories and interconnected dependencies. The client, a gargantuan react app, in particular, has been a struggle for me to understand and be productive in. This has been a theme in my personal projects as well. I can write a simple react app and a server for it to talk to. Perform basic CRUD ops and the like, etc. But as soon as I wanted to do anything more complex or integrate with external dependencies I would begin to get bogged down.
I'm beginning to feel like I'm just fundamentally incapable of fully grasping and working within large interconnected systems. And the unfortunate reality is that most dev jobs I'm aware of necessitate it.
I know "imposters syndrome" gets thrown around a lot for developers who feel like they have no clue what they're doing, but are actually quite talented. I'd love to apply that label to my current situation, but I just don't know if it'd be accurate. I know that I can do some things really well. I know that, in some ways at least, I'm an excellent developer. I just feel that in one of the most important and fundamental ways (understanding complex systems), I'm very much lacking.
Any input or advice would be welcomed and appreciated. I'm not sure what, if anything, I can do to improve my proficiency in this area but I'm willing to try what I can.
Don't be afraid to switch roles though if 6 months in you still don't enjoy the work. It's not a necessity to work on large codebases.