Od małego projektu po firmę wartą miliony dolarów. Historia Damiana Nowaka
Tydzień temu opublikowaliśmy pierwszą część rozmowy z Damianem Nowakiem, którego ścieżka kariery nas zaskoczyła. Mimo że nadal rozwija się jako programista, przed Damianem szereg wielu wyzwań związanych z prowadzeniem własnej firmy zatrudniającej programistów. Tę część rozmowy poświęciliśmy właśnie wątkowi przedsiębiorczości i tego, jak prowadzić firmę ze wsparciem inwestora.
Jeśli jeszcze tego nie zrobiłeś, to zachęcamy do przeczytania pierwszej części rozmowy, czyli artykułu pt. Od „informatyka” do CEO firmy w Teksasie. Historia Damiana Nowaka.
W 2014 roku założyłeś firmę Virtkick, a rok później pozyskałeś milion dolarów inwestycji na jej rozwój. Dlaczego potrzebowałeś jednego, a nie dwóch milionów na rozwój i na co wydałeś te środki?
Milion dolarów to była w owym czasie kwota idealna dla firmy, która ma pomysł, prototyp i zaplecze mentorskie, ale nie ma jeszcze faktycznego produktu używanego przez wielu poważnych klientów. Taką firmą był Virtkick w roku 2015, zaraz po przejściu przez startup accelerator Techstars, a więc zdobyciu walidacji i prestiżu w oczach inwestorów. Wszak do programu Techstars Cloud 2015 aplikowało ponad tysiąc firm z całego świata, a wybrano tylko dziesięć – w tym nas.
Wracając do tego miliona, jest to pewnego rodzaju gra. Z jednej strony potrzebujesz jak najwięcej kasy, bo to oznacza dłuższy runway i lepszy komfort psychiczny. Z drugiej strony, rynek inwestorski wycenił twoją firmę na jakąś kwotę i każdy dodatkowy dolar zmniejsza procent twojego udziału w firmie. Im dłużej założyciele utrzymają kontrolny udział, tym lepiej dla nich. A chodzi tu przecież o to, by firmę kiedyś sprzedać za dziesiątki albo setki milionów dolarów.
Tak więc z jednej strony chcesz jak najwięcej kasy teraz, a z drugiej chcesz oddać jak najmniej akcji w firmie. I tenże milion dolarów był kwotą, która dawała nam dobry finansowy start, a jednocześnie nie zjadała zbyt dużo naszego tortu.
Sam fundraising zjada bardzo wiele czasu i energii. W czasie, gdy szukałem funduszy dla firmy, mój co-founder Damian “Rush” Kaczmarek przejął po mnie większość rzeczy związanych z produktem. Mimo że jego comfort zone’em było w owym czasie rozwiązywanie trudnych problemów technicznych, produkt i strategia wyszły mu doskonale.
Czy byłbyś w stanie rozkręcić firmę samodzielnie, bez kasy od inwestora? Albo z kasą od inwestora, ale bez co-foundera?
Prosta odpowiedź: nie i nie. Zarówno ja, jak i mój co-founder, nie byliśmy jakoś specjalnie majętni przed Virtkickiem. Żaden z nas nie był “serial entrepreneur” z wieloma milionami na koncie z poprzednich exitów. Nie moglibyśmy utrzymać swoich rodzin bez stałego źródła przychodu przez dłużej niż pół roku, a tym bardziej zatrudnić developerów! Do tego dochodzi jeszcze “time to market”.
Bootstrapowanie firmy po godzinach wyłącznie przez cofounderów oznacza bardzo długi time to market i bardzo wolny wzrost. Mój poprzedni biznes, AtlasHost, był zbootstrapowany. Jako firma usługowa, a nie produktowa, time to market był bardzo krótki, ale wzrost był bardzo wolny. Pewnie, AtlasHost przekroczył próg rentowności ledwo po pół roku, ale mówimy tutaj o groszowych sprawach. Po paru latach sprzedałem ten biznes za fajne pieniądze, ale nie były to kwoty znane ze świata startupów. Bo nie był to startup! To był mały “lifestyle business”, na którym nie było kokosów.
Gdy w lecie 2014 roku zdałem sobie sprawę, że ten “mały projekcik”, nad którym pracuję po godzinach ma potencjał bycia firmą wartą miliony, od razu wiedziałem, że tutaj trzeba pozyskać kasę od inwestorów. Zaś to oznacza, że musisz mieć co-foundera, bo fundraising sam w sobie potrafi trwać wiele miesięcy i wyłącza cię praktycznie całkowicie z typowych zadań. Dodatkowo, co dwie głowy to nie jedna, mawiają. W tej sytuacji matematyka płata nam figla, bo 1+1=2,5, a nawet 3,5 w przypadku brainstormingu! W dwie albo trzy osoby po prostu jest łatwiej.
Można podzielić zadania pomiędzy osoby według ich umiejętności lub preferencji. Wakacje lub lekarz to nie problem. Ostatecznie, bus factor jest niski przy zaangażowanych co-founderach, bo w przypadku tragedii (osobistej), nie będzie… tragedii (dla firmy). A to zmniejsza ryzyko dla inwestorów.
Znalazłem fantastycznego co-foundera – Damiana “Rush” Kaczmarka, który był naturalnym wyborem. Poznaliśmy się kilka lat wcześniej na imprezie studenckiej i jakoś szybko “kliknęło” między nami. Jako jedni z niewielu dyskutowaliśmy o kodzie, technikach programowania oraz próbowaliśmy przekonać się nawzajem o wyższości języka programowania X nad Y. Z czasem zaczęliśmy jakieś wspólne projekty. I tak już zostało.
Jak bardzo zmienił się Twój dzień pracy po sformalizowaniu firmy?
Dzień pracy zmienił się znacznie. Przybyło obowiązków, w szczególności w rejonach, w których wcześniej nie miałem doświadczenia. Aczkolwiek nowości nigdy nie były dla mnie… nowością. Jak bym nie patrzył na moje ostatnie 20 lat życia, coś nowego i dużego rozpoczynało się mniej więcej co 3-5 lat. Myślę, że “zmiana” to moja siła napędowa. I powód, dla którego jeszcze się nie wypaliłem. Ciężko się wypalić, jeśli co chwilę robię coś nowego!
Prowadzenie firmy sprawia Ci więcej satysfakcji niż programowanie?
Oba sprawiają dużo satysfakcji, choć obecnie biznes wydaje się sprawiać mi jej więcej. Moich 5 najmocniejszych stron według Strengths Finder 2.0, to: achiever, competition, self-assurance, learner, maximizer. Jestem już w okolicach pułapu możliwego rozwoju w programowaniu i nie widzę tam już ścieżki rozwoju, zaś do bycia Jeffem Bezosem lub CTO w Fortune 500 jeszcze mi trochę brakuje. Tak jak 5-15 lat temu programowanie żywiło moją wewnętrzną potrzebę uczenia się czegoś nowego (learner), by ostatecznie być w danej rzeczy najlepszym (achiever, maximizer, competition), tak dzisiaj biznes jest siłą, moim wewnętrznym motorem napędowym. Choć nie jedynym!
Lubię też grać w gry, w szczególności gry z serii Battlefield, w które jestem całkiem dobry. Zauważyłeś regułę? Lubię robić to, w czym jestem dobry, więc próbuję być jeszcze lepszym. Sprzężenie zwrotne.
Przypomniały mi się czasy późnej podstawówki i wczesnej gimbazy, kiedy w moim małym miasteczku otworzono kafejkę internetową. Szybko stało się to miejscem, gdzie chłopaczki przychodzili grać po sieci LAN w Counter-Strike. Chodziłem tam po szkole patrzeć jak inni grają. Raz nawet zapłaciłem 3 złote, by pograć przez godzinę z innymi. Zostałem zniszczony, coś w stylu K/D 0.05! Poszedłem do domu, zamówiłem Half-Life (to były jeszcze czasy, gdy Counter-Strike był darmowym modem do HL) i zacząłem grać w domu przeciwko botom, gdy tylko płyta CD przyszła pocztą.
Trenowałem na botach około półtora miesiąca. Gdzieś po drodze kupiłem gamingową myszkę. Potem poszedłem do kafejki jeszcze raz. Wziąłem moją myszkę pod pachę i mojego konfiga na dyskietce. Do dzisiaj pamiętam, jak mi serce kołatało przy rozpoczęciu gry na cs_assault_upc przeciwko stałym bywalcom kafejki. Myśleli, że będzie im łatwo. Tym razem ja ich zniszczyłem.
Jaki był twój ostatni duży projekt, nad którym pracowałeś?
DreamHost to jedna z pierwszych firm hostingowych na rynku, oficjalnie założona w 1997 roku (wtedy jako dziecko dostałem swój pierwszy komputer), a nieoficjalnie kilka lat wcześniej jako hobbystyczny projekt kolegów z uczelni. DreamHost poprosił nas o pomoc w modernizacji całego procesu – od developmentu, przez budowanie, do deploymentu w firmie.
Nasz team zainstalował i skonfigurował GitLaba, zmigrował wszystkie repozytoria kodu z Gerrita do GitLaba, i pomógł pracownikom firmy w tranzycji. Backend panelu administracyjnego DreamHost, jako najważniejszy i największy system, zajął mnóstwo czasu. Najpierw nanieśliśmy dużo zmian w kodzie panelu, by ten działał w kontenerach Dockera.
Wprowadziliśmy całkowicie nowy sposób instalowania zależności – zamiast instalowania paczek Ubuntu z modułami Perla, wprowadziliśmy system podobny do tych znanych z nowoczesnych języków, gdzie lista zależności trzymana jest w pliku tekstowym i jedno polecenie typu bundle install czy npm install załatwia sprawę. No i po drodze bump z Ubuntu w wersji 12 do obecnej. Zbudowaliśmy od zera nowy pipeline CI/CD oparty o zasadę trzymania definicji builda razem z kodem aplikacji – użytkownicy Travis lub GitLab CI wiedzą o co chodzi.
Mając już artefakty do deploymentu przeszliśmy do faktycznego deploymentu. Gdzie więc deployować? Zbudowaliśmy klaster Kubernetes w oparciu o zasadę “infrastructure as code”, co oznacza, że klaster można zaktualizować, lub w przypadkach kryzysowych, postawić na nowo w kilka minut. Tam też zaczęliśmy deployować nowy panel w myśl zasady “continuous delivery”, to znaczy, automatycznie po każdej akceptacji kodu do głównego brancha. Żeby tego było mało, wprowadziliśmy tak zwane “review apps” – osobne i niezależne środowiska do testowania aplikacji, po jednym na każdy branch, gdzie każdy developer mógł “przeklikać” swoje zmiany w środowisku, które przypomina produkcyjne.
Na sam koniec stworzyliśmy toolkit do lokalnego developmentu dla developerów, wraz z instrukcjami – np. jak bumpować zależności, jak czytać logi, jak uruchamiać unit testy lokalnie, itp. Dla teamów infrastrukturalnych stworzyliśmy instrukcję obsługi klastra Kubernetes, jak i wypisaliśmy przykładowe polecenia na najbardziej popularne operacje związane z panelem.
Od rozpoczęcia prac do wdrożenia minął rok, a ostatnie szlify trwały jeszcze kilka kolejnych miesięcy. Był to zdecydowanie mój największy, a zarazem najciekawszy projekt. Świetnie się nam nad nim pracowało, ponieważ DreamHost dał nam wolną rękę – wymaganie brzmiało “ma być dobrze i nowocześnie“. I tak też jest do dziś! Developerom przyjemniej pracuje się z GitLabem, dodawanie nowych zależności trwa ułamek tego, co w przeszłości, lokalne środowiska w Dockerze pozwalają im widzieć panel tak, jak będzie on wyglądał na produkcji, a w dodatku kod trafia na produkcję dużo szybciej.
Z perspektywy czasu, co Twoim zdaniem najbardziej wpłynęło na to, że jesteś tu, gdzie jesteś?
Któryś listopadowy dzień roku 1997, gdy dostałem komputer. Bez tego, cytując Kononowicza, nie byłoby niczego. Od tamtego momentu, każdy kolejny krok lub osiągnięcie było rezultatem poprzedniego kroku lub osiągnięcia. Ważnym czynnikiem była odwaga, nieustępliwość, niejako rywalizowanie samego z sobą i pokazywanie sobie, że “yes, you can”.
Co Cię zaskoczyło w życiu w Stanach? Po pięciu latach pewnie już się zaaklimatyzowałeś.
Przede wszystkim różnica w standardzie życia. To, co w Polsce jest luksusem dostępnym wyłącznie dla garstki społeczeństwa (np. top 5-20%), w Ameryce jest normą (np. top 90-75%). 85% gospodarstw domowych ma suszarkę na ubrania. Klimatyzacja jest w każdym domu oprócz paru miejsc na wybrzeżach. I od razu kontruję pogląd, jakoby Polska miała klimat tak łagodny, że klimatyzacja nie jest potrzebna. Klimat Warszawy jest podobny do klimatu Toronto w Kanadzie, gdzie 85% rezydentów ma klimatyzację, a w Polsce wyłącznie 1%.
45% telefonów to iPhone’y, i nie są one symbolem wysokiego statusu czy coś. Czy wiedziałeś, że 20% najbiedniejszych Amerykanów żyje dwa razy bogaciej niż wszyscy Polacy oraz na podobnym poziomie, co wszyscy mieszkańcy w krajach Zachodniej Europy? Różnica w standardzie życia jest po prostu kolosalna i widać ją na każdym kroku. Dodam, że mieszkam na wsi, więc mój punkt widzenia nie jest przekrzywiony środowiskiem w jakim przebywam. Wręcz przeciwnie: moje środowisko jest raczej biedne, a mimo wszystko widać tę różnicę.
Czy zaaklimatyzowałem się po pięciu latach? Po prawdzie, to nie… bo nie musiałem się zaaklimatyzować! Pierwsze tygodnie w Ameryce były spełnieniem wszystkich moich oczekiwań i wyobrażeń mojego wieloletniego snu o Ameryce, jak i rozwiązaniem rzeczy, których w Polsce nie lubiłem. Jeszcze przed przeprowadzką koledzy z SoftwareMill żartowali sobie ze mnie, że “jak to mogę być pewny tej Ameryki, jak tam nigdy nie byłem”! Też nie wiem – ale byłem.
Jesteś CEO firmy, więc zapytam także o podatki, które są wyższe niż w Polsce. Ile zostaje Ci po podatkach? Nie pytam o konkretną kwotę, a o zakres.
Tym pytaniem wywołałeś szyderczy uśmiech na mojej twarzy. Ameryka to kraj niskich podatków i niskich regulacji, przynajmniej w porównaniu do krajów Starego Kontynentu. Mój total household income za rok 2019 wynosi pomiędzy 200 000 a 300 000 dolarów. Mój efektywny podatek dochodowy wyniósł około 15%. W Polsce większość tego wpadłoby w próg 32%. Jeśli chodzi o opodatkowanie pracy (odpowiednik ZUS), to łączna stawka po obu stronach (pracownik i pracodawca) wynosi 15,3% – a w Polsce aż 41,52%.
Odpowiednik podatku VAT wynosi 6-8% w Teksasie, i ten podatek naliczany jest na mniejszą liczbę kategorii produktów niż w Polsce. Usługi są zwykle zwolnione z podatku, chyba że wraz z usługą dokonano też transakcji związanej z “tangible property” (np. naprawa samochodu idzie w parze z transferem różnych części samochodowych). Dodatkowo, jeśli kupujesz przez internet od firmy niezarejestrowanej w Teksasie, to podatek nie jest naliczany (choć jako kupujący masz obowiązek ten podatek samodzielnie zapłacić, nikt tego nie robi).
Ameryka to jeden z najlepszych krajów na świecie, jeśli chodzi o siłę nabywczą pieniądza, tj. stosunek średnich zarobków do średnich cen. Amerykanie średnio zarabiają dużo więcej niż w dowolnym kraju Europy, a ceny są relatywnie niskie oprócz kilku specyficznych branż. Wynajem jest drogi. Jedzenie jest średnio drogie. Wszystko inne jest tanie. Paliwo na stacji kosztuje dwa dolary za galon, w przeliczeniu ok. 2 zł za litr (cena z lutego; obecna cena w czasach COVID-a to 1,50 zł/l – przyp. red.). Elektronika jest dużo tańsza. Samochody są śmiesznie tanie.
Tak więc, wracając do Twojego pytania… tak, da się wyżyć w Ameryce. No i nie mam nic przeciwko zwiększeniu mojego zobowiązania podatkowego, bo to będzie oznaczało jeszcze większe zarobki!
Gdzie widzisz siebie za kilka lat? Co chciałbyś osiągnąć?
Ciężko powiedzieć. Moja podróż przez świat IT szła dość naturalnie do przodu – przez kolejne języki programowania, narzędzia i metodyki. Jednocześnie zawsze łączyłem tę wiedzę z serwerami. Z czasem pojawiła się na to nawet nazwa – DevOps! Z drugiej strony, moja kariera miała dużo niespodziewanych zwrotów akcji, jeśli chodzi o umiejętności miękkie i kierownicze. O ile jestem raczej przekonany, że temacie IT pozostanę gdzieś na skraju programowania oraz serwerów, to w temacie mojej roli wszystko jest możliwe.
“VP of DevOps” lub “Director of Production Engineering” w firmie 250-500 pracowników brzmi jak perfect fit. Ale nie wykluczam też roli produktowej, np. “Director of Product” w firmie typowo cloudowej lub devopsowej. A za 10 lat, kto wie? Nie pogardziłbym rolą CTO w Fortune 500! Ale najważniejsze, to czuć się spełnionym w pracy, czyli robić to, co sprawia przyjemność oraz dostarcza wartość biznesową.
Damian Nowak. CEO w Virtkick. Inżynier oprogramowania, menedżer i właściciel firmy z siedzibą w Teksasie. Dzięki temu, że pracuje zdalnie, cieszy się wyjątkowymi swobodami: spędza więcej czasu z rodziną i słucha muzyki z prawdziwych głośników. Od 2012 roku w trybie remote – za sobą ma pracę dla takich firm jak SoftwareMill, 8×8 Inc., AtlasHost oraz Tenfold.