Ein wissenschaftlicher Programmierer ist ein speziell ausgebildeter Informatiker. Eine spezielle naturwissenschaftliche Ausbildung ist nicht erforderlich, Erfahrungen in dieser Branche sind jedoch hilfreich. Es gibt drei Hauptarbeitsbereiche für einen wissenschaftlichen Programmierer: Treffen mit Wissenschaftlern und Forschern, um festzustellen, was sie benötigen, Programmierung einer Reihe von Systemen, um diese Anforderungen zu erfüllen, Anpassung an sich ändernde Anforderungen der Wissenschaftler.
Um sich für diese Art von Position zu qualifizieren, muss der Kandidat über eine Kombination aus akademischen Qualifikationen und Erfahrung mit wissenschaftlicher Programmierung verfügen. In den meisten Fällen müssen die benötigten Programme entweder von Grund auf neu geschrieben oder durch umfangreiche Anpassung bestehender Tools erstellt werden. Mindestens 10 Jahre Software-Engineering und Life-Cycle-Management sind eine Standardanforderung.
Zu verstehen, was die Forscher benötigen, ist die Hauptaufgabe des wissenschaftlichen Programmierers. Erfahrungen in einem Forschungsumfeld können sehr hilfreich sein. Unter den in diesem Bereich erlernten Fähigkeiten sind Vertraulichkeit, Kreativität und klare Kommunikation die wichtigsten. Forscher sind hart umkämpft und schützen ihre Arbeit oft während der Entwicklungsphase vor anderen.
Der wissenschaftliche Programmierer ist mit seinem tiefen Verständnis einer Reihe von Computersprachen und Betriebssystemen dafür verantwortlich, neue Programme zu entwickeln, die den Bedürfnissen der Benutzer entsprechen. Diese Rolle beinhaltet ein erhebliches Maß an Kommunikation und Interaktion mit einer Vielzahl von Menschen. Die ursprünglichen Anforderungen können vom Wissenschaftler oder Studienleiter gestellt werden, die Prüfung wird jedoch von den Forschungsstudenten durchgeführt.
Die Umsetzung eines neuen Programms erfordert einen ganzen Aktivitätszyklus. Der erste Schritt besteht darin, die genauen Spezifikationen zu entwerfen, wie sie vom Programmierer verstanden werden. Das Programm wird dann von den Forschungsstudenten entwickelt und getestet. Korrekturen, Überarbeitungen und Bearbeitungen sind in diesem Prozess normal. Nach Annahme durch die Forschungsstudierenden wird das Programm dem Forscher zur Begutachtung zur Verfügung gestellt. Einmal getestet, kann es nun vom Team verwendet werden. Eine Dokumentation des Programms ist oft erforderlich und kann sogar Teil der Forschungsarbeit sein, wenn sie veröffentlicht wird.
Im Laufe der Zeit gibt es oft Anfragen, bestehende Programme zu ändern. Diese Änderungen werden normalerweise vom ursprünglichen Programmierer durchgeführt, da er oder sie mit den Details am besten vertraut ist. Daher verlässt sich der wissenschaftliche Programmierer oft auf umfangreiche Notizen, um zu verstehen, was getan wurde und was geändert werden muss, um die neuen Anforderungen zu erfüllen. Jede Programmänderung muss denselben Testprozess durchlaufen, um sicherzustellen, dass das Programm alle Anforderungen erfüllt.