Engineers all make estimates. Some are good, and some aren’t. That’s hardly unique to software engineering. Just another way software engineering IS engineering.
The primary job of an engineer is to balance competing constraints to provide value. This is done via a deep understanding of the problem space, the available tools, materials, technologies, and processes, and the requirements. That’s what engineering is.