Recently my daily feed was filled with a discussion about "What's more important? Writing maintainable software, or shipping software?"
There was a lot of back and forth about code quality, technical debt, not being able to sell something that isn't complete, and all the other points you would expect in this type of argument.
In the end, I'm pretty sure "shippability" was "winning", but I want to make a different point: The fact that you're having an argument about it, that many people have strong opinions on both sides, means that both are important.
Do them both.
Yes, that's more difficult. But that's how you get better, and it's why people pay more for experienced developers.
(If you're new, though, definitely just get something done and make it better over time. "Don't let perfect get in the way of good enough.")
Posted on by: