Wybór technologii w startupie

Data dodania:

Wybór technologii w startupie

Wybór technologii to dla wielu startupów klucz do rozwoju produktu i finansowego sukcesu. Dlaczego? To właśnie rozwiązanie IT może mieć kluczowy wpływ na skalowalność biznesu, szybkość działania aplikacji czy też nawet obsługę klienta i jej czas. Co zrobić, by podjąć dobrą decyzję przy wyborze technologicznych rozwiązań?

Czym się kierować i na co zwrócić uwagę?

Przede wszystkim technologia powinna być dostosowana do startupu. Nie ma uniwersalnego rozwiązania – dla jednych kluczowa będzie niezawodność, jeszcze inni postawią na elastyczność rozwiązania i możliwość dostosowania jej do innych rynków. To wszystko zależy od rodzaju startupu, jego celu i niezbędnych funkcjonalności. Warto jednak zwrócić uwagę na kilka najważniejszych czynników i to w zgodzie z nimi podjąć decyzję co do optymalnej technologii:

  • Jaki by to nie był startup, to technologia powinna wyróżniać się niezawodnością i stabilnością. Szczególnie, jeśli to ona jest podstawą proponowanej usługi. Wszelkiego rodzaju bugi, przerwy w działaniu systemu i inne technologiczne wpadki nie wchodzą w grę. Konsumenci rzadko kiedy dają startupom czy markom drugą szansę, a to przecież o lojalnych klientów zabiegają przedsiębiorcy, zwracając uwagę na ich lifetime value.
  • Warto zweryfikować, jak dobrze i szybko technologia radzi sobie z dużym ruchem czy szerokim gronem użytkowników. To szczególnie ważne, gdy spodziewamy się znacznego zainteresowania usługą – lepiej testy przeprowadzić przed oddaniem produktu niż testować działanie technologii na „żywym organizmie”, co może skończyć się wizerunkową katastrofą.
  • Ważnym elementem jest także stopień rozwijalności technologii – czy osiągnęła już ona swoje maksimum, czy może wciąż ma przed sobą perspektywy rozwoju i nowych rozwiązań. Jeśli wybierzemy przestarzałą technologię, to na dłuższą metę przegramy rywalizację z konkurencją, nawet startując z pole position, ze świeżym pomysłem.
  • Technologia powinna być możliwie elastyczna i skalowalna, by można było bez problemów zastosować ją na np. na różnych rynkach czy też dopasować do pokrewnego, ale jednak innego rodzaju usługi. Lepiej działać wówczas w oparciu o jedną technologię niż ponownie dopasowywać kolejne rozwiązania na potrzeby startupu.

Jakie technologie warto rozważyć?

Obecnie na rynku dostępnych jest wiele technologii wykorzystywanych przy tworzeniu aplikacji internetowych. Każda z nich ma swoje wady i zalety. Najważniejsze jednak jest to by poznać ich możliwości, dostępność programistów lub software housów, a także koszt roboczogodzin.

Każdy projekt internetowy składa się z co najmniej dwóch elementów: frontendu i backendu.

W skrócie frontend odpowiada za wizualną część aplikacji, a backend za jej funkcjonowanie i zarządzanie. Frontend jak i backend można oprzeć na tej samej technologii z tym, że coraz częściej odchodzi się od tego na rzecz rozdzielenia tych dwóch elementów na różne technologie.

Technologie frontendowe

Aplikacje internetową można oprzeć w 100% na html i css. To powoduje, że strona oparta jest o statyczną treść, można zrobić opcjonalnie filtry czy formularze przy użyciu języka PHP lub Jquery.

Dla prostych strony, które nie potrzebują interakcji z klientem ten sposób się sprawdzi, jednak w sytuacji, gdy aplikacja opiera się na interakcjach z użytkownikiem wtedy potrzebujemy szybkiej i dynamicznej komunikacji. Dlatego coraz częściej część frontową aplikacji robi się przy użyciu bibliotek java scriptowych takich jak: react, vue czy angular. Biblioteki te są technologiami Open Source, dzięki czemu są ciągle rozwijane. Nie można jednoznacznie powiedzieć, która z nich jest najlepsza, wiadome jednak jest to, że są to w obecnym czasie najlepsze frameworki java scriptowe dostępne na rynku. Powstaje dla nich wiele dodatków, dokumentacja jest szeroka, a społeczność skupiona wokół nich tworzy każdego dnia masę artykułów i tutoriali. Poza tym technologie te udostępniają wiele gotowych rozwiązań z których można skorzystać podczas tworzenia naszego frontu w myśl zasady „po co wymyślać koło od nowa”. Koszt roboczogodziny w zależności od firmy i technologii rozpoczyna się od 80 – 90 zł za godzinę pracy developera.  Dostępność programistów w tych technologiach jest coraz większa, gdyż frameworki te stały się coraz bardziej przyjazne dla programisty, a możliwości budowy aplikacji wręcz nieograniczone.

Technologie backendowe

Backend aplikacji jest jak silnik w samochodzie. Nie widać go, ale powoduje, że samochód jedzie do przodu. Podobnie jest z backendem w aplikacjach. Odpowiadają za działanie całej aplikacji. Przekazują do frontendu dane, wrzucają dane do bazy danych, integrują się z systemami zewnętrznymi, zarządzają treścią czy użytkownikami. Podobnie jak w przypadku technologii frontendowych wybór technologii backendowej jest równie duży.  Najbardziej popularnymi technologiami backendowymi są min.:

  • PHP – język ten posiada wiele frameworków jak np. laravel czy symfony. Na jego bazie zbudowanych jest również wiele systemów cms takich jak Wordpress czy Drupal.
  • Ruby – najbardziej popularnym i stosowanym frameworkiem jest Ruby on Rails. Technologia ta charakteryzuje się szybkością działania, łatwością pisania kodu przez programistów. Jest często wykorzystywana przy budowie startupów.
  • Elixir – ciekawy język z frameworkiem podobnym do ruby on rails – phoenix framework. Aplikacje napisane w elixirze charakteryzują się dużą szybkością i skalowalnością. Język jednak nie jest jeszcze tak popularny jak php, python czy ruby.  
  • Python – z frameworkiem Django. Technologia podobnie jak poprzednie szybka, skalowalna i z masą dodatków do wdrożenia „out of the box”.
  • Node js – tym razem jest to bibliotek java scriptowa. Tak java script służący jako backend.

Koszty programistów backendowych zaczynają się również w podobnych granicach co frontendowych. Godzina pracy kształtuje się w granicach 80-90 zł za technologie PHP, a przy pozostałych technologiach od 100 zł w górę.

Wybór technologii w startupie

Programiści wsparciem wyboru

Przy wyborze warto poradzić się doświadczonych programistów, którzy pomagali już w rozwoju niejednego startupu. Gdy przedstawi się im konkretny plan, a także szersze perspektywy i plany biznesowe, to na pewno doradzą w kwestii odpowiedniego doboru systemu CMS czy też optymalnego framework-a. Dużo też zależy od budżetu – im mniejszy, tym prostsze i łatwiej modyfikowalne rozwiązania powinno się wybierać. To ogranicza ryzyko popełnienia błędów. Przy większych nakładach finansowych, gdy można zatrudnić bardziej zaawansowanych programistów, można decydować się na trudniejsze i bardziej rozbudowane technologie.

Pamiętajcie, żeby przemyśleć swój wybór technologii i starać się podjąć optymalną, dobrze przemyślaną i dostosowaną do startupu decyzję. Zła wybór co do technologii przekreślił już niejeden pomysł na startup – nie popełnijcie tego błędu!