When I build a product I have this constant fight inside my head on what tech stack to use to build my product. On one hand I'm a long-time Java developer and have experience building enterprise level applications using Spring Boot and the many starters that are available in that ecosystem. Java is where I'm most comfortable and happy (it's my favorite language - bring on the haters lol).
On the other hand, Java apps take a much longer time to build out simple POCs and so I often go to Python/Django so I can take advantage of the "batteries included" aspect where I can save literal days or weeks spinning up a complete app with auth and admin built right in.
With all that said, when I start getting to a point of moving from POC to product, my first inclination is to re-write the application in Java because I think long-term where will I be most happy working in a Java ecosystem if this product takes off. But, I fight that with the fact that I am not there yet and there is still a lot to build very quickly to get the product in front of more users.
I constantly fight this battle of what my engineering mind is most happy working with and my founder mind on what stack is best for moving quickly to ship new features. This doesn't even start down the path of scalability and performance; I tend to leave those arguments out this early unless it is clear that the product can ONLY survive with an extremely scalable stack in which case I'll just switch to Rust/Rocket ; )
Any advice on what the best path forward is? Should I stick with my Python/Django approach and risk being stuck with a stack that I don't love that much or should I take the time up font the write the app in what I know and love so that I can be happier working on it long-term?
Thanks in advance