For the most part it's a difference in magnitude. The speeds the rockets achieve are much higher than any airplane, let alone car, ever manages. The thrust of the engines is stupendous, the liquid H2 and O2 fuels are cryogenic, the flame temperatures in the engine are extreme. In fact, they're so extreme that the engines use precise control over the flow fuel and oxidizer entering the engine to create a layer of cooler gasses around the inside of the engine nozzle, so that it doesn't melt or ablate entirely away. Everything has to work in vacuum and at ambient air pressure and at max Q during flight.
All of this and more adds up to a much harder design problem, much more stringent test requirements, much tighter manufacturing tolerances, etc. The principle is the same, however; any change to one component of a system may require changes to every other component.
The one thing that all forms of engineering from (whether software, civil, aerospace, or other) have in common is the management of complexity. The automotive engineer designs the engine mounts in your car to accept a wide range of engines, so that they can manufacture several variants of the same car with different engines without having to redesign every component. Similarly, SpaceX has greatly reduced their cost and risk by reducing the complexity of their rockets; one way they did this was to use the same engine for both the first and second stages of their rockets (the first stage simply uses more of them). Another way was to avoid cryogenic fuels; they have a lower specific impulse (fuel efficiency), but a much greater space efficiency (liquid H2 is very light; that orange tank is huge, and 80% of it is for the H2 tank) plus you avoid having to deal with cryogenic fuels, and the complicated materials engineering that goes into designing the tanks to hold them.
If you want to know more, MIT has some great lectures on the subject, even ones suitable for non-engineers. A good one is An Electrical Engineering View of a Mechanical Watch . The description of this lecture only touches on superficial matters; Sussman's real point is that the means of abstraction present in an engineered system can be applied to any other engineered system, and that it's only by designing the right abstractions that engineers make continual progress in designing newer and better systems. He states this directly in the first two minutes, which is quite handy. You might also check out the video lectures for the Structure and Interpretation of Computer Programs , the first lecture of which goes into much the same topics in the realm of software engineering.