13.11 » 20.11 | | | | Tour of Rwanda (2.2) | | | | more |
| 1 | | | Youth classification | | | | more |
| 10 | | | Mountains classification | | | | more |
| 1 | | | General classification | | 25 | 40 | more |
20.11 | 3 | | | Stage 7 - Kigali › Kigali | 108 | 1 | 1 | more |
19.11 | 1 | 1 | | Stage 6 - Musanze › Kigali | 103.9 | 5 | 7 +1 | more |
18.11 | 18 | 1 | | Stage 5 - Muhanga › Musanze | 125.8 | | +1 | more |
17.11 | 15 | 1 | | Stage 4 - Rusizi › Huye | 140.7 | | +1 | more |
16.11 | 7 | 1 | | Stage 3 - Karongi › Rusizi | 115.9 | | +1 | more |
15.11 | 1 | 1 | | Stage 2 - Kigali › Karongi | 124.7 | 5 | 7 +1 | more |
14.11 | 16 | 4 | | Stage 1 - Kigali › Ngoma | 96.4 | | | more |
13.11 | 6 | 6 | | Prologue - Kigali › Kigali | 3.3 | | | more |
13.10 | 113 | | | World Championships MU - Road Race (WC) | 166 | | | more |
02.10 | 39 | | | Piccolo Giro di Lombardia (1.2U) | 163.1 | | | more |
27.09 | 45 | | | Ruota d'Oro - GP Festa del Perdono (1.2U) | 167 | | | more |
17.09 | DNF | | | Memorial Marco Pantani (1.1) | 189.8 | | | more |
15.09 | DNF | | | Coppa Agostoni - Giro delle Brianze (1.1) | 199 | | | more |
14.09 | DNF | | | Coppa Bernocchi - GP BPM (1.1) | 192 | | | more |
17.08 | 18 | | | Trofeo Beato Bernardo - Coppa Citta' di Offida (1.2U) | 152 | | | more |
16.08 | 40 | | | GP Capodarco - Comunità di Capodarco (1.2U) | 180 | | | more |
14.08 | DNF | | | Gran Premio Sportivi di Poggiana - Trofeo Bonin Costruzioni - Gran Premio Pasta Zara (1.2U) | 177.2 | | | more |
27.07 » 31.07 | | | | Tour Alsace (2.2) | | | | more |
| 22 | | | Youth classification | | | | more |
| 33 | | | General classification | | | | more |
31.07 | 80 | | | Stage 4 - Colmar › Sélestat | 149.6 | | | more |
30.07 | 27 | 33 | | Stage 3 - Ribeauvillé › Lac Blanc | 157.8 | | | more |
29.07 | 99 | 83 | | Stage 2 - Altkirch › Huningue | 151.2 | | | more |
28.07 | 118 | 75 | | Stage 1 - Velleminfroy › Dannemarie | 171.8 | | | more |
27.07 | 87 | 87 | | Prologue - Sausheim › Sausheim | 7.1 | | | more |
13.07 » 17.07 | | | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) | | | | more |
17.07 | OTL | | | Stage 5 - Valtournenche › Breuil Cervinia | 107.3 | | | more |
16.07 | 36 | 77 | | Stage 4 - Pontey / Fénis › Clavalité | 166.9 | | | more |
15.07 | 95 | 96 | | Stage 3 - Quincinetto › Piani di Tavagnasco | 159.1 | | | more |
14.07 | 67 | 99 | | Stage 2 - Morillon › Saint-Gervais Mont-Blanc | 138.4 | | | more |
13.07 | 12 | 125 | | Stage 1 (TTT) - Pont-Saint-Martin › Montjovet | 19.94 | | | more |
10.07 | DNF | | | Giro del Medio Brenta (1.2) | 177 | | | more |
26.06 | 9 | | | National Championships Rwanda ME - Road Race (NC) | 111.3 | | 1 | more |
25.06 | 2 | | | National Championships Rwanda - ITT (NC) | 40.6 | 7 | 10 | more |
15.05 | 52 | | | Gran Premio Industrie del Marmo (1.2) | 174 | | | more |
25.04 » 01.05 | | | | Le Tour de Bretagne Cycliste trophée harmonie Mutuelle (2.2) | | | | more |
| 68 | | | Youth classification | | | | more |
| 107 | | | General classification | | | | more |
01.05 | 91 | | | Stage 7 - Le Hinglé › Dinan | 149 | | | more |
30.04 | 90 | | | Stage 6 - Fouesnant › Fouesnant | 156 | | | more |
29.04 | 107 | 128 | | Stage 5 - Plestin-les-Grèves › Treffléan | 192.7 | | | more |
28.04 | 72 | 142 | | Stage 4 - Plancoet › Lannion | 163.5 | | | more |
27.04 | 114 | 145 | | Stage 3 - Louisfert › Janzé | 148 | | | more |
26.04 | 142 | 147 | | Stage 2 - Belz › Louisfert | 204 | | | more |
25.04 | 148 | 148 | | Stage 1 - Quiberon › Landévant | 158 | | | more |
26.02 | 46 | | | African Continental Championships - Road Race (CC) | 180 | | | more |
24.02 | 6 | | | African Continental Championships - ITT (CC) | 40.4 | 16 | 20 | more |