Bir yazılım programcısı, bağımsız ürünler olarak çalışan veya diğer hizmetler ve sunucularla etkileşimde bulunan yazılım ve uygulamalar için kod yazmak için programlama dillerini kullanan kişidir. Bilgi teknolojisi hizmetleri sunmanın bir parçası olarak yazılım sistemlerinin tasarımından, test edilmesinden ve bakımından sorumludurlar.
Yeni yazılım oluşturmaya ek olarak, yazılım programcıları var olan yazılımı amaçlanan uygulamasına göre test eder, hataları ve hataları bulur ve sorunları gidermek veya farklı bir kullanım için uyarlamak için yazılımı değiştirir. Mevcut yazılımla çalışırken, yazılım programcıları normalde yazılımı mevcut ağlarla bütünleştirmeye çalışırlar. Alternatif olarak, bir şirketin BT departmanının belirlediği özelliklere dayanarak tüm sistemi yeni bir yazılım çözümüyle değiştirmekle görevlidirler.
Yazılım programcıları, şirketlerin zaten kullandıkları yazılım sistemlerini gözden geçirmek ve potansiyel gelişmelere ilişkin yeni fikirler sunmak için tasarımcılarla ve analistlerle birlikte çalışırlar. Yeni yazılım veya uygulamalar oluşturduktan sonra, piyasaya sürüldüğünde düzgün çalışmasını sağlamak için gerçek durumları taklit eden kontrollü bir ortamda işlevselliği test ederler. Bu süreçte, yazılım programcıları ayrıca eğitim ve yazılımın doğru kullanımı ile ilgili kullanıcı merkezli belgeler oluşturur. Yazılım programcıları genellikle video oyunları ve işletim sistemleri gibi birincil olarak satış için amaçlanan ya da sipariş eden şirketin ticari işlemlerini kolaylaştıracak bir yazılım oluşturmaya odaklanır.