

Om detta projekt
Sedna reached out to Imaginary Cloud to reduce the costs associated with Tray.io, a tool used to create workflows integrating with external systems and processing data.
Result: Reduced Tray.io costs by 80%, unified AWS infrastructure, optimised workflows, and eased team workload.
Vårt engagemang
Development
Optimisation
Quality Assurance
teknik
Tray.io
JavaScript
Kotlin
AWS
Sedna operates within the maritime industry, offering two products - Stream and Pulse - designed as data-driven communication platforms to transform the shipping and supply chain industry. By managing complexity, Sedna streamlines processes and enhances efficiency, merging emails and data into a unified view to eliminate context-switching.
In 2021, Sedna secured $34 million in Series B funding to expand its investment in the global supply chain space. Additionally, they have been recognized for its growth, ranking on the 2024 Inc. 5000 list of fastest-growing private companies in America.


Imaginary Cloud was responsible for leading a two-phase cost-reduction initiative:
1. Optimisation of existing workflows: Improved and optimized legacy Tray workflows, creating new ones as needed.
2. Migration to a custom-built solution: Developed a custom solution hosted on AWS to fulfill all requirements, reducing Sedna's reliance on Tray.io, lowering costs, and addressing technical debt.
Additionally, we implemented a new CI/CD process to streamline the development and deployment of data synchronization plugins. We also developed auto taggers - custom logic for tagging emails - for Sedna's customers, using JavaScript and rigorous QA testing to ensure functionality.
NEW PROJECT IN MIND? LET'S TALKunder projektets gång
No internal process from Imaginary Cloud was used. Sedna employed a Kanban methodology, prioritizing tickets as they became ready for work without fixed sprint cycles.
två steg
Migrering
Utveckling
fyra steg
Forskning
Idéer
Utförande
Teknisk bedömning
fyra steg
Krav
Back-end-integrering
Webbplatsutveckling
Avancerad filtrering och sökning
fyra steg
Forskning
Idéer
Utförande
Teknisk bedömning
fyra steg
Eftersläpning
Bootstrap
Våg 0
Våg N
fyra steg
Forskning
Idéer
Utförande
Lansering och överlämning
två processer
MVP
ADP
Fyra steg
Omfattningsmöte
Kodgranskning
Testgranskning
Kvalitetsgranskning
Bedömning
Fyra steg
Eftersläpning
Bootstrap
Våg 0
Våg N
under projektets gång
No internal process from Imaginary Cloud was used. Sedna employed a Kanban methodology, prioritizing tickets as they became ready for work without fixed sprint cycles.
Imaginary Cloud började med att migrera den befintliga databasen från Wordpress MySQL till PostgreSQL. En skrämmande uppgift på grund av de tusentals artiklar och stora tillgångar som är normala på en CG-marknad.
Efter att migreringen var klar fokuserade teamet på att migrera sin infrastruktur. Webbplatsen var värd på Heroku, som hade relevanta begränsningar för förmågan att skala. Imaginary Cloud kunde migrera det till AWS och slutföra det första steget på bara två månader.
Efter den framgångsrika leveransen av steg 1 fortsatte klienten att arbeta med Imaginary Cloud på en kontinuerlig utvecklingsbasis och lägga till fler funktioner i sin produkt för att driva tillväxten. Teamet arbetade med många olika element, från betalningsintegrationer till säljkampanjverktyg för att underlätta marknadsföringskampanjer på marknaden. Imaginary Cloud hjälpte också Flipped Normals att förbättra sin Google-positionering genom att implementera en SEO-granskning, vilket justerade webbplatsens prestanda och innehållsrelevans.
Projektet började med ett teammöte för att lista alla kundkrav. Denna grundliga undersökning möjliggör en enklare, snabbare och mer kostnadseffektiv leverans. Detta möte leddes av vår projektledare, som stöder teamet genom hela projektet, och vår utvecklare, vilket säkerställer att alla tekniska detaljer diskuteras.
Eurofound lämnade en gedigen sammanfattning som fångade den befintliga infrastrukturen, deras vision för webbplatsen och de tekniska begränsningarna och kraven. Det var en utmanande uppgift som behövde slutföras på 6 veckor.
Vår utvecklare startade utvecklingsprocessen genom att skapa back-end-integrationen som skulle göra det möjligt för den nya webbplatsen att hämta innehåll från den befintliga databasen. Med hjälp av ett Django-ramverk kunde vi skapa en effektiv och snabb applikation som hämtade data, genererade listor över resultat och möjliggjorde mer avancerade alternativ.
Imaginary Cloud och Eurofound träffades varje vecka för att säkerställa att allt utvecklades enligt kundens krav.
När huvudprogramvaran var klar var nästa steg att utveckla webbplatsen för att komma åt sådant verktyg. För detta följde vår utvecklare Eurofounds stilguide för att säkerställa samstämmighet i kundens digitala närvaro.
Även om ingen designer tilldelades detta projekt följde vår utvecklare UX/UI bästa praxis, eftersom han kunde kontakta flera av designerna på Imaginary Cloud.
För att förbättra innehållsnavigeringen ville Eurofound inkludera en avancerad filtrerings- och sökfunktion i sin databas. Efter att ha kartlagt databasinnehållet i den nya programvaran kunde vår utvecklare skapa en uppsättning kategorifilter som gjorde det möjligt för användare att välja innehållet i ett visst ämne och implementerade ett sökelement till sidan, så att användaren fritt kan söka i vilket dokument som helst.
Vi identifierar de viktigaste aspekterna av affärsmodellen och användarnas behov.
Först samlar vi in bevis som kommer att stödja de beslut som fattas hädanefter, vilket säkerställer att inget beslut fattas baserat på vaga antaganden.
Detta steg består av tre steg: en genomgång med projektets vision och mål och affärskrav; användarforskning för att garantera produktens användbarhet och effektivitet ur användarens perspektiv; och ett designriktmärke för att analysera landskapet för liknande och kompletterande produkter, designmönster och tekniker som används i branschen.
Forskningsstadiet gör det möjligt för oss att utnyttja befintliga aktörers kunskaper och färdigheter och säkerställa funktioner och designdifferentiering på marknaden, och säkerställa kundens passform.
Vi formulerar ett förhållningssätt till produkten utifrån användarens behov och affärsmodell.
Detta är kärnan i den kreativa processen och det är där konceptet för produkten formuleras utifrån användarens behov och affärsmodellen (båda identifierade i forskningsfasen). Här arbetar UX-designern, produktdesignern och produktägaren nära tillsammans.
Detta steg består av fyra steg: kartlägga användarresa, genom att beskriva varje användares handling, med olika användarscenarier; a beslutsmatris som hjälper till att prioritera användarnas och produktens mål samtidigt som man beaktar produktens livscykelns nuvarande skede; rita trådramar, dvs. sidans struktur och navigeringsflöde för att säkerställa gränssnittets användbarhet och minska designtiden; och slutligen, a moodboard för att säkerställa att produktens utseende och känsla förmedlar önskad användarupplevelse och är i linje med användarprofilen och marknadsstrategin.
Vi förverkligar konceptet och omsätter det i praktiken.
I detta skede fokuserar produktdesignern på att skapa en fysisk representation av konceptet som har definierats fram till denna punkt.
Den består av tre steg: a stilguide, där vi definierar ett grafiskt gränssnittets stil med hänsyn till färgpalett, teckensnitt, bildstil, inmatningsfält, knappar och så vidare, för att säkerställa konsistens i hela applikationen; a grafiskt användargränssnitt design (GUI) som är de slutgiltiga skärmarna genom att tillämpa stilguiden på trådramarna; och ett klick-through prototyp för att underlätta återkoppling från intressenter eller potentiella användare och investerare.
Vi garanterar att alla krav och idéer som genereras är realistiska att genomföra.
I detta skede bör allt arbete som tidigare utförts vara möjligt med tanke på den tillgängliga tiden och budgeten som tidigare avgjorts.
Den består av två steg: a arkitektur på hög nivå där vi beskriver hur produkten kommer att byggas, identifierar baslinjer för den teknik och kompetens som behövs för att tillverka den, och projektplan att definiera de viktigaste milstolparna och ge en allmän förståelse för projektets struktur, faser, korsningar och ömsesidiga beroenden.
Detta inledande skede innebär att man samlar in viktig information för att förstå projektets vision, mål och affärskrav. Vi presenterar affärsfallet, beskriver projektets tidslinje, huvudkonkurrenter, kompletterande produkter och utforskning på hög nivå av personas. Detta innebär också att ställa och svara på frågor för att definiera mål och utforska idéer, säkerställa differentiering från befintliga aktörer på marknaden.
Under idéfasen tillhandahåller vi ritningen och strukturen för hela webbplatsen, som definierar den relativa betydelsen av innehåll när det flyter ner på sidan.
Webbplatskartan fastställer webbplatsens struktur och innehållshierarki för optimal navigering. Wireframing beskriver skärmstruktur och navigeringsflöde och prioriterar din digitala produkts funktionalitet framför estetik. Slutligen, för innehållsidén hjälper vi dig att planera sidinnehållet och ger riktlinjer för publikanpassat material.
Under utförandet levererar vi den första viktiga sidan, vanligtvis hemsidan, vilket säkerställer att den överensstämmer med din målgrupp och marknadsstrategi. Vi tillämpar sedan stil på wireframes genom GUI-design, med fokus på visuell estetik och upprätthåller konsistens över hela webbplatsen. Vår utvecklingsprocess för webbflöde följer bästa praxis, innehåller interaktioner, animationer och lyhördhet över enheter.
Slutligen presenterar vi resultat på en testdomän, där kundens engagemang är avgörande för ett framgångsrikt resultat.
Vi ger dina team omfattande utbildningar och möjligheter till frågor och svar för att ge dem möjlighet att självständigt hantera innehållet. Vi erbjuder löpande support, ser till att all nödvändig information för webbplatsuppdateringar är lättillgänglig, och vi konfigurerar behörigheter inom Webflow efter behov.
Dessutom integrerar vi sömlöst webbplatsen med viktiga marknadsföringsverktyg som Google Analytics, konfigurerar SEO-optimeringar och migrerar och ansluter sömlöst önskad domän. Genom att utnyttja Webflows pålitliga värdtjänster ser vi till att webbplatsen publiceras med optimal prestanda och tillförlitlighet.
Våra UX-designers kommer att rikta in sig på användarprofilerna och identifiera deras behov när de använder din produkt, med tanke på dess användbarhet och effektivitet ur deras synvinkel. Forskning om designmönster och branschens mest använda teknik gör det möjligt att utnyttja och förstå befintliga aktörers kunskap och praxis. Dessutom säkerställer det att din produkt/design är specifik och annorlunda.
Vi kommer att genomföra en UX-granskning för att fastställa produktkraven med hänsyn till den etablerade användbarhetsheuristiken i fältet för att leverera en konsekvent och flytande användarupplevelse. All information om insikter och analyser kommer att sammanfattas i en visuell och övertygande revisionsrapport som visar UX Audits viktigaste resultat, snabba vinster och rekommendationer angående din produkts potentiella förbättringar.
Tillsammans kommer vi att basera stilguiden för att säkerställa att din produkts olika visuella gränssnittselement är konsekventa och sammanhängande. Genom att köra en UX-revision kan vi lösa de viktigaste problemen med utförandet av slutskärmar. Dessutom kommer alla rekommendationer som härrör från bekräftelse av snabba vinster att utformas för implementering.
Briefing: Våra lösningsarkitekter börjar med att samarbeta med intressenter för att djupt förstå affärsutmaningarna eller målen. Detta innebär detaljerade diskussioner för att identifiera det specifika problemet som behöver lösas och de önskade resultaten, vilket säkerställer att lösningen är perfekt anpassad till dina strategiska mål.
Bedömning av tekniska lösningar: Efter att ha förstått affärskraven översätter våra arkitekter dessa till tekniska specifikationer. Detta steg innebär att identifiera och kortlista de mest lämpliga teknikerna, plattformarna och verktygen som kan uppnå önskade funktioner effektivt och effektivt.
Lösningsarkitekturdesign: Vi utformar lösningens övergripande tekniska arkitektur med hänsyn till nyckelfaktorer som skalbarhet, säkerhet, prestanda och integration med befintliga system. Denna plan fungerar som grund för allt efterföljande utvecklingsarbete och säkerställer att lösningen är både robust och anpassningsbar till framtida behov.
Val av teknik och verktyg: Baserat på arkitekturdesignen rekommenderar och utvärderar vi de tekniker och verktyg som bäst passar lösningens behov och din organisations befintliga infrastruktur. Detta säkerställer att teknikstacken är optimal, kostnadseffektiv och framtidssäker.
Projektplan: Vi utvecklar en omfattande projektplan som beskriver de viktigaste milstolparna, faserna och ömsesidiga beroenden. Denna plan ger en tydlig förståelse för projektstrukturen och hjälper till att hantera förväntningar och tidslinjer effektivt.
Projektbacklog: Vi identifierar och prioriterar användarberättelser och delar upp dem i hanterbara deluppgifter för både front-end och back-end-utveckling. Detta steg säkerställer att utvecklingsprocessen är organiserad, med tydliga prioriteringar och fokus på att leverera värde i varje steg.
Implementering av lösningsarkitektur: Våra lösningsarkitekter arbetar nära utvecklingsteam för att säkerställa att lösningen implementeras enligt den designade arkitekturen. Detta innebär kontinuerligt samarbete med utvecklare, systemadministratörer och andra IT-proffs för att säkerställa att arkitekturen realiseras effektivt.
Kontinuerlig förbättring: Vi tror på kontinuerlig förbättring. Efter att lösningen har implementerats utvärderar vi regelbundet arkitekturen för att identifiera eventuella förbättringsområden. Detta gör att vi kan göra nödvändiga justeringar för att säkerställa att lösningen förblir effektiv och anpassad till föränderliga affärsbehov.
Den produktbacklog är en lista över affärs- och projektmål och innehåller vad som förväntas utvecklas av utvecklingsteamet och underhållas av produktägaren. Det är ett levande dokument, uppdateras kontinuerligt, prioriteras och ordnas efter affärsvärde. Det kan också ha produktförbättringar, buggar, tekniska frågor och så vidare. Syftet är främst att ha allt som behövs för att nå projektets produktvision.
I detta skede skapar vi också en Sprint-eftersläpning, som är en lista över uppgifter som måste slutföras under varje sprint. Vi prioriterar användarberättelserna för varje sprint och ser till att teamet vet vad de behöver arbeta med.
Med Sprint-eftersläpning På plats börjar utvecklingsprocessen äntligen. Att arbeta igenom sprintbackloggen och leverera små användbara programvaror möjliggör ofta kontinuerlig feedback och förfining, vilket säkerställer att produkten alltid är på rätt spår.
I detta skede införde vi en genomgång som inkluderar den information som samlats in under workshopen med teamet och intressenter. Den presenterar visionen och målen för projektet och klargör alla nödvändiga affärskrav. Det är också här en FAQ-session i förhållande till projektets natur äger rum.
Den arkitektur på hög nivå innebär utveckling av den tekniska designen, med den perfekta balansen mellan komplexitet och räckvidd. Det är här vi identifierar externa beroenden från tredjepartsleverantörer, som Stripe, Facebook, Amazon och så vidare.
Vi startar sedan CI/CD-arbetsflöde vilket är installationen av problemhanteringsverktyget, kodförråd, kontinuerligt integrationssystem och utvecklings- och iscensättningsmiljöer. Det följs av installationen av kodreporet och det automatiska testramverket, iscensättningsmiljön och produktionsservrarna, samt ekosystemet för kontinuerlig integration (dvs. servrar, distribuera krokar) /kontinuerlig distribution.
Slutligen, i Funktion 0 vi levererar den första meningsfulla funktionen: en hemsida, en inloggningsskärm, en del av den första instrumentpanelen. Detta steg säkerställer att det finns något påvisbart med uppfattningen av värde i slutet av fasen.
Med Datamodell, vi tillhandahåller den första baslinjen för produktens evolutionära datamodell. Den identifierar de viktigaste dataenheterna och relationerna och baslinjerna för datakällorna och datalagren (dvs. relationsdatabaser, dokumentdatalager etc.). Detta steg består också av att iterera produktkonceptet och designa den första versionen av datamodellen.
Här är när vi presenterar Konceptbevis (PoC), Minimal testbar produkt (MTP), eller Minimal livskraftig produkt (MVP), och vi levererar och distribuerar den första versionen av produkten - även om den versionen är implementeringen av ett koncept. Detta hjälper till att minska tekniska risker och testa de viktigaste affärslokalerna för att utveckla en marknadsklar version av produkten genom en bedömning av lönsamheten.
På produktionstillskott steg, vi granskar tekniska och affärsmässiga risker och effekterna av PoC, MTP, eller MVP på de ursprungliga lokalerna eller Wave 0. Här identifierar vi också återanvändbara komponenter från Wave 0 till Wave 1 (dvs ofta är POC inte återanvändbara). Detta hjälper till att samla in feedback om den första integrerade modellen och utvärderar produktens livskraft innan du går över till Wave 1.
Slutligen, de wave retrospektiva recensioner produktstatus, utvärderar vågframgång mot affärsmål och identifierar förbättringar. Vi utformar sedan mål för nästa våg och prioriterar funktioner. Genom att göra detta kan teamet analysera det arbete som har gjorts i tidigare sprintar och planera medvetet vad som ska vara nästa berg att bestiga.
Vi börjar med en Omfattningsgranskningsmöte där vi identifierar de viktigaste projektmålen, domänerna som ska granskas och vilka mätvärden vi kommer att bedöma, fångar information om underhållbarhet, cyklomatik, arv, klass och andra.
Vi fortsätter att utföra Kodgranskning genom att titta på arkitektur för att förstå hur produkten är byggd, dess principer och dess mönster.
Nu är det dags för en Testgranskning, där vi bedömer enhetstester, kodtäckning och testkvalitet.
Vi följer upp med en Granskning av kodkvalitet, där vi listar alla frågor och beskriver dem till fullo, identifierar de kritiska och kategoriserar dem.
Vi avslutar processen med en Bedömning steg där vi listar alla rekommenderade korrigeringar och ger en uppskattning av de resurser som behövs för att genomföra dem.
Tekniker som används



