I'm not the only Senior who is better at building product than solving technical coding challenges, right?
Something I've noticed while prepping for interviews, even while employed, is that I'm much better at building products than I am at solving random coding challenges. Need me to build and deploy a full stack app from a set of requirements? No problem. I can put the pieces together, hit the requirements, and deploy it.
Ask me to implement a sliding window, BFS, or DFS from memory though, and my brain just locks up. I understand the concepts, but translating them into code without Googling or referencing something else is almost impossible.
I have 8 years of experience across three companies, and when I struggle when prepping with mock coding interviews it honestly makes me feel like a bad software engineer. Then I think back on my career, and almost none of my day to day work has looked anything like those challenges. I've worked with product stakeholders, built features, delivered projects, fixed production issues, collaborated across teams, basically everything you'd expect to do on the job.
The biggest difference is that real product development is rarely about reinventing the wheel. You use libraries, frameworks, and existing solutions to solve problems. I can build a tower with Legos, but I don't need to manufacture the bricks. When something is complex, I research it, look at existing implementations, choose the right tool or solution, and move on. That's just how products are built.
To me, a typical product engineering job teaches you how to build products, not how to memorize algorithms. Yet some interviews optimize for one and hire you for the other. The interviews I've done best in are the practical ones, where you're given a feature, work through the requirements with the interviewer, implement it, and make the tests pass. And since that's much closer to the job, those are the easiest for me.
I'm not just throwing code together either. I still care about maintainability, performance, and reusability. But I don't spend my days implementing algorithms from scratch, so I'm not great at doing them on the spot.
Does anyone else struggle with this and end up feeling like they're a bad software engineer? It's pretty shitty and it's even harder with ADHD because if I don't like doing something, or there isn't something to show for it at the end, it's almost impossible to force myself to sit down and struggle through something. I can struggle through building something because the reward is seeing it completed and being able to use it. Sitting down and grinding DSA is pointless to my mind. I just hate it.