Witam,
Przejdę od razu do konkretów, poszukuję zespołu programistów Pythona, JavaScripta i zaznajomionych z usługami kontenerowymi/administracją serwerami do modyfikacji już gotowej aplikacji Open Source (licencja LGPL3), w celu utworzenia usługi SaaS, planowany budżet – 30-35 tyś. PLN, do zaawansowanej wersji PoC. Następnie do wersji produkcyjnej będę kredytował prace, dodatkowo tworząc spółkę z odpowiednią optymalizacją podatkową (w Polsce lub za granicą), w której wszyscy członkowie zespołu developerskiego będą posiadali łącznie 70% udziałów dowolnie zbywalnych i wieczystą wyłączność do prowadzenia aplikacji utworzonej aplikacji w modelu SaaS na terenie Polski. W zamian oczekuję aplikacji, zespołu, który ją utrzyma na produkcji i zapewni jej rozwój, 30% udziałów we wspomnianej spółce i pełnie praw do aplikacji poza granicami Polski. Dodatkowo opłacam serwery i na etapie prac jak i po uruchomieniu usługi. Ogólnie pomysł na tą aplikację mimo, że jeszcze nie jest sprecyzowany i dobrze opisany, to plan biznesowy na ~20 lat.
Aplikacja, którą trzeba przerobić to obecna na rynku od lat aplikacja biznesowa, co do której firma posiadająca prawa autorskie jest obecnie warta miliardy euro. Aplikacja ma konstrukcję modułową, a jej poziom zaawansowania można powiedzieć jest na poziomie Enterprise. Na razie jeszcze tylko w głowie mam pomysł, jak zastosować tą aplikację w odpowiednim modelu B2B oraz B2C, tworząc na rynku świetnie skalującą się, potężną aplikację SaaS, która w wyjątkowo niskim okresie czasu powinna zyskiwać inwestorów i dynamicznie zwiększać obroty, ale po kolei.
Co trzeba zrobić:
- Stworzyć aplikację główną (może ona w pełni bazować na wspomnianej wcześniej aplikacji biznesowej, co ułatwi projekt i przyśpieszy prace), która będzie przeznaczona dla użytkowników B2C (wszystkich osób fizycznych/prywatnych),
- Powyższa aplikacja główna ma za zadanie pozwalać na dodawanie, moderację, usuwanie ogłoszeń, modyfikację informacji o swoim własnym profilu użytkownika, oraz pozwalać użytkownikom na uruchomienie przy użyciu bogatego kreatora i zarządzanie instancją aplikacji biznesowej (wykorzystując kontenery, lub dowolny inny mechanizm, który łatwo może się skalować z serwerami VPS/dedykowanymi),
- Połączyć bazy danych aplikacji głównej oraz instancji aplikacji biznesowych (nie wszystkich, lecz konkretnych danych – np. umożliwiających wysyłanie wiadomości pomiędzy użytkownikami B2C i B2B wewnątrz całej infrastruktury),
- Utworzyć brakujące moduły aplikacji biznesowej,
- Wybrać aktualnie istniejące moduły do aplikacji biznesowej oparte o licencje LGPL3, AGPL3 lub MIT, zintegrować je z aplikacją (czyli wykluczyć/naprawić istnienie błędów zależności), aby jak najbardziej rozbudować API i możliwości całej platformy),
- Utworzyć nowe moduły, dodające funkcjonalności, które według mojej koncepcji mają za zadanie wyróżnić na rynku aplikację i zapewnić jej rynkowy sukces,
- Utworzyć moduły pozwalające na dostęp i zarządzanie instancjami przez naszych administratorów,
- Umożliwić skalowanie instancji, tj. nie wszystkie instancje będą korzystały ze wszystkich funkcji, co oznacza, że wpierw kreator instancji powinien wybrać moduły do instalacji w zależności od deklaracji użytkownika, a następnie jeżeli administrator instancji będzie chciał, może ją rozbudować bądź dowolnie przekształcać, co z jednej strony zapewni niski koszt utrzymania mniejszych instancji biznesowych, ale pozwoli użytkownikom efektywnie je skalować do rozrostu działań,
- Automatyczne backupy,
- Wprowadzenie monetaryzacji w oparciu o reklamy, abonamenty i opłaty,
- Wprowadzić odpowiednią politykę bezpieczeństwa (wymuszone 2FA, klucze SSH, whitelisty dla administracji od strony backendu, reguły bezpieczeństwa/konfiguracja serwerów etc.),
- Dostosować aplikację do aktualnych standardów i wymogów prawa w Polsce,
- Zarządzanie automatycznymi backupami instancji biznesowych.
Szacowany przeze mnie czas na utworzenie projektu do wersji PoC włącznie z czasem nauki to ok. 3 miesiące, do wersji produkcyjnej ok. 5 miesięcy. Uważam, że zadanie jest do wykonania dla zespołu 4 osobowego - 1 specjalista od Javascriptu/QWeb/Node.js, 2 specjalistów Phyton frontend/backend, 1 specjalista Phyton/Linux/Kontenery/Administracja serwerami.
Główne problemy:
Nauka aplikacji biznesowej, gdyż jest dosłownie ogromna, już teraz ma dziesiątki tysięcy linii kodu, gdzie dodatkowe moduły jeszcze bardziej ją rozbudowują. Sprawnej, doświadczonej ekipie (ok. 2-4) programistów Pythona nauka zajmie ok. miesiąca i uznaję to za okres inwestycyjny, powiem może nad wyrost – test, dla osób, które faktycznie chcą realizować projekt i mają szansę oraz chęci na stworzenie świetnie prosperującej aplikacji i międzynarodowej firmy, która przyniesie ogromne zyski.
Potrzebna wiedza i umiejętności:
- Python – cały backend aplikacji jest wykonany w Pythonie,
- JavaScript, HTML5, CSS – frontend,
- QWeb – template engine,
- PostgreSQL jako RDBMS – baza danych,
- Nginx,
- Debian 11/Ubuntu – według mnie w trakcie testów najlepiej sprawdzał się Debian, ale ten wybór jest otwarty, zwłaszcza, że są jeszcze lżejsze dystrybucje,
- Docker – dla łatwego tworzenia nowych instancji i ich szybkiego aktualizowania,
- Kubernates – zgaduję, że to najłatwiejszy sposób na tworzenie instancji aplikacji biznesowej na łatwo skalowalnej infrastrukturze VPS, można zdecydować jakie rozwiązanie będzie lepsze,
- Keycloak – lub inny, umożliwiający zarządzanie autoryzacją SSO,
- Administracja serwerami, przynajmniej na początku.
Zadania firmy na produkcji:
- Utrzymanie aplikacji głównej oraz wszystkich instancji aplikacji biznesowej online,
- Support techniczny,
- Rozwój aplikacji w ujęciu produkcji jakości – celem jest zapewnienie stabilności i jak najmniejszej ilości błędów,
- Reklama i marketing.
Sposoby monetaryzacji:
- Reklamy - darmowe instancje biznesowe będą obarczone wymogiem posiadania minimum 30% naszych banerów reklamowych na stronach web i backend oraz limitami odwiedzin i transferu danych i parametrami serwerów,
- Abonamenty - usuwające reklamy, zwiększające możliwości serwerów (większa liczba użytkowników, większe przepustowości, większa pojemność dysków, większa ilośc CPU/RAM), zwiększające ilość backupów i snapshotów,
- Opłaty związane ze zużyciem - standardowe: za X odsłon, X operacji, X transferu danych.
Troszkę o mnie:
Jestem inżynierem Computer Science i magistrem Finances and Controlling. Mam wiedzę z dziedziny programistki (Java, VHDL, C++, C#), kierowania projektami (SCRUM, PRINCE2 – metodologie kaskadowe i spiralne, z kontrolą ryzyka), ale też z zarządzania i ekonomii (QMS, normy ISO, inżynieria procesów, bussines intelligence, makroekonomia etc.). oraz prawne (Prawo Podatkowe, Ustawa o Rachunkowości, Prawo Handlowe, optymalizacja podatkowa, offshoring). Moim zadaniem w czasie trwania projektu będzie jego opracowanie, wytyczenie zadań i funkcji, przedstawienie wizji i misji, zapewnienie finansowania, zapewnienie zgodności z prawem i możliwości funkcjonowania, kontrola, testy oraz dostarczenie funkcjonalnej firmy.
Jeżeli jesteście zainteresowani lub znacie inne osoby, które mają umiejętności chęć uczestnictwa w takim projekcie, a w najlepszym przypadku – macie już zgrany zespoły spełniające warunki, proszę o kontakt.
Pozdrawiam,
Piotr
[email protected]