Programer je strokovnjak iz področja strojništva ali računalništva. Naše naprave mu zato lahko brez težav zaupamo. Specializiran je za osnovne postopke razvijanja informacijskih sistemov, torej pisanje računalniških programov.
Poleg tega, da programer obvlada določene programske jezike (kot so na primer Python, Java in C++), malokdo obvlada prav vse. Programskih jezikov sicer mnogo, zato se moramo najprej pozanimati, katere od teh programer pozna. Po končanem šolanju se slovenski programerji usposobijo za delo s postopki in predpisi, ki jih uporabljajo med svojim delom. Imajo poglobljeno znanje za programska orodja in razvijalske možnosti operacijskega sistema. Nekateri izmed njih imajo tudi poglobljena znanja iz konkretnih področji, kot je na primer strukturirano programiranje. Poznajo metode in postopke testiranja sestavnih delov in sestavljanja programov. Prav tako tudi razumejo zgradbo naših naprav in programov, ki jih je treba upoštevati pri razvijanju programov.
Pri programerjih je trajno usposabljanje izredno velikega pomena. Znanje iz področja tehnologije in programiranja se hitro nadgrajuje in spreminja, zato je pomembno, da se programerji stalno usposabljajo in sproti pridobivajo novo, sveže znanje.
Drži tudi teza, da niso vsi programerji vrhunski matematiki, saj jih večina pri svojem delu nikoli ne uporablja specifičnih matematičnih izrekov. To znanje pa imajo predvsem tisti, ki so usmerjeni v bolj specifična in zahtevna dela, kot je umetna inteligenca, razvoj algoritmov, strojno učenje, teoretično računalništvo in podobno. Velja tudi to, da jim je svetovni jezik lahko v zelo veliko pomoč pri pomnjenju in učenju novih programskih jezikov.