He started off as an understudy to Farokh Engineer in the tours of England in 1971 and 1974 and to the 1975 Cricket World Cup. Kirmani made his debut against New Zealand and in his second Test, equalled the world record of six victims in an innings. He followed this with an atrocious series in West Indies where he missed numerous chances and considerably contributed to Vivian Richards scoring hundreds in three consecutive Tests.
When New Zealand toured India the next year, he topped the batting averages with 65.33, and scored 305 runs in the tour of Australia. He did not have a very good time behind the stumps against Pakistan and West Indies in 1978–79.
He was dropped in favour of Bharath Reddy for the 1979 Cricket World Cup and the subsequent series against England. Sunil Gavaskar was also sacked as the captain. Though Kirmani was dropped ostensibly for performance, there was a rumour that the real reason was that both he and Gavaskar had been approached by the organisers of the Kerry Packer's World Series Cricket.
Back in the team for the series against Australia in 1979–80, he scored a hundred as a nightwatchman in Bombay. His innings of 101* in five hours nearly lasted out the day. He had 17 catches and two stumpings against Pakistan in the same season and it equalled Naren Tamhane's Indian record for a single series. Against England in 1981–82, he did not concede a single bye in three consecutive Tests while 1964 runs were scored.
Kirmani won the award for the best wicket keeper in the 1983 Cricket World Cup, his highlight of which was the catch of Faoud Bacchus that he took in the final against the West Indies. In the first round match against Zimbabwe, he equalled the then record by effecting three catches and two stumpings. Against West Indies at home, he partnered Sunil Gavaskar - who scored 236* - in a record stand of 143* for the ninth wicket in the Madras Test. Kirmani was a lower order reliable batsman and another example is the unbroken 126 for ninth wicket with Kapil Dev against Zimbabwe in the 1983 World Cup with Kirmani contributing 26 and that partnership proved critical in India being able to continue their run in the tournament.
At Bombay the next year, he scored his second hundred in Tests making 102 and adding 235 with Ravi Shastri, still an Indian record for the seventh wicket. In the Madras Test in the same series, he missed some crucial catches which contributed to an Indian defeat. He was dropped at the end of that series in favour of Sadanand Viswanath.
Kirmani made a comeback in the Australian tour of 1985–86, where he fared reasonably well. He had just taken an outstanding catch to dismiss Allan Border in a World Series Cup match, when he hurt his leg badly. He was forced to sit out of the remaining matches of the tournament and that effectively ended his international career. India went for younger keepers like Kiran More and Chandrakant Pandit and despite trying hard, Kirmani was never able to regain his place.
Later in his career he played for Railways in domestic cricket for a season, after which he returned to his former team, Karnataka.
Kirmani played the role of an underworld character in the movie Kabhi Ajnabhi The, which also featured his contemporary Sandip Patil. One of his distinguishing characteristics was his clean shaven head. He served as the chairman of the selection committee for India in the early 2000s. He also plays a cameo role in an upcoming Malayalam film entitled Mazhavillinattam Vare. He will be playing himself in the film which is about a young Pakistani cricketer's life-changing journey.He was awarded the Padma Sri in 1982.