| 23-11 | 2 | | CAC Road Cycling African Championships U23 (CC) | 163.0km |
| 20-11 | 4 | | CAC Road Cycling African Championships TT U23 (CC) | 28.0km |
| | | Tour de Serbie (2.2) |
| 39 | | Klassement |
| 16 | | Jongeren |
| 19-10 | 21 | 39 | Stage 3Belgrade - Jagodina (116.0km) | 116.0km |
| 18-10 | 24 | 46 | Stage 2Novi Sad - Belgrade (139.0km) | 139.0km |
| 17-10 | 55 | 55 | Stage 1aMali Bosut - Vrdnik (77.0km) | 77.0km |
| 17-10 | 23 | 55 | Stage 1bZasavica - Novi Sad (72.0km) | 72.0km |
| 26-09 | DNF | | UCI World Championship Kigali U23 (CM) | 164.0km |
| 22-09 | 33 | | UCI World Championship Kigali TT U23 (CM) | 31.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 25-08 | DNF | | Stage 2Saint-Symphorien-sur-Coise - Vitry-en-Charollais (136.0km) | 136.0km |
| 24-08 | 153 | 153 | Stage 1Aoste - Saint-Galmier (188.0km) | 188.0km |
| 23-08 | 134 | 134 | PrologueTignes - Tignes (3.0km) | 3.0km |
| 06-07 | 13 | | Grand Prix Edebiyat Yolu (1.2) | |
| 05-07 | DNF | | Grand Prix Kahramanmaraş (1.2) | |
| 28-06 | 4 | | National Road Championship - Algeria (CN) | |
| 26-06 | 2 | | National Road Championships - Algeria TT U23 (CN) | |
| | | Tour of Lithuania (2.2) |
| 07-06 | DNS | | Stage 4Utena - Utena (160.0km) | 160.0km |
| 06-06 | 143 | 123 | Stage 3Kėdainiai - Kėdainiai (160.0km) | 160.0km |
| 05-06 | 86 | 62 | Stage 2Tauragė - Tauragė (176.0km) | 176.0km |
| 04-06 | 51 | 54 | Stage 1Klaipeda - Klaipeda (179.0km) | 179.0km |
| | | Course de la Paix Grand Prix Jeseníky (2.NCUP) |
| 71 | | Klassement |
| 01-06 | 69 | 71 | Stage 4Jeseník - Šumperk (118.0km) | 118.0km |
| 31-05 | 55 | 74 | Stage 3Zábřeh - Dlouhé (131.0km) | 131.0km |
| 30-05 | 80 | 101 | Stage 2Uničov - Rýmařov (149.0km) | 149.0km |
| 29-05 | 116 | 116 | Stage 1Krnov - Šternberk (168.0km) | 168.0km |
| | | Tour of Mersin (2.2) |
| 38 | | Klassement |
| 13 | | Jongeren |
| 13-04 | 73 | 38 | Stage 4Mersin - Mersin (120.0km) | 120.0km |
| 12-04 | 41 | 39 | Stage 3Tarsus-Dörtler - Mersin (102.0km) | 102.0km |
| 11-04 | 34 | 49 | Stage 2Gülnar - Erdemli (122.0km) | 122.0km |
| 10-04 | 86 | 86 | Stage 1Anamur - Yanisli (93.0km) | 93.0km |
| 06-04 | 25 | | Grand Prix Syedra Ancient City (1.2) | 141.0km |
| 23-03 | 38 | | Grand Prix Apollon Temple (1.2) | 130.0km |
| | | Tour of Rhodes (2.2) |
| 80 | | Klassement |
| 42 | | Jongeren |
| 16-03 | 87 | 80 | Stage 3Kremasti - Kremasti (155.0km) | 155.0km |
| 15-03 | 97 | 67 | Stage 2Rhodes - Kalithies (158.0km) | 158.0km |
| 14-03 | 59 | 67 | Stage 1Rhodes - Soroni (148.0km) | 148.0km |
| 13-03 | 77 | 77 | PrologueRhodes - Rhodes (5.0km) | 5.0km |
| 08-03 | 82 | | Rhodes GP (1.2) | 179.0km |
| | | Tour d'Algérie (2.2) |
| 8 | | Klassement |
| 32 | | Punten |
| 1 | | Jongeren |
| 18-02 | 25 | 8 | Stage 10Ouargla - Hassi Messaoud (84.0km) | 84.0km |
| 17-02 | 25 | 8 | Stage 9Ghardaïa - Ouargla (189.0km) | 189.0km |
| 16-02 | 6 | 6 | Stage 8Laghouat - Ghardaïa (194.0km) | 194.0km |
| 15-02 | 57 | 16 | Stage 7Djelfa - Laghouat (108.0km) | 108.0km |
| 14-02 | 18 | 11 | Stage 6Bou Saâda - Djelfa (111.0km) | 111.0km |
| 13-02 | 20 | 14 | Stage 5Biskra - Bou Saâda (176.0km) | 176.0km |
| 12-02 | 36 | 20 | Stage 4Batna - Biskra (114.0km) | 114.0km |
| 11-02 | 39 | 18 | Stage 3Setif - Batna (135.0km) | 135.0km |
| 10-02 | 15 | 13 | Stage 2Constantine - Setif (129.0km) | 129.0km |
| 09-02 | 24 | 24 | Stage 1Guelma - Constantine (103.0km) | 103.0km |
| 08-02 | 23 | | Grand Prix Sakiat Sidi Youcef (1.2) | |