Uggla was born in the village of Afverstad in Ölseruds parish, Värmland, the son of Colonel Johan Uggla and Margareta Gyllenmärs. As a young man he was a page at the royal court. During the Torstenson War of 1643-1645 he served as a volunteer in the navy, seeing action in the fleet under the command of Clas Fleming. From 1646 Uggla served in the Swedish army. He distinguished himself at the Battle of Prague in 1648, and was promoted to captain lieutenant. In 1650, he was promoted to captain in the Life Guards, accompanying Charles X during the Second Northern War. When the Dano-Swedish War broke out in 1657 Uggla returned to naval service. He was promoted to major and in November 1658 participated in the Battle of the Sound against the Dutch fleet. In 1660, he was promoted to lieutenant admiral. During a three-year stay in Lübeck, he oversaw the construction of warships being built for the Swedish Navy. In 1670 he was promoted to admiral, and in 1676 was elevated to the status of Friherre. When further conflict broke out in 1675 in the Scanian War, Uggla was given command of a squadron under "Generalamiral" Lorentz Creutz.