Co robi programista naukowy?
Programista naukowy to specjalnie przeszkolony specjalista ds. Technologii informatycznych. Nie ma wymogu specjalnego szkolenia w nauce, ale każde doświadczenie w tej branży byłoby pomocne. Istnieją trzy podstawowe obszary pracy programisty naukowego: spotkanie z naukowcami i badaczami w celu ustalenia, czego potrzebują, programowanie szeregu systemów spełniających tę potrzebę, dostosowanie do zmieniających się wymagań dostarczanych przez naukowców.
Aby zakwalifikować się na tego typu stanowisko, kandydat musi mieć połączenie kwalifikacji akademickich i doświadczenia w programowaniu naukowym. W większości przypadków wymagane programy muszą być napisane od zera lub utworzone przez szerokie dostosowanie istniejących narzędzi. Standardowe wymaganie to minimum 10 lat inżynierii oprogramowania i zarządzania cyklem życia.
Zrozumienie, czego wymagają naukowcy, jest główną rolą programisty naukowego. Doświadczenie w pracy w środowisku badawczym może być bardzo pomocne. Wśród umiejętności nabytych w tej dziedzinie najważniejsza jest poufność, kreatywność i jasna komunikacja. Naukowcy są bardzo konkurencyjni i często strzegą swojej pracy przed innymi na etapie opracowywania.
Wykorzystując swoje głębokie zrozumienie różnych języków komputerowych i systemów operacyjnych, programista naukowy jest odpowiedzialny za opracowywanie nowych programów spełniających potrzeby użytkowników. Ta rola wymaga znacznej ilości komunikacji i interakcji z szerokim gronem ludzi. Naukowiec lub badacz mogą przedstawić oryginalne wymagania, ale badania zostaną przeprowadzone przez studentów badań.
Wdrożenie nowego programu wymaga całego cyklu działań. Pierwszym krokiem jest zaprojektowanie dokładnych specyfikacji w rozumieniu programisty. Program jest następnie opracowywany i testowany przez studentów badań. Korekty, poprawki i zmiany są normalne w tym procesie. Po zaakceptowaniu przez studentów badań program jest przekazywany badaczowi do przeglądu. Po przetestowaniu może być teraz używany przez zespół. Dokumentacja programu jest często wymagana, a nawet może stanowić część artykułu badawczego, jeśli zostanie opublikowany.
Z czasem często pojawiają się prośby o zmianę istniejących programów. Zmiany te zwykle wykonuje oryginalny programista, ponieważ on lub ona jest najbardziej zaznajomiona ze szczegółami. Jako taki, programista naukowy często korzysta z obszernych notatek, aby zrozumieć, co zostało zrobione i co należy zmienić, aby spełnić nowe wymagania. Każda zmiana programowania musi przejść ten sam proces testowania, aby upewnić się, że program spełnia wszystkie wymagania.