Aside from the things mentioned: Like software, wood is something that is around us everyday, but very few people really stop to think about how it's assembled. Wood and technology are things we can never seem to escape in human civilization.
People see computers like a black box that does magical stuff, in the same way they will look at a curved wooden chair and simply sit in it, without thinking how it got to be in that shape and how the carpenter knew it would be a safe design for holding a person's weight. People also don't think much about the types of woods used and their special properties, similar to how people don't think much about technology stacks and why certain applications work better than others.
In wood working it's also common to make other tools and jigs out of wood for you to use, to make other kinds of cuts easier. This is the same as writing smaller programs that do one task to help accomplish other tasks. A woodworker may use a series of tools and jigs to produce some end result the same way a programmer may pipe different programs together to make some end result. Each tool is a lot like a discrete program with input parameters that applies some effect to a piece of wood, and their combination allows for the production of a multitude of wood works.
Also, when you get good enough at building furniture, you will begin to wonder why people would pay so much money for something you could easily build yourself, similar to how people wonder why pay for Dropbox when you could just mount an FTP server on a filesystem and use some version control. $400 for a coffee table is ridiculous, I could build the same thing for maybe $100 in wood, and probably better, because I can be sure it wasn't mass assembled by a crackhead following basic instructions in a sweatshop.
The thing I love about woodworking (I’m not the op) is the upfront planning and design process, the immaculate attention to detail (an 1/8” off is often a big deal), and then the satisfaction at the end of being able to physically hold the finished product.
For commonality with software, personally, I like to do a fair bit of up-front design work before building something. Not days worth for most stuff, but hours worth. Scribble ideas, riff on them, iterate to a design I like before building it. And then during the build process, you’ll probably discover something you missed in the design process and have to improvise a bit; software is generally more forgiving in this regard, but it’s the same shape of process.
I find that when I’ve been doing more hands on stuff (small woodworking, welding, car repair, bigger construction), I get better at doing the software design stuff. My brain gets better at thinking through the consequences of design decisions and picking out small details that can have significant implications.
One big commonality I found is that a woodworking joint (dovetail, mortice & tenon, etc) is equivalent to a software design pattern. There are very well-established procedures for common problems.