W środowisku IT zakorzeniło się wiele pojęć, które dla osób nietechnicznych czy bez dużego doświadczenia z zakresu zarządzania projektami IT mogą być trudne do zrozumienia. Dla programistów, testerów czy project managera pojęcia te są oczywiste i na stałe zakorzenione w codziennej wymianie informacji. Jeżeli chcesz sprawniej poruszać się w komunikacji ze swoim zespołem IT i posługiwać się ich slangiem - przygotowaliśmy słownik najczęściej używanych pojęć wśród osób zaangażowanych w projekty IT.
Backend to część systemu, która działa "za kulisami". Odpowiada za logikę działania aplikacji, przetwarzanie danych i komunikację z bazą danych. To, co użytkownik widzi na ekranie, jest wynikiem pracy backendu, ale sam backend jest niewidoczny dla użytkownika. Backend developer skupia się na tej części rozwiązania i porusza się w technologiach backendowych, takich jak PHP, .NET, C++, Java.
Frontend to część aplikacji, z którą użytkownik ma bezpośredni kontakt. Obejmuje interfejsy użytkownika, czyli to, co widzimy na stronie internetowej lub w aplikacji. Frontendowcy tworzą wizualną część aplikacji, dbając o to, aby była intuicyjna i estetyczna, i poruszają się w takich technologiach jak JavaScript.
Fullstack to osoba, która potrafi pracować zarówno nad frontendem, jak i backendem. Posiada umiejętności potrzebne do stworzenia całej aplikacji od początku do końca.
UX (User Experience) i UI (User Interface) to dwie kluczowe koncepcje związane z projektowaniem interfejsów użytkownika. UX koncentruje się na doświadczeniach użytkownika, czyli na tym, jak łatwa i przyjemna w użyciu jest aplikacja. UI dotyczy wizualnej strony aplikacji - czyli tego, jak wygląda.
QA to osoba lub zespół odpowiedzialny za zapewnienie, że oprogramowanie działa prawidłowo i spełnia określone wymagania jakościowe. QA często przeprowadza testy, aby znaleźć błędy i upewnić się, że produkt końcowy spełnia oczekiwania użytkowników.
Testy manualne to proces ręcznego sprawdzania aplikacji w celu znalezienia błędów. Tester wykonuje różne scenariusze, aby upewnić się, że aplikacja działa poprawnie.
Testy automatyczne polegają na wykorzystaniu skryptów do testowania aplikacji. Dzięki temu można szybko i skutecznie sprawdzić, czy aplikacja działa poprawnie po wprowadzeniu zmian w kodzie.
To różne rodzaje testów stosowane w procesie QA. Każdy z nich skupia się na innym aspekcie działania aplikacji:
Project Manager (PM) to osoba, która zarządza projektem, koordynuje prace zespołu i pilnuje, aby projekt był realizowany zgodnie z harmonogramem i budżetem. Product Owner (PO) to osoba odpowiedzialna za wizję produktu i priorytetyzację zadań, które muszą być wykonane, aby spełnić potrzeby użytkowników.
DevOps to podejście, które łączy działania programistyczne (Development) i operacyjne (Operations). DevOps inżynierowie dbają o to, aby proces wprowadzania zmian w aplikacji był płynny i nie powodował przerw w działaniu.
Bazy danych to systemy, w których przechowywane są informacje w uporządkowany sposób, umożliwiający szybkie i efektywne przetwarzanie danych. Dzięki bazom danych aplikacje mogą szybko i skutecznie pobierać, zapisywać, aktualizować i usuwać dane.
W ramach baz danych możemy spotkać się z różnymi modelami i technologiami:
Code review to proces, w którym inny programista przegląda kod napisany przez kolegę/koleżankę z zespołu. Celem jest znalezienie błędów, poprawienie jakości kodu oraz nauka poprzez dzielenie się wiedzą.
Rollback to cofnięcie zmian w systemie do poprzedniej, stabilnej wersji. Jest to zwykle stosowane, gdy po wdrożeniu nowej wersji aplikacji wykryte zostają poważne błędy.
Bug to błąd w kodzie, który powoduje, że aplikacja działa nieprawidłowo. Bugs są najczęściej naprawiane przez programistów, którzy identyfikują źródło problemu i wprowadzają odpowiednie poprawki.
Deploy to proces wdrażania nowej wersji aplikacji na serwerze produkcyjnym. Oznacza to, że zmiany dokonane przez programistów są udostępniane użytkownikom.
Prod to skrót od „production”, czyli środowisko produkcyjne. Jest to miejsce, gdzie działa finalna wersja aplikacji, dostępna dla użytkowników.
Repozytorium to miejsce, gdzie przechowywany jest kod źródłowy projektu. W repozytorium zapisuje się wszystkie zmiany w kodzie, co umożliwia śledzenie historii projektu i współpracę między programistami.
Środowisko testowe to miejsce, gdzie testowana jest aplikacja przed jej wdrożeniem na produkcję. Używa się go do symulacji rzeczywistego działania aplikacji, aby upewnić się, że wszystko działa poprawnie.
Środowisko developerskie to przestrzeń, w której programiści tworzą i testują kod na bieżąco. Jest to miejsce, gdzie można wprowadzać zmiany i testować je przed przeniesieniem na inne środowiska.
To różne zasady i podejścia do pisania kodu:
IDE to zintegrowane środowisko programistyczne, czyli aplikacja, która ułatwia pisanie kodu, testowanie go i debugowanie. Przykłady IDE to Visual Studio Code, IntelliJ IDEA, czy PyCharm.
Dług technologiczny to sytuacja, w której projekt IT zawiera kompromisy technologiczne, np. szybkie, ale mniej optymalne rozwiązania. Taki dług należy spłacić w przyszłości, poprzez refaktoryzację lub poprawę kodu.
Mikroserwisy to podejście do tworzenia aplikacji, w którym każdy komponent systemu jest niezależnym serwisem. Ułatwia to zarządzanie dużymi projektami, ponieważ każdy serwis można rozwijać i wdrażać niezależnie.
Legacy code to starszy kod, który jest trudny do utrzymania lub rozwijania, często dlatego, że został napisany według przestarzałych standardów lub bez odpowiedniej dokumentacji.
Commit to zapisanie zmian w kodzie w repozytorium. Każdy commit ma opis, który pomaga zrozumieć, co zostało zmienione.
Refactoring to proces ulepszania struktury istniejącego kodu bez zmieniania jego zewnętrznego zachowania. Celem refaktoryzacji jest poprawa czytelności kodu i ułatwienie jego utrzymania.
Framework to gotowy szkielet do tworzenia aplikacji, który dostarcza zestaw narzędzi, funkcji i bibliotek, ułatwiających pracę programisty. Przykłady to Django dla Pythona czy Angular dla JavaScriptu.
User Journey to mapa pokazująca, jak użytkownik wchodzi w interakcję z aplikacją od początku do końca. Pomaga zrozumieć, jak użytkownik porusza się po systemie, co pozwala na lepsze zaprojektowanie interfejsu i doświadczenia użytkownika.
Daily to krótkie, codzienne spotkanie zespołu, na którym omawiane są postępy, plany na najbliższy dzień oraz ewentualne przeszkody. Kickoff to spotkanie otwierające projekt, na którym omawiane są cele, zakres prac i harmonogram.
Pipeline to zestaw kroków, które kod przechodzi od momentu napisania do wdrożenia na produkcję. Obejmuje m.in. testowanie, buildowanie aplikacji, a także wdrażanie na serwer.
Backlog to lista zadań, które muszą zostać wykonane w ramach projektu. Zawiera ona zarówno nowe funkcje, jak i poprawki błędów, które czekają na realizację.
To metodyki zarządzania projektami IT:
Tablica projektowa to narzędzie, które pomaga zespołowi śledzić postępy prac. Na tablicy zazwyczaj widoczne są kolumny reprezentujące różne etapy pracy, np. „Do zrobienia”, „W trakcie”, „Zrobione”. Najczęściej używane narzędzia do tworzenia tablic projektowych to Trello, Jira, Asana, Clickup i inne.
Dokumentacja to zbiór dokumentów opisujących różne aspekty projektu, takie jak wymagania, instrukcje obsługi, architektura systemu czy opis API. Jest niezbędna do zrozumienia, jak działa system i jak go rozwijać. Najczęściej dokumentacja jest tworzona w narzędziach typu Confluence.
Roadmap to plan rozwoju projektu, pokazujący, jakie funkcje i zmiany będą wprowadzane w określonych terminach. Pomaga zespołom i interesariuszom zrozumieć, jakie są priorytety i cele długoterminowe.
Komunikacja asynchroniczna odbywa się bez natychmiastowej odpowiedzi, np. e-mail. Komunikacja synchroniczna to wymiana informacji w czasie rzeczywistym, np. rozmowa telefoniczna czy spotkanie online.
MVP to minimalna wersja produktu, która zawiera tylko kluczowe funkcje, niezbędne do uruchomienia projektu. MVP pozwala na szybkie wdrożenie i zbieranie opinii od użytkowników.
SMART to akronim opisujący zasady wyznaczania celów, które powinny być: Specific (konkretne), Measurable (mierzalne), Achievable (osiągalne), Relevant (istotne) i Time-bound (określone w czasie).
Deadline to ostateczny termin na wykonanie zadania lub dostarczenie projektu. Przekroczenie deadline’u może prowadzić do opóźnień i problemów w projekcie.
FYI to skrót od „For Your Information”, czyli „do wiadomości”. Używany jest, gdy chcemy przekazać komuś informację, która może być dla niego istotna, ale nie wymaga natychmiastowej reakcji.
Powyższy zestaw pojęć i definicji pomoże Ci sprawniej poruszać się w komunikacji z Twoim zespołem IT. Jeżeli jesteś osobą, która dopiero buduje dział IT w swojej firmie lub wdraża metodykę pracy z zespołem IT, może być to dla Ciebie duży natłok informacji. Dobrze jest mieć w zespole osobę, która połączy wiedzę z zakresu zarządzania projektami IT oraz techniczną i wesprze Cię w poukładaniu wszelkiego rodzaju procesów.
Jeżeli potrzebujesz wsparcia w zorganizowaniu współpracy z działem IT w Twojej firmie, możesz rozważyć wdrożenie do swojego zespołu CTO na godziny. Dzięki temu nie musisz podejmować się skomplikowanego procesu rekrutacji tego typu specjalisty, a dostajesz wsparcie z obszaru zarządzania i technologii.
Jako GravITy wspieramy firmy w organizowaniu współpracy z zespołem IT, dobierając zakres wsparcia do indywidualnej sytuacji klienta i jego potrzeb. Możemy wspólnie przebadać Twoją sytuację i zaproponować najlepsze rozwiązanie w trakcie krótkiej rozmowy.
Wypełnij formularz, a my skontaktujemy się z Tobą, aby wspólnie ustalić, jak możemy poprawić Twoje działania rekrutacyjne: