Paarprogrammeerimine on tarkvaraarendustehnika, mille puhul kaks programmeerijat töötavad koos ühes tööjaamas. Kaks kaastöötajat, paar, määravad kindlaks, kuidas programmi kõige paremini arendada, suheldes tavaliselt suuliselt, et tagada nii programmeerimiskeele mõistmine kui ka kodeeritava üldine eesmärk. Seda peetakse tõhusaks viisiks tarkvara arendamiseks, kuna kaks meelt on parem kui üks.
Kaht paarisprogrammeerimisega seotud programmeerijat nimetatakse üldiselt "draiveriks" ja "navigaatoriks". Juht on programmeerija, kes loob aktiivselt avaldusi ja koodi, samal ajal kui navigaator kontrollib koodi, vaatab üle võimalikud vead või alternatiivsed lahendused ning pakub soovitusi paremate lähenemisviiside jaoks. See võimaldab põhjalikumalt üle vaadata koodi, millest üks programmeerija tõenäoliselt märkamata jääb.
Kahe arendaja koostöö on kasulik, kuna on tõestatud, et see suurendab koodi kvaliteeti ja vähendab defektide arvu. Need kaks inimest saavad üksteisel silma peal hoida ja vigu kiiremini tabada ning koos mõelda paremate lahenduste leidmiseks. Lisaks õpivad mõlemad programmeerijad paaris töötades pidevalt üksteiselt ja arendavad teemast üksikasjalikumat arusaama.
Lisaks julgustab paarisprogrammeerimine meeskonna loomist ja sõprust, mis võib võimaldada rohkem koostööd teha loomingulisi rühmitusi.
Kuigi paarisprogrammeerimine ei sobi igat tüüpi projektide jaoks, on see muutunud populaarseks paljudel eesmärkidel, nagu kontseptuaalne ajurünnak ja probleemide lahendamine, prototüübi kiire loomine, silumine ja programmeerimiskeele õpetamine kellelegi teisele.
Üldiselt on paarisprogrammeerimine tarkvaraarendustehnika, mille abil kaks programmeerijat programmeerimiskeskkonnas koos töötavad. See on kõige kasulikum projektide puhul, kus mõlemad isikud on tihedalt seotud, näiteks kontseptuaalne ajurünnak ja silumine. Paarikaupa koos töötades saavad arendajad parandada koodi kvaliteeti, vähendada defektide arvu ning edendada koostöö- ja loomingulist keskkonda.