Some context: I'm a newly hired developer (1.5 years) at a software testing company. For a while things were going great. I was able to dive in relatively quickly, but there have been some speed bumps.
In particular, I wrestle a lot with our codebase. It's particularly hairy (being written in C++, Ada and Python) and it's 20 years old at this point. Most frustratingly, there is very little to no established code ownership in a tool that spans over 1.5 million LOC. There is sort of an ad hoc understanding -- the tool can be separated into various modes, and same people tend to work on the same modes, but it's not always the case.
Recently, I've been asked to change, in a fundamental way, a part of the tool that is used in every single mode. I've designed and implemented changes to features before, but nothing this complicated. My boss seems very confident in my ability to do it, but it took me over a month to understand exactly how it would affect "my" part of the tool, and implement the change there.
Now, despite multiple attempts to ask my boss for help implementing the work in other parts of the tool, he insists that I must learn them and do it myself. I voiced concerns about code ownership, and maybe asking the people who work in that area to do some of it, but the response was that "they are busy and this is your task." It was made clear that I can ask questions, but as far as my main task, I'm on my own.
He's aware of how big this change is. He even says it himself, and tells me not to be hard on myself if it's taking a while. But despite his sympathies, the project just isn't getting done. There's just so much code, I can't even comprehend it all. Sometimes I will spend an entire day trying to map out a completely different part of the tool, trying to understand how my change will affect it, and I'll go home having accomplished almost nothing. Sometimes I'll make a design mistake, realize it, and have to completely start over. I walk in the next day, sit down, look at my notes and sigh. Hopefully I'll write some code.
On the rare occasion I get assigned a different task, I always knock it out quickly because it just feels like a breath of fresh air, but when I even think about my main task, it's so demoralizing that it makes me to want to find a new job.
How can I manage the stress of feeling like I'm not accomplishing anything, and more importantly, deal with a project which I feel is too large for me to take on?
ETA: my boss used to be the technical lead for 16 years. I don't think his lack of technical know-how is the issue here.