Համակարգչային ծրագրավորումն իրականացվում է գործադիր համակարգչային ծրագրի
ձևավորման և կառուցման գործընթաց ՝ որոշակի հաշվարկային արդյունքի հասնելու համար: Ծրագրավորումն ընդգրկում է այնպիսի խնդիրներ, ինչպիսիք են. վերլուծություն, ալգորիթմների առաջացում, ալգորիթմների ճշգրտության և ռեսուրսների սպառման պրոֆիլներ և ընտրված ծրագրավորման լեզվով ալգորիթմների իրականացում ուղղակիորեն իրականացվում է կենտրոնական վերամշակման բաժնի կողմից: Ծրագրավորման նպատակն է գտնել հրահանգների հաջորդականություն, որը ավտոմատացնելու է համակարգչի վրա առաջադրանքի կատարումը (որը կարող է նույնքան բարդ լինել, որքան գործող համակարգը), հաճախ տվյալ խնդրի լուծման համար: Ծրագրավորման գործընթացը, այդպիսով, հաճախ պահանջում է փորձաքննություն մի քանի տարբեր առարկաների, ներառյալ ՝ հայտի տիրույթի իմացությունը, մասնագիտացված ալգորիթմները և ձևական տրամաբանությունը:
Ծրագրային ապահովումը համատեղում է ինժեներական տեխնիկան `ծրագրակազմի
մշակման պրակտիկայում: Հակադարձ ինժեներացիան հակառակ գործընթացն է: Հաքերը ցանկացած հմուտ համակարգչային մասնագետ է, որն օգտագործում է իրենց տեխնիկական գիտելիքները խնդիրը հաղթահարելու համար, բայց դա կարող է նաև ընդհանուր լեզվով անվտանգության հակեր նշանակել: