System oparty o Google Sheets? Znakomity sposób na szybki start
Kojarzysz agregator zarobków level.fyi? Strona, na której możesz zobaczyć zarobki różnych stanowisk w naszej branży. Na początku miesiąca wyszedł post na ich blogu. Opisali oni jak wyskalowali się do miliona odsłon wykorzystując jako bazę Google Sheets: https://www.levels.fyi/blog/scaling-to-millions-with-google-sheets.html
Wszystkie wykorzystywane przez nich serwisy to:
Google Forms
Google Sheets
AWS Lambda (funkcje serverless)
AWS API Gateway (przekierowania)
Amazon CloudFront (pliki)
Jest to świetny przykład na to jak szybko wystartować ze swoim biznesem, bez całej złożoności technologicznej. Levels.fyi przez 2 lata było w stanie niskim kosztem walidować swoje podejście biznesowe. Dopiero po dwóch latach zmienili rozwiązanie na bardziej profesjonalne. Dalszy rozwój techniczny przestał być możliwy, więc zmienili wewnętrzne rozwiązania.
Czy da się to zrobić w trudniejszym projekcie?
Łatwo można zbagatelizować ten przykład - to przecież tylko prosta strona do wpisywania danych. Podam Ci trudniejszy przykład - mój własny 😀Swojego czasu uruchamiałem produkt, gdzie mieliśmy skomplikowane procesy biznesowe i techniczne. Tego nie dało się uprościć. Trzeba było zakasać rękawy i ogarnąć to w kodzie. Jednak analiza Event Stormingiem pokazała, że złożone podejście jest wymagane tylko dla części systemu. Wszystko inne dało się uprościć:
Aplikacji admina - kupiony gotowy szablon, zarówno graficzny jak i skrypty
Backend dla części systemu - Excel na OneDrive
Aplikacja frontowa - strona statyczna bez JS
Procesy synchronizujące - automaty i rozwiązania no-code
Zarządzanie użytkownikiem - usługa Azure AD B2C
Byliśmy w stanie wystartować po 3 miesiącach, zamiast po roku. Zebrać feedback z rynku i iterować dalej.Patrząc z obecnej perspektywy widzę ile bym stracił robiąc od razu extra-nowoczesnymi technologiami.
Jak uruchamiać nowy produkt
Jeśli uruchamiasz nowy produkt:
🌍 Dziel rozwiązanie techniczne na mniejsze obszary
Rzadko kiedy cały twój produkt jest identycznie skomplikowany w całej swojej szerokości. Zwykle powinno dać się wydzielić osobne obszary, skupione na mniejszej odpowiedzialności. Wtedy możesz podejść do każdego problemu w różny sposób.
Tutaj możesz wykorzystać Event Storming i wzorce dookoła domen i subdomen. Ocena subdomen na główne / wspierające / ogólne pozwala dobrać narzędzia do skomplikowania.
🛣️ Zastanów się nad najprostszą drogą dojścia do celu
Zwykle zastanawiamy się jak rozwiązać dany problem raz a dobrze. Wymyślamy uber rozwiązanie, które obsługuje 120 przypadków. Ale to droga do nikąd.
W ramach pracy nad rozwiązaniem postaraj się obsłużyć automatycznie główne przypadki. Określ minimalną architekturę , która udźwignie całość. Bardzo możliwe, że nigdy nie wyjdziesz ze swoim rozwiązaniem poza te główne przypadki.
W tym temacie polecam gorąco prezentację Grega Younga - Stop Over-Engineering.
🤖 Automatyzuj procesy wyklikiwalnymi automatami.
Na samym początku twoich procesów nie powinno być zbyt dużo. Te kluczowe warto jest zaprogramować w kodzie. Ale te pozostałe można stworzyć prostszymi sposobami.
Aktualnie mamy bardzo wiele narzędzi, które umożliwiają wyklikanie procesów biznesowych. Można łączyć się bezpośrednio do maili, formularzy, dysków sieciowych. Umożliwiają połączenie ze sobą serwisów, tworząc stabilne automaty. Ponad to można wykorzystać gotowe SaaSy. Na początek na pewno wystarczy.
Na dole umieściłem linki do tych narzędzi 👇
🎁 Kupuj gotowe komponenty - designów, czy szablonów.
Kiedy tworzysz własne rozwiązanie to jest pokusa by ono wyglądało przepięknie i unikatowo. Jednak na początku nie wiesz, czy pomysł jest warty świeczki. Wtedy inwestycja w cudowność interfejsu rzadko się zwraca.
Warto wystartować z czymś prostym. Na rynku są gotowe szablony graficzne, które można kupić i tanim kosztem dostosować do swoich potrzeb. Albo można wykorzystać grafików z marketu, którzy za bardzo niski koszt stworzą nam podstawową identyfikację graficzną. Nie będzie to 1-rzędna jakość, ale takiej też nie potrzebujesz.
Na dole umieściłem linki do stron👇
Czy to nie zwiększy długu technologicznego?
Oczywiście, że zwiększy.
Jest to metoda na szybki start. Chcemy w krótkim okresie czasu zwalidować czy pomysł biznesowy chwyci. Czy mamy tzw. “market fit”. Później to trzeba przerabiać na poważniejsze technologie.
Ale jak to powiedział ktoś na twitterze:
Możesz mieć albo dług technologiczny, albo klientów 😅
Jakie narzędzia możesz wykorzystywać?
Podrzucam usługi, które możesz wykorzystać (z lekkim bias do usług MS):
Webowe buildery: Wix, Webflow
Automatyzatory - Zapier, IFTTT, Microsoft Automate
Zarządzanie danymi - Airflow, Smartsheet, Excel z Power Automate
Formularze - Typeform, SurveySparrow
Platformy sprzedażowe - easycart, Stripe Checkout
Subskrybcje - Stripe Billing, ChargeBee
Zarządzanie użytkownikiem - Auth0, Azure AD B2C
Możesz również kupić gotowe materiały (szablony, skrypty, pluginy czy grafiki) na ThemeForest, CreativeMarket lub Template Monster. A gdyby gotowe materiały Ci nie pasowały to możesz po absurdalnie niskich cenach znaleźć kogoś kto stworzy dla Ciebie coś od zera na Fiverr.
Podsumowanie
Nie od razu Rzym zbudowano. Wybranie prostszej drogi pozwala na szybsze dostarczenie czegoś działającego.
A ty? Wykorzystujesz do czegoś gotowe narzędzia, by szybciej dostarczać?