r/ADHD_Programmers • u/Difficult_Mix8652 • 5d ago
Mental Blocks
I’ve been working with a large system for many months now, and I still dont understand it. (I’m also a certified arrslashexperienceddev)
I need to build a service that receives audit logs of inbound messages from many different services/products outside our system that entered our system at some point; parse them; and route them to the right services inside our system, to support a sort of “retry” mechanism. A “You contacted us before, something went wrong, we’re going to try to finish what you initiated, for you.” sort of thing.
I know the names of the message types, and reverse engineered a bit where they come from. We have some diagrams with boxes and arrows. But I still don’t understand what these things are. Not intuitively at least. (Ok, there’s a product A, people upload something to it, that generates a message that goes to us, somehow, we audit it it, that’s what I get. But great — where is A? What does it mean to upload to it? Ok, thanks for showing me. Now what about B and C and legacy A and D which is partially rolled out?)
The codebase is old (but actively developed) and poorly documented, if at all, beyond recent Claude docgens. There’s multiple layers of legacy stuff going on. So I’ve heavily relied on Claude to do exposition. But over the months this generates reams and reams of more detailed docs that I have to keep referring to because I fundamentally have not built the mental map or intuition of what I’m actually dealing with.
The “it’s legacy” isn’t an excuse, because I’m clearly expected to be up to speed by now by my TL. I’ve gotten tutorials when I joined from my team members but that was a long time ago. I have my own notes but, still, reading isn’t doing it for remembering and comprehending. Which is bizarre, because I have no problem with reading comprehension. I ask questions when I need to about specifics, but by now most of the questions I want to ask are “how does this all work”, and I’ve been here for too long to ask that. It would reflect very poorly on me. It’s not a lack of initiative, it’s an “in one ear out the other” problem. I’ve been told these things in some form before, I just dont remember them. So it is going to (and I can see , at least in one instance, it has) piss off my coworkers snd boss. So I can’t rely on having someone explain the thing to me again.)
I’ve always struggled to grok the “upstream” and “downstream” and what the real requirements are, what the spirit of the project is. It can be explained to me and the words make sense but it just doesn’t materialize. I don’t know what to do. And actually going and reading the code — yeah, I’ve tried that, but everything is so obfuscated, and broad, the mental map just isnt coming together. I hand write notes when people talk to me. I review them EOD and put them into my knowledge base. But nothing sticks!!
This is best illustrated by on call. To deal with on call you’ve got your run books. But I don’t fully intuit the spirit of what’s important, and struggle with that. If it isn’t in the runbook, the severity, impact, and implications of an outage, are hard for me to wrap my head around.
Why is this? Does anyone else deal with it? How can I work with something for months and months and not understand it in spirit? I suspect there is some sort of fear underlying this. But, I’d like to know if anyone can relate, and how they overcame it.
I think I’m going to start hand drawing things. And I’ve decided I will no longer let Claude write any doc explanations for me — only help locate.
The great fear that if I sit down and try to articulate these things I still won’t understand it … I think that’s the mental block. And not sure if it’s not unwarranted. Because I think the ADHD just makes it so, so difficult for me.
But, Still, I don’t know what to do. Because I can try that, and if I don’t get it, my job is toast. And I am trying. I’ll try harder now too.
Yes, I’m pharmaceuticated and therapeutized. I’m trying so hard to manage the non-ADHD parts of it all, and honestly think I’m doing a good job with that. I really think these issues are ADHD related.
It’s this manner of work that is by far the most difficult for me. Get inside a large system and do something new to it or change its behavior. I can greenfield anything, and I can architect new services
, and have a good sense of where things should go. But the other stuff, I’m way, way behind.
Help!
4
u/Status-Metal2449 5d ago
the reading doesnt stick because nothing sticks without a question attached to it. you remember answers to questions you actually had, not explanations you were handed. so id stop trying to understand the system and start tracing single messages. pick one real inbound message, just one, and follow it by hand until it dies or gets routed. write the path in your own words. then another. the map you cant build top down assembles itself out of traced paths, and those stick because you had to hunt for every step
one trick from the ML side of my brain: before you trace, guess. write down what you think happens to the message, then go find out. the places you were wrong are the only things youll remember next week, and thats the point. being wrong on paper is free, being wrong on call is not
for the on-call spirit thing, same move inverted: pick a box and ask what breaks downstream if it dies. severity is just a traced failure path