It’s not in any way similar to coding, though - it’s a puzzle-solving game. It’s not made to simulate any engineering discipline, nor user to train engineers (like flight sims are)
Yes, factorio is not coding, though it follows some principle of programming, such as input-process-output, workflow, load balancers, modular design, etc. Many players say that the factories often resembles PCB.
but that's the extend of it, you don't have to do heavier programming practice like algorithm, complex state management, input parsing and validation (unless sushi), or anything involving combinators until finishing the 1.0 version.
Factorio is not a puzzle game. You can get puzzle like gameplay if, for example, you are on a map with heavily restricted space, or are trying to micro-optimize something. But that is analogouse to code-golf or microoptimizations in programming, which are fairly puzzle like.
For typical gameplay, the only puzzles you run into are the ones you build yourself into. The name of game is to design your factory in a modular and extensible way so that you do not build yourself into a puzzle.
"not in any way similar to coding" is a very strong statement
many people feel it feels similar to coding, in the way you have to slowly refactor designs + work involves a recursive breakdown of tasks + tracing/debugging of issues
People say the same thing about Sudoku. Or any video game (historically claimed as a hobby that creates coders, just because many coders liked computers at an early age, I suspect)
And I think that's mostly due to the lack of constraints in most programming jobs. I don't have to think about throughput or optimizing op codes or almost anything else because our machines have absurd amounts of compute and more memory than most hard drives I've had in my life, the networks are broad and fast, and there's a commercial solution for most of the hard problems.
Maybe I'd think differently if I worked on microcontrollers, but my brief foray into Arduinos and Raspberry Pies didn't feel that much different. I mean, I was using Python on the Arduino. I felt more constrained by the pins than anything else - another problem with several well explored solutions.
I can think of a bunch of similarities just off the top of my head: throughput management is probably the most critical skill in factorio, and obviously comes up all over software engineering. Managing production belt chains is not unlike managing your program's call stack. Ensuring the right resource reaches a production facility is like managing input types.