I've been working with Salesforce for about 4 years, I am currently a Salesforce Consultant at a company in the Midlands. We are always struggling to find good Salesforce talent and so is the rest of the industry, so that much is correct.
I'd say you don't need an IT background as such, but you do need to be reasonably tech savvy.
Admin/Dev/BA is not really a career path in my eyes - they are completely different job roles with different skillsets etc needed for each of them.
What floats your boat?
In basic terms:
Admin - Does day to day config changes - new fields, new objects, relationships. Reports, dashboards. Security, access. Potentially automation. Possibly lots of data management. Underpaid job in the UK.
Dev - Writes code. This is a totally different role to an Admin, if you are not into coding then this is not the role for you.
BA - Whilst you can get Salesforce specific BAs my advice would be to train as a more general BA and be system agnostic. Remember as a BA you are about requirement, not solution.
Architect - Solutionising from an enterprise/holistic level. Well paid job.
Consultant - For me this is the fun bit. Asking people what they want, speccing it, building it (or getting a Dev to build some of it), demo it and hand it over to the customer. You need a lot of Admin skills and some Dev knowledge (if not ability - I cannot write a single line of code)
I love my job!
The certifications are 100% worth doing, they are not easy, and carry a decent amount of credibility in the industry. But without experience it's difficult to learn or apply any of it.
Although Marv says it's not very open source, it sort of is. Sign up to Trailhead and you can create your own Salesforce system and tweak it to your heart's content, either using the Trailhead learning paths, or just going rogue and doing what you fancy.