5 najważniejszych wyzwań w procesie opracowywania produktów infrastruktury poczty e-mail
Opublikowany: 2023-03-20Infrastruktura poczty elektronicznej to połączony system, który umożliwia wysyłanie, odbieranie i przechowywanie wiadomości elektronicznych. Jako taka odgrywa istotną rolę w ułatwianiu wymiany informacji, czy to B2B, czy B2C.
W związku z tym Radicati Group Inc. szacuje, że całkowita liczba wysłanych e-maili zbliży się do 400 miliardów w 2027 roku. Oczekuje się, że liczba użytkowników na całym świecie osiągnie 5 miliardów w tym samym roku.
Ponieważ wielkość ruchu e-mail stale rośnie, trudno zaprzeczyć, jak ważna jest solidna i niezawodna infrastruktura e-mail.
Jednak tworzenie i utrzymywanie niezawodnej infrastruktury poczty e-mail nie jest pozbawione przeszkód. W tym artykule omawiamy pięć największych wyzwań stojących przed organizacjami w procesie opracowywania produktów infrastruktury poczty e-mail i przedstawiamy praktyczne rozwiązania umożliwiające przezwyciężenie tych problemów.
1: Skalowalność
Wyzwanie
Ponieważ ruch stale rośnie, infrastruktura poczty e-mail może mieć problemy z obsługą obciążenia. Firmy muszą podjąć środki zapobiegawcze, aby dostosować się do wzrostu i uniknąć zakłóceń w świadczeniu usług.
Burza mózgów dotycząca środków równolegle z rozwojem koncepcji jest korzystna. Jeśli nie, programiści muszą to zrobić wraz z wydaniem MVP lub ryzykują:
- Utrata produktywności
- Zmniejszona satysfakcja klientów
- Potencjalne straty finansowe
- Spadek ocen autorytetu domeny
- Spadek reputacji nadawcy
Rozwiązania:
- Infrastruktura oparta na chmurze
- Równoważenie obciążenia
Wykorzystanie infrastruktury opartej na chmurze
Dzięki infrastrukturze opartej na chmurze programiści wykorzystują skalowalność i niezawodność usług pocztowych innych firm. Z kolei zabezpieczają zasoby niezbędne do zaspokojenia rosnących potrzeb klientów.
Brzmi obiecująco, ale jak to naprawdę działa?
Usługi poczty e-mail innych firm wykorzystują duże, scentralizowane centra danych do przechowywania i przetwarzania danych. Firmy tworzące oprogramowanie mogą więc korzystać z najnowszych technologii i zasobów bez inwestowania we własne. A to pomaga upiec dwie pieczenie na jednym ogniu:
- Podejście to znacznie obniża koszty operacyjne.
- Zapewnia również organizacjom skalowalne rozwiązanie spełniające ich rosnące potrzeby.
Należy tutaj podkreślić, że infrastrukturę opartą na chmurze należy rozwijać krok po kroku. Oznacza to, że najlepiej jest zacząć uruchamiać niektóre zadania w chmurze, a następnie skalować same zadania na podstawie bieżącego obciążenia (w tym przypadku liczby e-maili lub żądań użytkowników).
Ale zadań opartych na chmurze nie należy skalować ad hoc, kluczowe jest określenie odpowiedniej strategii rozwoju produktu. Co ważniejsze, musisz wiedzieć, czy wiążą się z tym jakieś wyzwania i wąskie gardła.
Implementacja równoważenia obciążenia
Zanim zagłębisz się nieco głębiej, pamiętaj, że równoważenie obciążenia powinno być realizowane wraz z infrastrukturą opartą na chmurze. W najlepszym razie w ramach jednej fazy rozwoju produktu.
Teraz równoważenie obciążenia odnosi się do dystrybucji obciążeń na wiele architektur i zadań w chmurze. Kluczową korzyścią jest to, że istniejący produkt jest w stanie obsłużyć zwiększony wolumen, nawet w przypadku największego natężenia ruchu.
Ponieważ obciążenia są rozłożone na wiele serwerów, żaden pojedynczy serwer nie jest ograniczany przez natężenie ruchu e-mail. Dlatego szanse na przerwy w świadczeniu usług i wąskie gardła są znacznie mniejsze.
Co więcej, algorytmy równoważenia obciążenia mogą być używane do dynamicznego dostosowywania rozkładu obciążeń, zwykle w oparciu o dwa czynniki:
- Liczba żądań.
- Moc obliczeniowa każdego serwera.
Budowa piekielnej platformy noclegowej
W 2012 roku proces rozwoju produktu Airbnb znajdował się na decydującym etapie.
Uderzali w grupę docelową prosto w głowę, skalując całą platformę. Jednak opinie użytkowników ujawniły alarmującą liczbę skrajnych przypadków obejmujących prośby o zmiany, spory i zwroty pieniędzy. W tamtym czasie wszystko to było obsługiwane ręcznie przez e-mail, bez zaplecza obsługującego przetwarzanie żądań, co znacznie utrudniało skalowanie biznesu.
Airbnb stanął przed ryzykownym wyborem – zatrudnić ponad 1000 osób w ciągu roku lub zbudować zautomatyzowaną platformę do obsługi skrajnych przypadków.
Tak, wybrali to drugie.
Jonathan Golden, ówczesny menedżer produktu Airbnb, musiał bezlitośnie ustalać priorytety. Głównym celem było stworzenie planu zautomatyzowanego rozwiązania chmurowego (backend framework), które obsługiwało i kategoryzowałoby przypadki brzegowe.
Po wprowadzeniu ram Airbnb zostało szybko odblokowane i kontynuowało skalowanie od 300% do 600% rocznie. Zwróć uwagę, że te wartości procentowe odnoszą się do wczesnego wykładniczego wzrostu Airbnb.
Jednak z tego przykładu wynika więcej korzyści związanych z rozwojem produktu niż tylko przeniesienie wszystkiego do chmury i zautomatyzowanie przepływów pracy.
- Konieczne jest, aby najpierw ręcznie poradzić sobie z wyzwaniem technicznym. W przeciwnym razie programiści mogą nie być świadomi problemów z rootem.
- Firma nie powinna czekać zbyt długo przed zastosowaniem automatyzacji skalowania, równoważenia obciążenia lub czegokolwiek innego. Jeśli nie zrobisz tego na czas, wyzwania mogą wzrosnąć tak bardzo, że znacznie trudniej będzie je pokonać.
- Zawsze staraj się stworzyć rozwiązanie lub ramy, które można zastosować do innych problemów w mapie drogowej produktu. Dzięki temu Twoje zespoły będą znacznie bardziej elastyczne.
2: Bezpieczeństwo
Wyzwanie
Bezpieczeństwo infrastruktury poczty e-mail lub jego brak ma kluczowe znaczenie, ponieważ bezpośrednio wpływa na zdolność organizacji do skutecznej komunikacji z potencjalnymi klientami.
Zespół opracowujący produkt musi stawić czoła temu wyzwaniu na wczesnym etapie, na długo przed stworzeniem minimalnego opłacalnego produktu. Ale to nie koniec. Regularne audyty bezpieczeństwa powinny być priorytetem, nawet jeśli masz do czynienia z gotowym produktem.
Ponieważ poufne informacje są często wymieniane za pośrednictwem poczty elektronicznej, naruszenie bezpieczeństwa może skutkować ujawnieniem poufnych informacji. Może to mieć poważne konsekwencje dla organizacji, w tym utratę reputacji, utratę zaufania klientów i potencjalne reperkusje prawne.
Ponadto ważne jest, aby wszystkie zespoły rozumiały potencjalne zagrożenia bezpieczeństwa, aby zapobiegać naruszeniom, które mogą obejść szyfrowanie i protokoły bezpieczeństwa. Jednym z takich zagrożeń jest inżynieria społeczna, ale więcej na ten temat w jednej z poniższych sekcji.
Rozwiązania:
- Szyfrowanie
- Bezpieczne protokoły
- Regularne aktualizacje środków bezpieczeństwa
Bezpieczne protokoły, takie jak SSL i TLS, zapewniają usługi szyfrowania i uwierzytelniania przesyłanych danych e-mail. Dzięki temu można je uznać za pierwszą linię obrony w planie rozwoju infrastruktury poczty elektronicznej. Ponadto organizacje powinny regularnie przeglądać i aktualizować wewnętrzne środki bezpieczeństwa.
Jak?
Na przykład firma opracowująca oprogramowanie musi ustanowić wewnętrzne zasady dla inżynierów i innych interesariuszy, aby ograniczyć dostęp do bazy kodu, gitów itp. Jednocześnie firma powinna mieć jasne protokoły dotyczące tego, w jaki sposób i dlaczego ktoś może uzyskać większe uprawnienia dostępu.
Zespoły programistyczne zazwyczaj stosują zasadę listy uprawnień, aby osiągnąć wyższy poziom bezpieczeństwa. Oznacza to, że większy dostęp jest udzielany na żądanie, a bardzo niewiele osób ma dostęp do wszystkiego.
Wspomnieliśmy wcześniej o SSL i TLS, które szyfrują dane w ruchu (dane w tranzycie). Ale firmy muszą również rozważyć szyfrowanie danych w stanie spoczynku i ustanowić różne poziomy dostępu do tych danych.
„Pinky obiecaj, że cię nie zhakujemy!”
Jest to trochę negatywne uzasadnienie biznesowe, ale wyraźnie pokazuje, że zawsze istnieją dwa aspekty bezpieczeństwa – oprogramowanie i ludzie.
W styczniu 2023 r. Mailchimp doznał naruszenia bezpieczeństwa (trzecie w ciągu 12 miesięcy), ujawniając wrażliwe dane 133 klientów. Socjotechnika była strategią stosowaną przez oszustów w celu uzyskania dostępu do poufnych informacji.
Zasadniczo oznaczało to, że oszuści internetowi wykorzystali niczego niepodejrzewających i prawdopodobnie niedoświadczonych pracowników Mailchimp, aby uzyskać dostęp do chronionych danych. Oszuści wyłudzali od pracowników dane uwierzytelniające, hakując w ten sposób ludzi, a nie sam system. Mimo to ujawniono poufne informacje około 133 klientów.
Najważniejsze jest to, że techniczny aspekt bezpieczeństwa musi być kuloodporny. Ale jednocześnie firma musi ustanowić procedury i edukować pracowników, jak uniknąć stania się ofiarą phishingu lub innego rodzaju ofiarą online.
3: Niezawodność
Wyzwanie
Niezawodność określa zdolność systemu do prawidłowego i spójnego działania w czasie. W związku z tym jest to jedna z największych przeszkód podczas różnych iteracji procesu opracowywania nowego produktu.
Dlaczego?
Bez niezawodności użytkownicy nie mogą być pewni, że ich e-maile zostaną dostarczone i odebrane zgodnie z oczekiwaniami, co ostatecznie zniszczy propozycję wartości. Oczywiście tak jest w przypadku infrastruktury poczty e-mail, ale tutaj jest szerszy obraz.
Niezawodność produktu końcowego w modelu SaaS bezpośrednio wpływa na reputację marki i jej zdolność do dostarczania. Niezależnie od tego, czy jest to MVP, czy produkt, który już odniósł sukces, musi wytrzymać różnego rodzaju awarie, takie jak zwiększone wykorzystanie pamięci RAM, skoki liczby żądań użytkowników, nieoczekiwane obciążenia infrastruktury itp.
Rozwiązanie:
- Wdrażanie systemów redundancji i backupu
- Regularne monitorowanie infrastruktury
Redundancja polega na przechowywaniu wielu kopii tych samych danych w różnych lokalizacjach. Więc jeśli jeden system ulegnie awarii, należy użyć kopii zapasowej. Pozwala na to kilka technologii, w szczególności równoważenie obciążenia, w ramach którego wiadomości e-mail są rozprowadzane na wielu serwerach w celu zmniejszenia ryzyka awarii.

