Ugrađeni softver vrsta je softvera koji je ugrađen u hardverske sustave. Ovaj je softver obično dizajniran za obavljanje jedne specifične funkcije, iako jedan komad hardvera može sadržavati više dijelova softvera ugrađenih u njega. Svaki dio tehnologije koji ima pločice i računalne čipove vjerojatno će imati ugrađen softver unutar sebe, od digitalnih satova preko mobitela do kalkulatora. Ovi sustavi omogućuju mnoge od naprednih funkcija koje su uobičajene u modernim uređajima.
Poput mnogih dijelova inovativne tehnologije, rani oblici ugrađenog softvera razvijeni su za vojne primjene. Amerikanci su posebno koristili različite vrste ugrađenih sustava u istraživanju svemira, navođenju projektila i avionici od kasnih 30-ih do sredine 60-ih. Ti su rani sustavi obično bili ugrađeni u druge komponente i imali su visoku stopu kvarova. Tek kasnih 60-ih ova vrsta softvera evoluirala je do točke u kojoj je bila korisna običnim ljudima.
U kasnim 70-ima, prvi standardi za integrirani mikrokontrolerski čip doveli su do razvoja ugrađenog softvera. Ovaj pojedinačni čip djelovao je poput malog računala; mogao bi uzimati, spremati i izlaziti podatke kao i obraditi vlastite informacije. S ovim čipovima postalo je moguće napisati jedan program, učitati ga u čip i zatim dati taj čip da izvrši svoj program kad god dobije ispravan ulaz. Do kraja 1980-ih, gotovo svaki oblik potrošačke elektronike imao je u sebi ugrađen nekakav mikrokontrolerski čip.
U godinama koje su uslijedile, trošak proizvodnje integriranih mikrokontrolera pao je na novčiće. Kao rezultat toga, nalaze se u gotovo svakom elektroničkom uređaju, a svaki od tih čipova ima jedan ili više ugrađenih dijelova softvera. Ima ih čak i u predmetima za koje većina ljudi ne bi pomislila da imaju računala, kao što su tosteri, električni ventilatori ili dječje igračke.
Bez obzira na to što je softver dio, dijelovi softvera koji su ugrađeni rade na isti način. Njihov čip prima ulaz od svog povezanog uređaja. Softver čita unos i određuje treba li ga aktivirati. Ako to učini, izvršava svoj program i ispisuje rezultate. Ti rezultati mogu doći do korisnika ili čak do nekog drugog softvera.
Ugrađeni softver zauzima mjesto potpunog računalnog sustava. U normalnom računalu, ili stroju spojenom na normalno računalo, postoji relativno malo ugrađenog softvera. Obično računalni sustavi imaju samo nekoliko dijelova koji kontroliraju postupke pokretanja i bitne hardverske funkcije. Kako složeni uređaji postaju kompjuteriziraniji, njihov ugrađeni softver zapravo nestaje jer je zamijenjen standardnim računalnim sustavima.