Billin

Billin to aplikacja spo艂eczno艣ciowa inspirowana platformami TikTok i Instagram, stworzona z my艣l膮 o dzieleniu si臋 recenzjami produkt贸w i us艂ug. Bra艂em udzia艂 w projekcie od jego pocz膮tk贸w przez okres prawie 2 lat, pracuj膮c g艂贸wnie z technologiami Python i AWS. By艂em odpowiedzialny za rozw贸j aplikacji w 艣rodowiskach dev, stage i production, a tak偶e za utrzymanie oraz automatyzacj臋 infrastruktury chmurowej. Aplikacja zdoby艂a ponad 700 tys. u偶ytkownik贸w i wielokrotnie zajmowa艂a 1. miejsce w rankingach w sklepach Google Play i App Store. Projekt zosta艂 zako艅czony z powodu braku rentowno艣ci.

Poni偶ej przedstawiono zakres moich zada艅 oraz wykorzystane technologie.

AWS Lambda

Tworzy艂em funkcje serverless w Pythonie obs艂uguj膮ce zapytania z AppSync, integrowa艂em je z AWS Neptune i innymi us艂ugami AWS.

AWS Cognito

Zaimplementowa艂em rejestracj臋, logowanie i autoryzacj臋 u偶ytkownik贸w z u偶yciem token贸w JWT i podpis贸w cyfrowych.

AWS Neptune

Zaprojektowa艂em architektur臋 grafowej bazy danych zgodnie z wymaganiami aplikacji, zarz膮dza艂em instancjami i kopiami zapasowymi.

Gremlin Query Language

Tworzy艂em zapytania do bazy grafowej w celu modyfikacji, odczytu i tworzenia relacji mi臋dzy obiektami.

AWS AppSync

Projektowa艂em i wdra偶a艂em GraphQL API (dla aplikacji mobilnej i webowej), definiowa艂em resolvery i 藕r贸d艂a danych.

Terraform i Terragrunt

Definiowa艂em infrastruktur臋 jako kod (IaC) z Terraform, a p贸藕niej wraz z firm膮 zewn臋trzn膮 przeprowadzili艣my migracj臋 do Terragrunt.

AWS CloudFront

Skonfigurowa艂em CDN, integruj膮c go z AWS S3, aby przyspieszy膰 dostarczanie statycznych tre艣ci.

AWS S3

Wdro偶y艂em system zarz膮dzania plikami i obrazami poprzez integracj臋 S3 z CloudFront i AWS Lambda.

DynamoDB

Modelowa艂em dane i definiowa艂em klucze w bazie NoSQL u偶ywanej do przechowywania danych pomocniczych.

Redis (ElastiCache)

Wdro偶y艂em cache鈥檕wanie danych w celu poprawy wydajno艣ci aplikacji.

ElasticSearch (OpenSearch)

Zaimplementowa艂em wyszukiwanie i indeksowanie tre艣ci aplikacji.

AWS CloudWatch

Monitorowa艂em 艣rodowisko, analizowa艂em logi i definiowa艂em alarmy dla kluczowych metryk.

AWS SNS

Skonfigurowa艂em system powiadomie艅 SNS (push, in-app) z integracj膮 z funkcjami Lambda.

AWS SES

Zintegrowa艂em wysy艂k臋 e-maili przez SES, w tym wiadomo艣ci weryfikacyjne i powiadomienia systemowe.

Integracja iMoje

Zaimplementowa艂em bramk臋 p艂atno艣ci ING iMoje dla subskrypcji premium, w tym konfiguracj臋 transakcji i promocji.

AWS WAF

Skonfigurowa艂em filtry IP i limity 偶膮da艅 w celu ochrony aplikacji przed nadu偶yciami.

CI/CD

Wdro偶y艂em procesy GitHub Actions automatyzuj膮ce deployment kodu Lambd i API pomi臋dzy 艣rodowiskami.

System Subskrypcji

Wdro偶y艂em subskrypcje czasowe umo偶liwiaj膮ce dost臋p do tre艣ci tylko dla subskrybent贸w.

Algorytm Tablicy

Stworzy艂em algorytm personalizuj膮cy wy艣wietlane tre艣ci na podstawie relacji i aktywno艣ci u偶ytkownik贸w.

AWS SQS

Zastosowa艂em kolejki wiadomo艣ci do obs艂ugi du偶ej liczby zapyta艅 i zwi臋kszenia skalowalno艣ci.

Bezpiecze艅stwo

Wdro偶y艂em reCAPTCHA i EmailCheck w celu ochrony przed botami i fa艂szywymi kontami.

Panel Administracyjny

Stworzy艂em API do panelu admina do moderacji u偶ytkownik贸w, obs艂ugi zg艂osze艅 i podgl膮du statystyk.

Panel dla Firm

Opracowa艂em API dla panelu firmowego umo偶liwiaj膮cego zarz膮dzanie profilami i statystykami.

Optymalizacja

Migrowa艂em dane do dedykowanych us艂ug, batchowa艂em zapytania i optymalizowa艂em koszty AWS.

AWS EventBridge

Skonfigurowa艂em eventy do cyklicznych proces贸w i automatycznych powiadomie艅 push.

Ranking

Stworzy艂em ranking u偶ytkownik贸w na podstawie liczby wy艣wietle艅 w danym miesi膮cu.

G艂osowanie

Wdro偶y艂em system g艂osowania dla u偶ytkownik贸w oraz generowanie ranking贸w z wynikami.

WebSocket - AppSync Subscriptions

Zaimplementowa艂em subskrypcje WebSocket, kt贸re powiadamia艂y u偶ytkownik贸w o zako艅czeniu przetwarzania tre艣ci.

G艂贸wne Funkcje

Dodawanie post贸w, recenzji i cytat贸w, interakcje (follow, like, comment, save, report, subscribe), tablica g艂贸wna i wideo.

Wsp贸艂prace zewn臋trzne

Wsp贸艂pracowa艂em z ekspertami AWS i partnerami technologicznymi w celu rozszerzania aplikacji.