O'Connor was the son of John O'Connor who played for Derbyshire and nephew of Herbert Carpenter who played for Essex. O'Connor's was a mainstay of the Essex county side between the Wars, scoring 1,000 runs a season 16 times. Of diminutive stature, he was quick to drive and pull but was suspect against the fastest bowling and suffered occasional fallow spells in the county game. He compiled 72 centuries in all, including one against every other county and university side.
Bowling a mix of leg and off spin, O'Connor took 557 wickets, including 93 in 1926. He played one Test against South Africa in 1929 and, that winter, three more as part of a below strength touring team in the West Indies. After retiring from the first class arena, he coached at Eton.