Doświadczony software house – czyli w sumie jaki?

Doświadczony software house - czyli w sumie jaki?

W tytule artykułu mamy zestawione ze sobą dwa proste pojęcia oraz banalne pytanie na które odpowiedź nie jest już taka oczywista.

Zacznijmy od tego czym jest software house - w ogólnym rozumieniu to firma zajmująca się projektowaniem i wytwarzaniem różnych rozwiązań IT dla biznesu.

Jak zdefiniować doświadczenie?

Według Wikipedii to po prostu wiedza jak wykonać pewne zadania.

To dość ogólna definicja jak na tak szerokie pojęcie, trochę trudne do precyzyjnego określenia. Tym bardziej, że każdy może je odbierać nieco inaczej, w zależności od tego do jakiego rodzaju zadań je odniesiemy.

Celowo zamiast do IT nawiążę najpierw do motoryzacji, aby na kilku prostych przykładach zobrazować jak postrzegamy doświadczenie:

Pierwszy przykład to młodzi kierowcy - w dzisiejszych czasach prawie każdy posiada prawo jazdy. W naturalny sposób czujemy na czym może polegać i z czego wynika różnica w doświadczeniu młodego kierowcy, który dopiero rozpoczyna swoją przygodę z motoryzacją oraz kogoś kto prowadzi już auto od wielu lat.

Drugi przykład to zestawienie np. kierowcy taksówki i mistrza Formuły 1. Pomimo tego że realizują to samo zadanie - czyli kierują pojazdem - to jednak realizują je w zupełnie innych "obszarach", które wykształcą w nich różne umiejętności. Gdyby zamienili się miejscami to byliby w stanie poprowadzić inny pojazd. Ale czy prowadziliby go tak samo szybko, pewnie i bezpiecznie?

Trzeci przykład odnosi się do mechaników - tu sprawa jest najbardziej oczywista, różnica pomiędzy dobrym i kiepskim mechanikiem nie wymaga specjalnego tłumaczenia - doskonale wiemy że to kwestia jakości. Jeśli naprawa była zrobiona kiepsko, wówczas nie uznamy mechanika za fachowca godnego polecenia naszej rodzinie czy znajomym.

"Jak coś jest do wszystkiego, to jest do niczego"

oraz

"Praktyka czyni mistrza"

To dwa przysłowia prawie idealnie oddaje sedno sprawy, zarówno w motoryzacji jak i innych branżach.

To właśnie specjalizacja i praktyka zdobyta podczas wykonywania różnych zadań z konkretnego obszaru powoduje, że postrzegamy kogoś jako specjalistę, eksperta czy mistrza w swojej dziedzinie, ale tylko wówczas, gdy realizowane przez niego zadania czy usługi są najwyższej jakości.

W IT jest analogicznie - ogrom tej branży i jej błyskawiczny rozwój powodują że można w niej wydzielić dziesiątki jeśli nie setki różnych obszarów i specjalizacji.

Aby odpowiedzieć na kluczowe pytanie zadane na początku artykułu, potrzebujemy rozpatrzeć cztery składowe doświadczenia:

  • obszar działania,
  • zadania do realizacji,
  • praktykę w ich wykonywaniu,
  • i na koniec jakość samego wykonania.

W jakich obszarach może działać software house?

Wymieniając tylko niektóre z nich:

  • design i projektowanie stron www, aplikacje mobilne, aplikacje internetowe czy projekty aplikacji pisane pod dedykowane systemy operacyjne
  • systemy klasy CMS, CRM, ERP,
  • e-commerce - pojedyncze sklepy internetowe, platformy marketplace
  • web development - czyli aplikacje obsługiwane za pomocą przeglądarek internetowych
  • strony www oparte na gotowych systemach np. Wordpress czy Magento
  • intranetowe projekty wykonane z założeniem zamkniętego działania w obrębie tylko jednej firmy
  • systemy klasy enterprise wymagane tam gdzie biznes działa w ogromnej skali lub pod dużym obciążeniem np. Allegro lub Amazon
  • projektowanie dedykowanych systemów dostosowanych do indywidualnych potrzeb klienta i jego przedsiębiorstwa
  • realizacja zleceń opartych na tworzeniu wtyczek rozszerzających istniejące oprogramowanie
  • integracje łączące różne zewnętrzne platformy w jeden większy system - np integracja z systemami płatności, systemami magazynowymi czy systemami od telematyki
  • świadczenie usług doradczych z zakresu projektowania aplikacji internetowych czy optymalizacji oprogramowania
  • systemy do obsługi transportu, logistyczne, nadzoru ruchu, do komunikacji z kierowcami, do obiegu dokumentów

A to tylko pierwsze z brzegu przykłady obszarów w jakich działa software house.

Jakie zadania są realizowane przy tworzeniu projektów IT?

Przeczytasz o tym w następnym artykule - zapraszamy już za tydzień :)

Zobacz również

Doświadczony software house – czyli w sumie jaki? – część 2

Przedstawiam kolejną część artykułu Doświadczony software house – czyli w sumie jaki? Jakie zadania są realizowane przy tworzeniu projektów IT? Praktycznie każdy projekt IT realizowany przez software house ma swój cykl życia. W jego skład wchodzi cały szereg zadań, a w zależności od obszaru z jakiego jest realizowany dany projekt zadania mogą się od siebie […]

Czytaj więcej

Pair programming

Co to w zasadzie jest pair programming? Pojęcie pair programming odnosi się do tworzenia jednego projektu IT lub jego fragmentów w parach. Jeden z programistów pisze kolejne wiersze kodu, podczas gdy ten drugi śledzi kod na ekranie monitora i zwraca uwagę na ewentualne błędy. Takie działanie w parach w układzie tzw. driver & navigator jest […]

Czytaj więcej