I've never coded. I'm a boatbuilder and marine architect (that's a very specialized kind of hardware engineer in startup language). We have "coding problems" too: how to make a boat so it doesn't kill the people who take it out to sea.
Different parts of a boat need to do different things, and often your next boat can't be designed by copying your last one and making things smaller or bigger; you need an entirely new concept for a new function.
So when I sit and "think" about the problem, trying to make progress on it, I usually spin my wheels and get nowhere. I can't draw, I can't write, because I'm forcing it. Trying to make money thinking, right, and it just won't come.
But often, later that night, I'll have a fully-formed picture of the solution come into my head, of the thing that was puzzling me back in the daylight. I'll get up, turn on the light, go to my desk, and sketch the thing out, with explanation about what the different chicken scratch lines are. I put my mouse on top of it so my cats don't knock it onto the floor, because in the morning I've complete forgotten I even woke up and drew it. The next morning, there's my solution sitting on my desk.
So faced with problems demanding solutions, I've learned to just relax and be the space that the solution can come into.