In 1918 werd Sjaposjnikov ziek en kreeg hij buiten het leger een post als secretaris bij het gerecht. In mei 1918 vervoegde hij het Rode Leger als een van de weinige officieren met een militaire opleiding. Hij werd meteen plaatsvervangend hoofd van de operaties van de staf van de opperste raad.
Interbellum
Vanaf 1919 as hij plaatsvervangend stafchef van de volkscommissaris voor militaire en marineaangelegenheden van Oekraïne.
1921 werd Sjaposjnikov plaatsvervangend opperbevelhebber van het Rode Leger.
In 1925 werd hij opperbevelhebber van het Militair district Leningrad en in 1927 van het Militair district Moskou.
In 1931 werd hij bevelhebber van het militair district Wolga-Oeral. In 1932 werd hij commandant en commissaris van de Froenzeacademie. Op 20 november 1935 werd hij opperbevelhebber van het militair district Leningrad.
In 1939 keurde Stalin het plan van Sjaposjnikov goed om de sterkte van het Rode Leger snel weer op te bouwen. Sjaposjnikov verkreeg de vrijlating uit de Goelags van 4000 officieren die hij dacht nodig te hebben.
Winteroorlog
In 1940 werd hij Maarschalk van de Sovjet-Unie en plaatsvervangend volkscommissaris voor landsverdediging.[5] In 1940 plande Sjaposjnikov de invasie van Finland, maar hij was minder optimistisch dan Stalin en Kliment Vorosjilov. De Winteroorlog verliep niet naar wens en in augustus 1940 nam Sjaposjnikov ontslag als stafchef.
Tweede Wereldoorlog
Toen Duitsland de Sovjet-Unie binnenviel met Operatie Barbarossa werd Sjaposjnikov teruggeroepen als stafchef ter vervanging van Georgi Zjoekov, die naar het front gestuurd was. Hij werd tegelijk Volkscommissaris voor Landsverdediging.
Op 10 mei 1942 nam hij opnieuw ontslag als stafchef om gezondheidsredenen. Hij had zijn opvolger Aleksandr Vasilevski opgeleid, maar bleef Stalin raad geven. Sjaposjnikov geldt ook als leraar van Aleksej Antonov en Sergej Sjtemenko.