Ohjelmoijan tehtävät ja vastuut voivat vaihdella jonkin verran sen yrityksen tarpeiden mukaan, jossa hän työskentelee. Yleensä ohjelmoijat ovat kuitenkin yleensä vastuussa tietokoneohjelmistojen ja erityyppisten ohjelmien ja apuohjelmien luomiseen käytetyn koodin luomisesta, muokkaamisesta ja arvioinnista. He voivat olla mukana uuden ohjelman suunnittelun alkuvaiheessa ja suunnitteluasiakirjan luomisessa, jota käytetään sitten koko muun kehityksen ajan. On myös monia tilanteita, joissa ohjelmoija yksinkertaisesti seuraa muiden luomaa asiakirjaa ja pyrkii varmistamaan, että kaikki vaaditut standardit täyttyvät.
Yksi ohjelmisto -ohjelmoijan tärkeimmistä tehtävistä on uuden koodin luominen, jota käytetään ohjelmiston tekemiseen. Tämä voidaan tehdä useilla eri tavoilla riippuen ohjelmistokehittäjän käyttämästä ohjelmointikielestä ja alustasta. Yleensä kehitykseen liittyy kuitenkin yleensä satojen, tuhansien tai jopa miljoonien koodirivien luominen, joita käytetään ohjelman toimimiseen oikein. Kaikki tämä on ohjelmisto -ohjelmoijan luoma, vaikka ohjelmoijaryhmät työskentelevät yleensä yhdessä suurissa projekteissa.
Ohjelmoijan luoma koodi perustuu tyypillisesti sen yrityksen tarpeisiin, jossa hän työskentelee, ja halutun tuloksen tietylle ohjelmalle. Tämä perustuu usein suunnitteluasiakirjaan, joka luodaan kehityssyklin alussa ja jossa hahmotellaan valmiiden ohjelmistojen eri näkökohtia. Ohjelmoija voi käyttää tätä asiakirjaa ymmärtääkseen paremmin, miten lopullisen ohjelman pitäisi näyttää ja toimia. Ohjelmoijat voivat olla mukana tämän asiakirjan luomisessa, vaikka tiimin vetäjät ja pääkehittäjät yleensä luovat sen ja käyttävät sitä sitten ohjaamaan eri ohjelmiston parissa työskentelevien ohjelmoijien työtä.
Kun eri koodiosat on täytetty ja koottu yhteen lopullisen ohjelman luomisen aloittamiseksi, ohjelmisto -ohjelmoija saattaa myös työskennellä testaajien ja muiden osastojen kanssa osana suurempaa työtä. Testaukseen osallistuu yleensä lukuisia henkilöitä, jotka käyttävät ohjelmaa tai sovellusta nähdäkseen kuinka hyvin se toimii. Kun ongelmia ja virheitä havaitaan, ohjelmoijat saavat raportteja, jotka käyttävät niitä ongelman uudelleen luomiseen ja sen lähteen löytämiseen. Ohjelmoija muuttaa ohjelmiston ja lisää dokumentaatioon itse koodin osoittaakseen muille, miksi nämä muutokset on tehty, jolloin tiimi voi työskennellä paremmin yhdessä ja nähdä, mitä muut ovat tehneet.