Następnie regularne monitorowanie infrastruktury dostarcza metryk, które pozwalają programistom wykrywać i rozwiązywać problemy, zanim staną się one rzeczywistymi problemami. Można to zrobić za pomocą narzędzi monitorujących i regularnych kontroli systemu. Czasami zespoły programistów mogą zastosować analizę SWOT podczas testowania koncepcji, aby określić najlepsze podejście.
Mówiąc o monitorowaniu, najlepiej, jeśli programiści zbudują alarmy oprócz monitorowania. Na przykład alarmy należy ustawić na następujące okoliczności:
- Jeśli procesy zaczną zużywać więcej pamięci.
- Jeśli występują określone problemy z przetwarzaniem/obliczaniem danych.
- W przypadku 500 kodów odpowiedzi.
Alarmy te dotyczą wsparcia architektury wewnętrznej i zarządzania produktem na żądanie; z których oba należy ustalić podczas procesu tworzenia oprogramowania lub przy wprowadzaniu na rynek miękkiego produktu.
W prostym języku angielskim, gdy jest alarm wywołany przez niepokojące zdarzenie, inżynier powinien natychmiast na niego wskoczyć, nawet jeśli jest to środek nocy.
Jak zrobili to giganci
Google samo w sobie jest doskonałym przykładem strategii projektowania produktów, która z powodzeniem pokonała wyzwania związane z niezawodnością na wczesnym etapie. Ich infrastruktura została zaprojektowana tak, aby oferować wiele poziomów redundancji. Dzięki temu behemot wyszukiwarki może zapewnić, że e-maile użytkowników będą dostarczane i odbierane zgodnie z oczekiwaniami, nawet w przypadku wewnętrznej awarii.
Innym przykładem jest firma Microsoft, która wdrożyła wysoce niezawodną infrastrukturę poczty elektronicznej, wykorzystując systemy równoważenia obciążenia i tworzenia kopii zapasowych. Te środki pomogły firmie Microsoft zapewnić, że jej usługa poczty e-mail pozostaje wysoce niezawodna, nawet w obliczu znacznego wzrostu i zwiększonego popytu.
Ale niestety już tak nie jest. W trakcie cyklu życia produktu było kilka punktów zwrotnych, w których Microsoft mógł nie przeprowadzić odpowiednich badań rynkowych i analiz konkurencji — więcej na ten temat w sekcji Zarządzanie oczekiwaniami dotyczącymi wydajności .
4: Interoperacyjność
Wyzwanie
Interoperacyjność wskazuje na zdolność infrastruktury poczty e-mail lub dowolnej usługi SaaS do integracji i dobrej współpracy z innymi aplikacjami.
Zazwyczaj integracje powinny obejmować:
- Zarządzanie relacjami z klientami (CRM)
- Planowanie zasobów przedsiębiorstwa (ERP)
- Przechowywanie danych
Jaka jest korzyść?
Możliwość bezproblemowej wymiany informacji między różnymi aplikacjami pomaga firmom w podejmowaniu świadomych decyzji opartych na danych. Ponadto pozwala im usprawnić procesy związane z produktem. Zaletą jest to, że wysoka interoperacyjność zapewnia również znacznie lepsze wrażenia użytkownika.
Pamiętaj tylko, że ten aspekt należy wziąć pod uwagę podczas burzy mózgów nad koncepcją produktu. Warto też porównać opcje integracji z tym, co jest dostępne na rynku docelowym.
Rozwiązanie:
- Otwarte standardy
- Kompatybilność między platformami
Otwarte standardy to publicznie dostępne specyfikacje, które umożliwiają współpracę różnych systemów.
Kluczowe otwarte standardy infrastruktury poczty elektronicznej obejmują Simple Mail Transfer Protocol (SMTP), Post Office Protocol version 3 (POP3) oraz Internet Message Access Protocol (IMAP).
Jeśli chodzi o kompatybilność, infrastruktura poczty e-mail musi być zaprojektowana do pracy z różnymi systemami operacyjnymi (Windows, macOS i Linux), a także różnymi przeglądarkami internetowymi (Google Chrome, Mozilla Firefox, Safari itp.).
Jednak włączenie otwartych standardów i zapewnienie kompatybilności między platformami nie jest wolne od wyzwań. Weźmy na przykład SMTP, programiści często muszą wprowadzić w nim określone zmiany, a może nawet dodać szyfrowanie. Aby łatwo uzyskać tę i inne poprawki specyficzne dla produktu, zaleca się korzystanie z połączonych platform, takich jak AWS.
Wreszcie, zespoły programistyczne muszą zwracać szczególną uwagę na sygnatury, rozwiązania spamowe, rekordy DNS i inne elementy związane z zapewnieniem, aby ich oprogramowanie dobrze współpracowało z integracjami innych firm.
W skrócie sprowadza się to do przestrzegania standardowych formatów i protokołów na każdym etapie procesu rozwoju produktu. Następnie inżynierowie mogą w razie potrzeby dostosować przepływy pracy zaplecza i frontonu.
Wytnij nam trochę Slacka
Jeśli uważasz, że Slack zdołał na nowo odkryć sposób, w jaki współpracujemy, nie będziesz w błędzie. Ale pytanie brzmi, jak to zrobili.
Pomińmy fakt, że Slack miał stabilne rozwiązanie na etapie wejścia na rynek. I zapomnijmy o błyskotliwej strategii marketingowej, której udało się nawrócić hordy sfrustrowanych pracowników IT. Ważną rzeczą jest tutaj to, co dzieje się po konwersji.
Przede wszystkim poprzeczka do wejścia na Slacka jest bardzo nisko. Obejmuje jednak większość przypadków użycia, jakie można sobie wyobrazić. Następnie migracja zespołów do Slacka jest całkiem prosta. Zarządzanie użytkownikami jest bezproblemowe, a lista integracji jest długa…
W zależności od wielkości i zasięgu Twojej firmy możesz połączyć aplikacje Jira, Notion, Coda, Google i inne, aby mieć wszystkie powiadomienia i kanały danych pod jednym dachem. Wszystko to w ciągu kilku dni, a nawet godzin.
Najbardziej imponujące jest to, że interoperacyjność Slack jest w zasadzie „ustaw i zapomnij”. Po zintegrowaniu wszystkiego, czego potrzebujesz, zawsze jesteś o jedno kliknięcie od źródła danych lub komunikacji. A to doświadczenie użytkownika jest trudne do rywalizacji.
5: Zarządzanie oczekiwaniami dotyczącymi wydajności
Wyzwanie
Wyzwanie związane z zarządzaniem oczekiwaniami dotyczącymi wydajności polega na upewnieniu się, że produkt spełnia potrzeby i wymagania użytkowników końcowych. Z tego powodu można bezpiecznie zrównać oczekiwania dotyczące wydajności z oczekiwaniami użytkowników, szczególnie podczas opracowywania SaaS.
Aby było jasne, sukces produktu infrastruktury poczty e-mail lub dowolnego SaaS w dużej mierze zależy od tego, jak dobrze postrzegają go użytkownicy końcowi i klienci docelowi. To znaczy – jak dobrze produkt spełnia oczekiwania użytkownika dotyczące wydajności.
Wraz z rosnącą zależnością od poczty e-mail użytkownicy oczekują, że infrastruktura będzie bezpieczna, szybka i niezawodna. Ponadto użytkownicy chcą, aby był:
- Łatwy w użyciu
- Dostępny z wielu urządzeń
- Być w stanie obsłużyć ruch e-mail na dużą skalę
Rozwiązanie:
- Testowanie
- Optymalizacja
- Jasna komunikacja
- Pętle sprzężenia zwrotnego
Ryzykując stwierdzenie oczywistości, regularne testowanie i optymalizacja muszą być integralną częścią każdego procesu rozwoju produktu. Może obejmować przeprowadzanie ankiet, grup fokusowych, testów A/B w celu zebrania opinii użytkowników itp.
Jasna komunikacja idzie w parze z testowaniem, ponieważ pomaga budować zaufanie i przejrzystość. Często komunikacja obejmuje regularne publiczne aktualizacje procesu rozwoju, informowanie użytkowników o zmianach w infrastrukturze i rozwiązywanie wszelkich problemów związanych z wydajnością generowanych przez użytkowników.
Cała komunikacja i testy dają programistom wykwalifikowane opinie klientów, które z kolei pomagają w spełnieniu ich potrzeb i oczekiwań. Krytycznym krokiem jest włączenie otrzymanych informacji zwrotnych do procesów rozwoju produktu.
Po prostu oznacza to bycie czujnym na wszystkie wady systemu. Może nawet zrobienie analizy biznesowej, aby lepiej zrozumieć, jaką metodologię zastosować w ulepszaniu produktu bez szkody dla jego komercjalizacji.
Następnie kluczowym krokiem jest przekształcenie wszystkich ustaleń w możliwe do wykonania zadania i aktualizacje w celu dalszego usprawnienia oprogramowania.
Jednak podczas testowania i monitorowania aplikacji należy pamiętać o pewnych rzeczach. Na przykład testy warunków skrajnych określają, czy kod działa wolno. Jednak fakt, że coś działa wolno, nie wymaga aktualizacji. Zespoły programistyczne muszą dokładnie wiedzieć, które aktualizacje mają kluczowe znaczenie dla wydajności, a którym można nadać priorytet w celu optymalnego wykorzystania zasobów.
Bitwa gigantów
Jak wspomniano wcześniej, w tej sekcji omówiono obszary, w których firma Microsoft prawdopodobnie nie spełniła oczekiwań dotyczących wydajności, ustępując miejsca konkurencji. Jest w tym trochę historii, w której biorą udział zarówno Apple, jak i Google.
Do czasu wydania MPP (ochrona prywatności poczty) we wrześniu 2021 r. Apple pokonało już Google pod względem udziału w rynku klienta poczty e-mail. W tamtym czasie udział Apple wynosił blisko 59%, Google około 28%, ale Microsoft Outlook pozostawał daleko w tyle z około 5%.
Jakie mogą być powody, dla których Microsoft został pokonany?
Aby znaleźć odpowiedź, powinniśmy zajrzeć nieco dalej w przeszłość.
Google uruchomił Gmaila 1 kwietnia, prawie dwie dekady temu. Microsoft szybko zorientował się, że to nie żart primaaprilisowy. Ojciec systemu Windows mocno naciskał, aby pozostać dominującym przez około dziesięć lat. Ale kiedy Gmail przejął rynek w 2015 roku, była to głównie spirala spadkowa dla Outlooka.
Ale dlaczego?
Bezpiecznie jest argumentować, że powodem są niespełnione oczekiwania dotyczące wydajności. Zasadniczo Gmail był szybszy i łatwiejszy w użyciu oraz oferował znacznie usprawniony interfejs. W połączeniu z większą liczbą funkcji i znacznie większą pamięcią masową (1 GB – 500 razy więcej niż ówczesny Outlook) nie jest zaskoczeniem, że Gmail wygrał.
Szybko do przodu i jasne jest, że Google może być w podobnej sytuacji jak Microsoft dziesięć lat temu. Teraz kluczowym oczekiwaniem wydajności, które się nie powiodło, jest śledzenie. Biorąc pod uwagę liczbę przychodzących wiadomości e-mail, czy to marketingowych, czy transakcyjnych, ludzie wolą ukrywać zdarzenia e-mail.
Jasne, fakt, że śledzenie współczynników otwarć, geolokalizacji i urządzeń staje się coraz trudniejsze, przyprawia marketerów o zgagę. Ale statystyki pokazują, że dokładnie tego oczekują użytkownicy.
Zespoły rozwoju poczty e-mail firmy Apple wcześnie zauważyły ten trend i były jednymi z pierwszych, które zaoferowały realne rozwiązanie ograniczające szum e-maili do absolutnego minimum. Tego rodzaju oczekiwania dotyczące wydajności, monitorowanie i aktualizacje mogą doprowadzić Apple do zdominowania przestrzeni klienta poczty e-mail w dającej się przewidzieć przyszłości.
Twórz dobre produkty
Do tej pory powinieneś dobrze rozumieć krytyczne wyzwania w procesie rozwoju produktu. Dla podkreślenia, tak naprawdę nie ma znaczenia, jaki rodzaj produktu opracowujesz.
Opisane wyzwania są niezależne od niszy i, w dużej mierze, cyklu rozwoju produktu. Nawet jeśli jesteś dopiero na etapie koncepcji, z pewnością chcesz, aby produkt był bezpieczny, niezawodny i skalowalny. Następnie, gdy dojdziesz do etapu startupu, nie poprzestawaj na selekcji i walidacji pomysłów na produkty.
Na koniec należy pamiętać, że proces rozwoju produktu wymaga wielu badań, analiz i planowania wdrożenia na każdym etapie. Dobrą wiadomością jest to, że ten artykuł zawiera solidną mapę drogową i kluczowe obszary, na których należy się skoncentrować.
