Formularz został pomyślnie przesłany.
Więcej informacji można znaleźć w skrzynce pocztowej.
Innowise znacząco zmodernizował platformę monitorowania oddechu niemowląt i przygotował system do rozszerzenia zestawu funkcji i skalowania.
Klient jest globalnym liderem w dziedzinie zaawansowanych technologii i elektroniki użytkowej, zatrudniającym ponad 50 000 pracowników w 9 zakładach na całym świecie. Wytwarza szeroką gamę produktów, w tym urządzenia gospodarstwa domowego, sprzęt nadawczy, komputery osobiste, urządzenia mobilne oraz komponenty dla branży telekomunikacyjnej i teleinformatycznej.
Firma posiada wyspecjalizowany dział zajmujący się urządzeniami do pielęgnacji niemowląt. Dział ten koncentruje się na tworzeniu innowacyjnych produktów, takich jak monitory oddechu, wideo nianie i śniące, zaprojektowane w celu monitorowania wzorców oddychania niemowląt i poprawy ich snu. Rodzice mogą uzyskać dostęp do niezbędnego monitorowania zdrowia i wsparcia za pośrednictwem aplikacji internetowych i mobilnych.
Szczegółowe informacje o kliencie nie mogą być ujawnione zgodnie z postanowieniami NDA.
Klient posiadał aplikacje mobilne i internetowe dla swojego systemu monitorowania oddechu dziecka, ale były one na wczesnym etapie rozwoju i zawierały liczne błędy. Słabo zorganizowana baza kodu utrudniała zarówno poprawki błędów, jak i rozwój nowych funkcji. Opóźnienia i niestabilność systemu doprowadziły do zwiększenia kosztów wsparcia i rozwoju, negatywnie wpływając na wyniki finansowe. Dodatkowo, problemy te zmniejszały konkurencyjność firmy i jej udział w rynku.
Firma Innowise została zaangażowana do ustabilizowania środowiska, usunięcia istniejących błędów i przygotowania systemu do przyszłych dodatków i skalowania.
Innowise sprostał wyzwaniom, naprawiając błędy zarówno na backendzie, jak i frontendzie. Zrestrukturyzowaliśmy bazę kodu, stworzyliśmy nowe mikrousługi w celu poprawy modułowości i dokonaliśmy migracji bazy danych z PostgreSQL do AWS DynamoDB w celu poprawy skalowalności i obniżenia kosztów. Nasz zespół wdrożył również potoki CI/CD, aby zautomatyzować wdrażanie i zapewnić jakość kodu. Ponadto byliśmy odpowiedzialni za automatyzację wdrażania i wersjonowania infrastruktury przy użyciu Terraform.
W pierwszej kolejności zajęliśmy się krytycznymi błędami wpływającymi na wydajność i niezawodność systemu. Jednocześnie nasz zespół opracował kompleksowe testy jednostkowe i integracyjne, aby zweryfikować funkcjonalność zarówno nowych, jak i istniejących funkcji. Te rygorystyczne testy pozwoliły nam zidentyfikować i rozwiązać potencjalne problemy na wczesnym etapie, zapewniając wysoką jakość produktu końcowego.
Istniejąca baza kodu była nieuporządkowana i niezgodna ze standardami PEP-8 i zasadami czystej architektury, co utrudniało pracę. Nasz zespół systematycznie refaktoryzował kod, dostosowując go do wytycznych PEP-8 i poprawiając jego ogólną strukturę. Proces ten obejmował czyszczenie kodu, optymalizację funkcji, zapewnienie spójności i przestrzeganie zasad SOLID.
Nasz zespół stworzył szczegółową dokumentację techniczną dla istniejącej bazy kodu, nowych funkcji, mikrousług i procesów wdrażania. Ta kompleksowa dokumentacja umożliwiła obecnym i przyszłym programistom lepsze zrozumienie systemu i przyczyniła się do płynniejszego wdrażania i transferu wiedzy.
Oprócz ustabilizowania istniejącego systemu monitorowania oddechu dziecka, opracowaliśmy nowe mikrousługi wykorzystujące platformę konteneryzacji, taką jak Docker, i zorganizowaliśmy je za pomocą Kubernetes. Zwiększyło to modułowość i skalowalność, umożliwiając niezależne wdrażanie i skalowanie poszczególnych usług.
Każda mikrousługa, taka jak moduł analizy wzorców oddechowych lub usługa powiadamiania o alarmach, została zaprojektowana do obsługi określonych zadań, komunikując się ze sobą za pośrednictwem lekkich protokołów RESTful API. Taka architektura poprawiła ogólną wydajność systemu, jego wydajność i odporność na błędy, ponieważ poszczególne usługi mogły być aktualizowane lub wymieniane bez wpływu na cały system.
Nasi eksperci zarządzali migracją z PostgreSQL do AWS DynamoDB, aby wykorzystać jego skalowalność, wydajność, opłacalność i elastyczne możliwości modelowania danych. Przejście to obejmowało skrupulatny proces przeprojektowania schematu danych w celu dostosowania go do nierelacyjnej struktury DynamoDB, staranne mapowanie i transformację danych oraz dokładną walidację w celu zapewnienia integralności danych.
Dodatkowo zoptymalizowaliśmy wzorce zapytań i strategie indeksowania, aby zmaksymalizować wydajność DynamoDB dla określonych wzorców dostępu systemu monitorowania oddechu dziecka.
Wdrożyliśmy potoki ciągłej integracji i ciągłego wdrażania (CI/CD) przy użyciu Jenkins i GitLab CI w celu zautomatyzowania procesów kompilacji, testowania i wdrażania. Usprawniło to procesy deweloperskie i zapewniło szybką informację zwrotną. Dodatkowo wykorzystaliśmy Terraform do definiowania i zarządzania naszą infrastrukturą w chmurze jako kodem. Umożliwiło nam to wydajne udostępnianie i skalowanie zasobów, utrzymanie spójności infrastruktury w różnych środowiskach oraz śledzenie zmian za pomocą kontroli wersji.
Zintegrowaliśmy również zautomatyzowane struktury testowe z naszymi potokami CI/CD, aby zapewnić jakość kodu i stabilność aplikacji przed wdrożeniem. To płynne połączenie praktyk CI/CD i IaC znacznie zmniejszyło liczbę ręcznych interwencji, zminimalizowało liczbę błędów i przyspieszyło cykle wydawnicze, co zaowocowało bardziej solidnym i niezawodnym systemem monitorowania oddechu dziecka.
Front-end
JavaScript (React, TypeScript), Redux
Back-end
Cloud
AWS, Lambda, SQS, SNS, SES, IoT Core, Timestream, Cognito, DynamoDB
VCS
Git, GitLab
Narzędzia
Material-UI, FastAPI, Tortoise ORM, boto3
Rozpoczęliśmy od fazy odkrywania, przeprowadzając wstępne spotkania z interesariuszami firmy, aby dokładnie zrozumieć ich bolączki i wymagania. Nasi analitycy biznesowi stworzyli następnie kompleksowy dokument wyszczególniający kluczowe usprawnienia i zapewniający techniczną wykonalność proponowanego rozwiązania.
Mając jasno udokumentowane wymagania klienta, zespół programistów Innowise rozpoczął pracę nad projektem. proces inżynierii oprogramowania. Korzystając z metodologii Scrum, zorganizowaliśmy naszą pracę w dwutygodniowe sprinty, aby utrzymać regularny postęp i zdolność adaptacji. Odbywaliśmy spotkania co trzy tygodnie, aby zająć się krytycznymi kwestiami i zapewnić skuteczną koordynację. Dodatkowo, kierownik projektu przeprowadzał cotygodniowe rozmowy telefoniczne, aby informować klienta o postępach w rozwoju i zbierać informacje zwrotne, co pozwoliło nam stale udoskonalać nasze podejście.
1
Kierownik projektu
1
Analityk biznesowy
2
Programiści Full-Stack
1
Manual QA Engineer
1
QA Automation Engineer
Wdrożenie projektu doprowadziło do znacznej poprawy stabilności i niezawodności systemu, co przełożyło się na wzrost zadowolenia użytkowników i zaufania do marki. Zoptymalizowana architektura i przepisana baza kodu uprościły dalszy rozwój i wsparcie, zmniejszając koszty rozwoju o 25%.
Migracja do wydajniejszej bazy danych i wprowadzenie mikrousług zapewniło elastyczność i skalowalność, umożliwiając szybszą reakcję na wzrost liczby użytkowników. Automatyzacja testowania i wdrażania skróciła również czas potrzebny na wydawanie aktualizacji, przyspieszając uruchamianie nowych funkcji.
W rezultacie klient wzmocnił swoją pozycję na rynku urządzeń do pielęgnacji niemowląt dzięki ulepszonemu rozwiązaniu, osiągając wzrost udziału w rynku o 15%.
25%
redukcja kosztów rozwoju
15%
wzrost udziału w rynku
Po otrzymaniu i przetworzeniu Twojego zgłoszenia skontaktujemy się z Tobą wkrótce, aby wyszczególnić potrzeby projektu i podpisać umowę o zachowaniu poufności, aby zapewnić poufność informacji.
Po przeanalizowaniu wymagań, nasi analitycy i programiści opracowują projekt z zakresem prac, wielkością zespołu, czasem i kosztami szacunki.
Umówimy się z Tobą na spotkanie, aby omówić ofertę i dojść do porozumienia porozumienia.
Podpisujemy umowę i rozpoczynamy pracę nad projektem tak szybko, jak to możliwe.
© 2007-2024 Innowise. Wszelkie prawa zastrzeżone.
Polityka prywatności. Polityka dotycząca plików cookie.
Innowise Sp. z o.o Ul. Rondo Ignacego Daszyńskiego, 2B-22P, 00-843 Warszawa, Polska
Rejestrując się, wyrażasz zgodę na naszą Politykę Prywatności, w tym korzystanie z plików cookie i przekazywanie Twoich danych osobowych.
Dziękuję!
Wiadomość została wysłana.
Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.
Dziękuję!
Wiadomość została wysłana.
We’ll process your request and contact you back as soon as possible.