It's a coolness factor and a signal that you're tech-related.
It won't have any effect on SEO. Google added .io to its list of 'generic' country-code top-level-domains (ccTLDs), so it doesn't signal relevance to a particular location. See Matt Cutts: Be Careful About How You Choose Your ccTLDs
The main pros are the branding opportunity and the domain availability. There are so many words that the .com is squatted on, redirecting, or used for an offline / boring / unknown business. Finding a word you can build a brand around with an available .io is much easier.
Domain availability is a real problem with .coms these days. Single-word .coms are almost all squatted if it's an at-all interesting word. I never get tired of plugging LeanDomainSearch, which lets you see available .coms with the word you want paired with other words. But for single-word domains, you more or less have to go with an alternative TLD to find something available.
If you're building a consumer startup, the main con is that traditional wisdom holds you'll need to buy the matching (likely squatted, expensive) .com as you scale to avoid confusion, mis-typings, and broken links at a larger scale. If you have enough success to need this, this is not a bad problem to have.
It's clever - I/O stands for Input/Output and so it's a general purpose (unlike say .app) domain extension that is very easy to remember. It is a bit of a trend of course, and at the moment if I needed a domain for a new product I would go with .io over .net, .ly (I kinda dislike this one), or any other extension.
For SEO, more stablished domain extensions can be better, because the domain names themselves are likely to have been in existence longer (even if through multiple ownerships) and age of the domain is one of the factors in SERPs, and if you buy an expired domain it might have leftover PR juice and referral links.
EDIT: Clarified why older extensions might be better.