Traditionally the division of labour between engineers and craftsman has been, the engineer is a knowledge worker who makes the "design", which is then physically produced by the craftsman.
In software this distinction breaks down - the "design" _is_ the finished product. It's really a different kind of thing.
Construction offers a better analogy: the architect produces a high-level design, and the builder is responsible for construction, which includes the full detailed design (which is usually not written down anywhere but manifested in the finished product).
This subject is further complicated by the fact that not everyone who actually "builds the thing" is a craftsman.
Craftsmen are generally high-level experts, because they are involved in craft production. Craft production means producing small numbers of highly customised things. One craftsman can often produce the entire thing from primitives. Craft production is not about precise tolerances and interchangeability; craft production is about sanding down this particular component until the fit is perfect for the specific one-off purpose. Did I mention this is very expensive and not reusable at all?
This is in contrast to e.g. mass production where interchangeability and huge volume and a single model ("any colour as long as it's black") rules. The mass production worker isn't drawing on a long and wide experience; they do a job that was designed to be learnt in a few days, and they do it over and over. No feedback cycles are designed into the system. You can make defective parts for hours or days and nobody will notice -- and it's probably best if you keep quiet about it, too. The important thing is that you produce your daily volume, defective or not. Mass production is all about local optimisation at the cost of system performance. But hey, it's cheaper than craft production! (And the output is correspondingly shoddier.)
Then lean production aims for the huge volumes of mass production, except by optimising the entire system instead of local tasks. Books have been written about this so I won't but the end product often costs less than the mass produced, and can also be of higher quality than the craft produced.
I bring this up because as quaint as craftsmen are, if our goal is to be like craft production we'll drive up costs and be outcompeted by someone who realises that craft production isn't all that hot other than for very specific up-scale purposes, where cost is a feature.
Software engineers design and codify processes; those processes are carried out by computers. If you've worked long enough (or are unlucky enough) you may have had to design accompanying business processes that were carried out by humans as well, e.g. all analysts must upload their work in format x by Thursday night and start the batch processes, or else.
I hate the craftsman trope. In my view baked in is the idea we're somehow more creative or special than other engineers, and worse less bound by principles of math and science. It simultaneously denigrates those other engineering disciplines and primes software engineers with a really bad intuition about the proper way to carry out their work.
I don't mean to pick on you or the original author, it's a widely held idea pushed by some very influential figures, I just think it's in desperate need of reexamination.
In software this distinction breaks down - the "design" _is_ the finished product. It's really a different kind of thing.
Construction offers a better analogy: the architect produces a high-level design, and the builder is responsible for construction, which includes the full detailed design (which is usually not written down anywhere but manifested in the finished product).