I am a programmer with ADHD. I was dyslexic as a child, but grew out of it as far as I can tell.

I have two patents in machine learning, and have been a critical member of multiple "best of the best" teams at a few large software organizations. I am considered a 10x developer.

The negative effects of ADHD are mitigated by medication and techniques you learn with dedication over the course of your professional life. I take Ritalin daily.

I am more creative than my peers. I also have honed skills in graphic design, scientific research, and management. My passion is for building systems that do things that have not been done before. Some projects are user interface focused, some are strictly back-end processing. All have to do with solving a previously unsolved problem. I work mainly in R&D. I am highly paid.

I not good at repetitive (busy) work, so I automate all of that. Automating repetitive work is not repetitive. This is the only remaining negative that I can't shake. I have an immense respect for manual QA testers, that's a job I incapable of doing well.

The biggest differences I've found between myself and coworkers are my capacity for hyper-focus, superior long term memory, and superior spatial thinking capability.

When I set in on something it becomes an obsession. If I am awake, I am working. I can't stop designing/architecting/debugging/evolving, even if I wanted to. I am working while I brush my teeth. I am working while I'm watching a movie. I dream about work. If I am not challenged, I feel like I start to die.

I generally remember anything interesting I read instantly. I'll remember it for years. When I am working through a problem, I have pretty immediate recall of everything related I've read (which I can apply immediately). I read the code of programmers I respect in my free time. I like to memorize documentation as well. My short term memory is garbage.

I can see any working system I've memorized or written in my head, running. I can try changes or new ideas and see their effects without consulting the computer. There is a limit to this, and I write my code to limit the size of any given sub-system to that limit.

My code has a distinct style to it. Some co-workers complain, some love it. No-one can argue with its performance (or my speed in producing it). I write using the entire language, not just the "normal" subset that everyone memorized for technical interviews. I also use a lot of math. A final polish phase to "normalize" code (minimize fringe concepts) is part of my work-flow to avoid consternation from the maintenance team. I want everyone to be happy. Bugs in my code are rare (I am meticulous and bug-paranoid), and I can fix them very quickly. I do not write test cases, but I do write with the debugging interface in mind.

I don't believe ADHD is a disability, I do however believe that individuals with ADHD have to work differently than individuals without. ADHD itself is just a collection of symptoms, and those symptoms are just differences. I am not aware of a chemically ADHD test. Things that are easy for others may be very difficult for those with ADHD. Luckily, things that are very difficult for those without ADHD are sometimes very easy for those with ADHD.

If you have ADHD, it is important to find those difficult things you do well, and design the growth of your career around doing them as often as possible (so others will forgive your growing pain in areas where you are deficient). Anything you're terrible at you'll have to fastidiously practice, or write your own way out of it (make sure that your way is an accepted solution). I keep my ADHD a secret unless specifically asked about it. There are a lot of stigmas attached.