UMI
En sikker, fleksibel skyplattform for lagring, samarbeid og monetisering av filer med web- og mobilapper
Besøk nettstedetNøkkeltall
- 10,000aktive kunder
- Cloud-nativebackend i Go, stort AWS-fotavtrykk administrert med Terraform
- 1Åbygget av et team på 6 på 12 måneder
Om kunden
UMI er en universell plattform for fillagring, samarbeid og monetisering. Den tilbyr virtuelle disker, sikker deling, rollebasert tilgang, analyse, integrasjoner og mobilapper på iOS og Android. Filer kan deles via offentlige, sikre eller betalte lenker. Plattformen inkluderer kryptering og aktivitetsovervåking for å beskytte data.
Utfordringen

Lag et alt-i-ett skylagringsprodukt som kombinerer sikker fillagring, samarbeid i sanntid og monetisering av innhold, samtidig som det forblir enkelt å bruke og klart for skalering.

UMI trengte å betjene forbrukere, frilansere og bedrifter fra én enkelt plattform. Produktvisjonen inkluderte virtuelle disker, sterk tilgangskontroll, trygge og betalte delingsalternativer, abonnementer, integrasjoner med kjente verktøy og mobiltilgang.
- Forene mange arbeidsflyter i ett produkt uten å ofre enkelhet
- Garantere ende-til-ende-sikkerhet med kryptering og granulære tillatelser
- Støtte rask vekst og tunge filoperasjoner med lav latens
- Levere konsistente opplevelser på web og mobil
Løsningen
Vi designet en modulær Go-backend utrullet som containeriserte tjenester på AWS, frontet av application load balancers og beskyttet av WAF.
Vi administrerte alt som kode med Terraform og Terragrunt. Vi implementerte S3-baserte lagringsnivåer, Aurora PostgreSQL for relasjonsdata, DynamoDB for tabeller med høy gjennomstrømning, Cognito for autentisering, SQS for frikobling og CloudWatch for observerbarhet.
Mobil- og webapper konsumerer et rent API og støtter sikre lenker, rollebasert tilgang, analyse og integrasjoner.

Go, AWS (ECS, ALB, VPC, NAT, Route 53, ACM, WAFv2, S3, DynamoDB, Aurora PostgreSQL, SES, SNS, SQS, CloudWatch, KMS, Secrets Manager), Terraform og Terragrunt, mobilapper på iOS og Android (Dart)

- ImplementeringsdetaljerFase 1. Innledende vurdering og arkitektur
- Kartlegging av krav og domene for lagring, deling, samarbeid og monetisering
- Tjenestegrenser på høyt nivå og API-design
- Planlegging av landing zone for fler-miljø AWS med VPC, subnett, NAT og WAF
- ImplementeringsdetaljerFase 2. Infrastruktur som kode
- VPC-modul med offentlige, private, database-, intra- og tilleggssubnett
- NAT-gateway-strategi og security groups for ALB og tjenester
- Route 53 hosted zone og ACM-sertifikater
- ECS-klynge med container insights og log KMS-nøkler
- Aurora PostgreSQL-klynge og subnettgrupper
- S3-bøtter for hot, IA, Glacier og Deep Archive med livssyklusregler
- WAFv2 web ACL og valgfri IP-tillatelsesliste
- Oppsett av SES-domene med DKIM, SNS SMS-preferanser, SQS-køer og CloudWatch-dashbord
- ImplementeringsdetaljerFase 3. Tjenester og funksjoner
- Go-tjenester for arkiv, autentisering, fil, betalinger og generering av miniatyrbilder på ECS
- Autentisering med Cognito user pool og app clients
- Sikre fillenker med passord, IP-begrensninger og utløp
- Rollebasert tilgangskontroll og aktivitetslogger
- Virtuelle disker med konfigurerbart volum og tilgangsparametere
- Analyse, abonnementsmonetisering og integrasjoner med verktøy som Trello og CRM-systemer
- ImplementeringsdetaljerFase 4. Sikkerhet, overvåking og ytelse
- KMS for logger og sensitive konfigurasjoner
- CloudWatch-logger, dashbord og alarmer
- WAF-regler og IAM-roller med minste privilegium
- S3-policyer og livssyklusoptimalisering
- ImplementeringsdetaljerFase 5. Lansering og overlevering
- Staging og produksjon i eu-central-1 med repeterbare Terragrunt-arbeidsflyter
- Utrulling av web- og mobilapper med tilstedeværelse i App Store og Play Store
Viktigste resultater
Teknologistakk
- Backend
Go-tjenester på AWS ECS bak ALB, som eksponerer et rent API for web- og mobilklienter
Datalag med Aurora PostgreSQL for relasjonsmodeller og DynamoDB for tabeller med høy gjennomstrømning
Objektarbeidsflyter på S3 med livssyklusnivåer og pre-signed URL-tilgang, pluss bakgrunnsbehandling av media (f.eks. miniatyrbilder)
Asynkron meldingsutveksling via SQS og SNS, med observerbarhet gjennom CloudWatch-logger og -metrikker
- Frontend
Webapplikasjon som konsumerer backend-API-et med sikre opplastinger via pre-signed S3-URL-er
Mobilapper bygget med Dart for iOS og Android med samme API- og autentiseringsmodell
Rollebasert UI for deling, samarbeid, analyse og betalte eller sikre lenker
Asset-effektivitet via HTTP cache-control og direkte medielevering fra S3
- Infrastruktur
AWS VPC med offentlige, private og database-subnett, NAT-strategi og security groups
Nettverk og kantherding med Route 53 DNS, ACM-sertifikater og WAFv2
ECS-klynge klargjort med Terraform og Terragrunt; repeterbar staging og produksjon i eu-central-1
Plattformtjenester: SES for e-post, SQS og SNS for hendelser, CloudWatch for overvåking, KMS og Secrets Manager for nøkler og hemmeligheter
- Sikkerhet
Identitet og tilgang via Amazon Cognito user pools med finkornede roller og policyer
Kryptering under overføring med TLS via ACM og i ro med KMS; strenge S3-bøttepolicyer og livssyklusregler
Applikasjonsbeskyttelse: signerte lenker med passord, IP-begrensninger og utløp; IAM med minste privilegium; WAF-regler
Overvåking og revisjon med CloudWatch-dashbord og -alarmer pluss aktivitetslogging på tvers av tjenester
Viktigste lærdommer

- Å designe for skala og sikkerhet fra dag én muliggjør raskere iterasjon senere
- Sterke tilgangskontroller og krypterte arbeidsflyter bygger brukertillit i et lagringsprodukt
- Å drifte skyen med Terraform og Terragrunt fremskynder miljøer og reduserer risiko

Modulære tjenester og Infrastruktur som kode gjør det enkelt å legge til funksjoner som nye lagringsnivåer, flere integrasjoner eller flere regioner uten re-arkitektur
Trenger du en sikker, skalerbar plattform som UMI?
Snakk med oss, så kartlegger vi en vei fra konsept til lansering på et par måneder
Kontakt oss