Used in phase 1 for resource optimisation.
Used in phase 2 for backend development and infrastructure; also used for frontend development to allow the users to interact with the new workflows features.
Used in Phase 2 for backend development and infrastructure.
Used in Phase 2 for backend development and infrastructure.

We adopted the Managed Teams model, integrating one backend developer and one full-stack developer into Sedna’s team to focus on the project's technical aspects.
Backend Developer: Optimised Tray.io integrations, reduced costs, and created new workflows. Debugged legacy Tray issues, handled P2 emergencies, and supported the migration to AWS by restructuring repositories, developing CI/CD workflows, creating Terraform files, and converting Tray integrations into AWS Lambda functions.
Full-stack Developer: Reduced Tray.io costs by 80% through workflow optimisation and migration to a bespoke service. Delivered key features like “All Teams,” “Sent Messages,” and workflow versioning. Managed P2 emergencies, onboarded new tenants, investigated mistags, implemented auto-taggers, and migrated older taggers to JSON.
Detta projekt gav en djupgående förståelse för kundpersona och deras interaktion med tjänsten.
Reduced Tray.io costs by 80% by migrating legacy workflows into AWS Lambda functions and custom-built solutions.
Unified infrastructure and improved scalability through AWS-based plugin development, including CI/CD workflows and Terraform provisioning.
Delivered new workflow service features like “All Teams,” “Sent Messages” support, and workflow versioning.
Handled complex support tasks such as mistagging issues, older workflow bugs, and P2 emergencies, easing pressure on Sedna’s core engineering team.
Supported tenant onboarding and maintenance with tasks like S3 bucket setup, ingest configuration, and optimized auto taggers.
The project behind the NDA
Sedna reached out to Imaginary Cloud to reduce the costs associated with Tray.io, a tool used to create workflows integrating with external systems and processing data.
Result: Reduced Tray.io costs by 80%, unified AWS infrastructure, optimised workflows, and eased team workload.