In August 2009 Koshevoy finished 40th overall in the Regio-Tour. In September he finished second on stage one and two at the Giro di Basilicata stage race, finishing second overall with the same time as winner Giovanni Gaia.
In May 2011 Koshevoy finished 40th overall in the Gran Premio Industrie del Marmo and 41st at the San Vendemiano GP in Italy. He then participated in the Belarus 2011 national road cycling championships, finishing second in the individual time trial behind Kanstantsin Sivtsov of HTC–Highroad and 11th in the road race. In July he travelled to Offida, Italy to participate in the 2011 European Road Championships, where he finished 33rd in the time trial and 53rd in the road race.
Koshevoy began his season in April at the Trofeo Banca Popolare di Vicenza where he finished 27th, before finishing 14th in the Gran Premio Palio del Recioto nine days later. He then abandoned the Toscana-Terra di ciclismo and came 34th in the Gran Premio della Liberazione. At the 2012 national road cycling championships in Grodno Koshevoy finished eighth in the road race.
Koshevoy finished 34th overall in the Dookoła Mazowsza stage race in Poland in July, as well as finishing 8th in the young rider classification. In August at the 2012 European Road Championships in Goes, the Netherlands he finished 49th in the individual time trial and 78th in the road race. Koshevoy then went to Italy where he finished 20th in the GP Capodarco before returning to the Netherlands to represent Belarus at the 2012 UCI Road World Championships in Valkenburg. He finished 28th in the men's under-23 road race. Koshevoy ended his season in Italy in September with a 67th position in the Ruota d'Oro - Gran Premio Festa del Perdono.
Koshevoy began the 2013 season in April at the Trofeo Edil C, finishing in 10th place. Twelve days later he won the Gran Premio della Liberazione by just one second to Adam Phelan of Drapac Cycling. This was his only win in the 2013 UCI Europe Tour. Three days after this victory he came 14th in the Gran Premio Industrie del Marmo. In May Koshevoy travelled to Azerbaijan to compete in the Tour d'Azerbaïdjan. He finished 23rd overall and 20th in the mountains classification. In June Koshevoy came 47th at the Trofeo Alcide De Gasperi, and eighth at the Belarus national road race championship road race. In July he finished 38th at the European Championships under-23 road race in the Czech Republic.
In August he joined the Italian UCI Professional Continental team Androni Giocattoli–Venezuela as a stagiaire for the remainder of their season. He finished 14th in the Gran Premio Capodarco, just 58 seconds behind winner Matteo Busato. He then raced the Tour du Limousin, finishing 56th overall and 11th in the young rider classification. Representing Belarus at the 2013 UCI Road World Championships in Tuscany Koshevoy finished 20th in the men's under-23 road race, just 16 seconds behind winner Matej Mohorič. Koshevoy ended the season in October with a 43rd place in the Coppa Sabatini and a 20th place at the Gran Premio Bruno Beghelli. He was not offered a contract with Androni Giocattoli-Venezuela for the 2014 season.
Koshevoy began the 2014 season in April with a 27th place at the Trofeo Edil C and a 28th place at the Gran Premio Industrie del Marmo. In June he finished second in the Trofeo Alcide De Gasperi and 21st in the Coppa della Pace. On 29 June Koshevoy participated in the Belarus 2014 national road cycling championships in Mazyr. He finished in eighth place, only 15 seconds behind winner Yauheni Hutarovich of Ag2r–La Mondiale.
In July Koshevoy signed as a stagiaire for the remainder of the 2014 Lampre-Merida season, beginning August 1. His first race for Lampre-Merida was in the United States of America, where he finished 13th in the Tour of Utah. After returning to Europe Koshevoy raced the GP Capodarco, which he did not finish. He ended his season in September at the Tre Valli Varesine, which he did not finish either. Despite this Koshevoy was offered a professional contract for the following season.
2015 was Koshevoy's first proper season as a professional cyclist at Italian UCI ProTeam Lampre–Merida. He started off the season at the 2015 Dubai Tour, finishing 24th overall and second in the young rider classification. Koshevoy finished 68th at the 2015 Trofeo Laigueglia in Italy. In March Koshevoy finished 48th at the Gran Premio di Lugano. In the 2015 Strade Bianche Koshevoy was part of an early breakaway which was caught by the peloton, and he did not finish the race. He was named in the start list for the 2015 Vuelta a España. |In this edition of Vuelta a España he succeeds to take a 2nd position on the 7th stage behind Bert-Jan Lindeman and he concludes this edition at the 144th position in the general classification.
He was named in the start list for the 2016 Giro d'Italia which concludes at the 97th position. Then he has participated at the 2016 Vuelta a España concluding it at the 151th position.
For this season he signs for the italian professional team Willier Triestina-Selle Italia and now was riding the 2017 Giro d'Italia with his team.