I have around 5 years of experience of corporate job and now I am thinking of starting my own venture, but wondering if it always better to get a hang of startup culture by working in one or it'll always be harder than one presumes and thus makes no difference? (I am a developer, if that matters)
You don't have to, and it will always be harder than one presumes, but I think it's still beneficial to work for someone else's startup before starting your own. It gives you time to get acclimatized to the pace of change in a startup, to learn to roll with the punches, to make technical trade-offs that are expedient in the short term but mortgage your long-term code health, and to function in an environment with high ambiguity. All of these are very stressful, and when you combine them with the lack of a paycheck and the sole responsibility of driving the venture forward that being a founder entails, you frequently end up with founders that quit or worse.
Startups involve having to do everything with a tiny group of people, so the more skills you have personal experience with the better. If you business depends upon your product, sales and marketing skills, and you've only been a developer, it's going to be a very tough time.<p>Working at a startup is a great way to get some experience in several other domains, especially if you are one of the first employees. Even if you don't do it first hand, you'll get to spend a ton of time with "head of sales", "head of marketing", "head of product", because they'll be the other three dudes in your office.
If all your experience is in the corporate world, then yes, I would recommend you join a startup first while there are startups available that will take you. Even if you have to take a paycut to do so, it's likely going to be a lot more money than you would pay yourself in your own startup.<p>Get used to the pace, risk, and general mindset of a startup first. There is a nontrivial adjustment period between working for big companies and working for startups. So I would highly advise you to go through that without the additional stress of running the startup and working on it.
Do you have a problem to solve, an idea of how to solve it, and is now the right time to start a company to build it? Does this problem-solving idea keep you up at night? Then you should just start the startup now to test the waters. If you are just interested in the idea of starting a startup for the sake of starting a starup, then go work for someone else's startup to see how hard it is, and you might just get some sense knocked into you.
I feel like connections are what are most important. Will you need funding? Will you need people? Working at a startup can usually put you in front of like minded people.