I think this is probably the part about biology that people outside of biology appreciate the least. We know a lot about how cells and proteins work now. But despite this fact, it is still extremely difficult to understand exactly what is happening within a given cell in situ. Many measurement methods are likely to destroy or alter the thing you’re trying to measure… think Heisenberg’s uncertainty principle - the act of measuring the thing changes its state. Everything is sensitive to temperature, shear, ionic strength, pH, etc… and of course most methods rely on these levers to gain resolution and signal. So you have to have a clear idea of what you think is happening to even select a measurement technique that won’t ruin it. This is part of why, while we know a lot of the fundamentals, it is still hard to engineer functionality in specific environments .. engineering requires a lot of measurement and feedback.
I think that also offers insight into why software can be engineered so quickly. It’s a discipline where you can (relatively) easily place a probe wherever you want and understand exactly what’s happening in a (sometimes) deterministic manner. Everyone else is taking fuzzy shots in the dark compared to software. Imagine replicates being a thing you have to think about when debugging a program. Like in software, running your code again with no changes after it just failed is insanity. In every other engineering discipline, you sometimes have entire meetings to decide how many times to retry something that just failed.