Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Κλιμάκωση περιεχομένου στο Coinbase


Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Από τον Clay Kohut, Senior Software Engineer

TLDR: Κατά τη διάρκεια του περασμένου έτους, η Coinbase επένδυσε σε εργαλεία για την εξάλειψη του στατικού περιεχομένου σε ολόκληρο το περιβάλλον του ιστού μας. Αυτή είναι η ιστορία του πώς το κάναμε και γιατί είναι σημαντικό.

Coinbase Learn(ed)

Η εκπαιδευτική πύλη Coinbase, Μάθετε Coinbase, που κυκλοφόρησε στα τέλη του 2020. Learn περιέχει εκατοντάδες με οδηγούς για αρχάριους, πρακτικά σεμινάρια και ενημερώσεις αγοράς και συντηρείται από μια ειδική ομάδα συντακτών περιεχομένου.

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Οι μηχανικοί μας διερεύνησαν διάφορες επιλογές για την ενεργοποίηση του Learn. Στην ιδανική περίπτωση, θέλαμε μια λύση που θα μας επέτρεπε να ενσωματώνουμε απρόσκοπτα περιεχόμενο στην εμπειρία αποσύνδεσης του Coinbase.

Οι φιλοξενούμενες επιλογές για περιεχόμενο παρόμοιο με το ιστολόγιο, όπως το Μεσαίο, παρείχαν πολύ μικρή ευελιξία.

Το πλαίσιο του WordPress ήταν επίσης δογματικός και συνδέεται άμεσα με το UI.

Καταλήξαμε να επιλέξουμε ένα χωρίς κεφαλή CMS, ειδικά Περιεχόμενο. Το περιεχόμενο είναι α πλατφόρμα περιεχομένου που παρέχει μια άνευ κεφαλής προσέγγιση στο περιεχόμενο καθώς και επεκτασιμότητα υποστήριξης για ενσωμάτωση με τα προτιμώμενα εργαλεία και τρόπους εργασίας μας. Το να είναι "ακέφαλο" σημαίνει ότι το CMS είναι αγνωστικιστικό διεπαφής χρήστη — διαχωρίζει το περιεχόμενο από την εμπειρία, απλώς παρέχοντας δομημένο JSON στο frontend, το οποίο μας επιτρέπει να ελέγχουμε πλήρως την εμπειρία του frontend.

Η ενσωμάτωση με το Contentful ήταν απλώς θέμα δημιουργίας δομών δεδομένων που αντιπροσωπεύουν διαφορετικούς τύπους περιεχομένου (μέσω του Contentful UI) και στη συνέχεια αντιστοίχιση αυτών των δομών δεδομένων σε στοιχεία React (τα οποία χειρίζονταν πραγματικά την απόδοση των δεδομένων)

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
Η αρχική μας αρχιτεκτονική CMS

Φορώντας τη στολή πτήσης

Με το Coinbase Learn υπό τη ζώνη μας και το Coinbase Άμεση δημόσια προσφορά (DPO) στον ορίζοντα, ξεκίνησε μια πρωτοβουλία συνοχής (θεωρείται Project Flightsuit). Το Project Flightsuit προσπάθησε να φέρει μια συνεκτική εμφάνιση και αίσθηση σε όλες τις ιδιοκτησίες που είχαν αποσυνδεθεί από το Coinbase, καθώς και να επιβάλει πρότυπα σχεδίασης σε σελίδες προορισμού που δημιουργήθηκαν πρόσφατα.

Κατά τη διερεύνηση της κατάστασης των σελίδων προορισμού του προϊόντος Coinbase, ανακαλύψαμε 40 επιφάνειες προϊόντων κατανεμημένες σε 15 διαφορετικά αποθετήρια / εφαρμογές διεπαφής. Οι διάφορες διεπαφές κατασκευάστηκαν χρησιμοποιώντας μια ποικιλία τεχνολογιών — τα πάντα, από το React with Typescript (το τρέχον πρότυπό μας) μέχρι τα πρότυπα Ruby on Rails παλαιού τύπου, μέχρι το στατικό HTML.

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
Μια ματιά στο έγγραφο επισκόπησης "Αρχιτεκτονική σελίδας".

Αξιοποιώντας την ενσωμάτωση περιεχομένου που είχε αρχικά ρυθμιστεί για Μάθετε Coinbase, αρχίσαμε να δημιουργούμε ένα σύνολο «μπλοκ» που θα μπορούσαν να χρησιμοποιηθούν για την τυποποίηση των διατάξεων σελίδων προορισμού (ενώ ευθυγραμμιζόμαστε με τις νέες οδηγίες επωνυμίας μας).

Τα "μπλοκ", γνωστά και ως τύποι περιεχομένου, είναι στοιχεία υψηλού επιπέδου που συνδυάζονται για να δημιουργήσουν σελίδες προορισμού. Για παράδειγμα, ένα μπλοκ "Hero" μπορεί να περιέχει ένα "Title", "Subtitle" και "CTA Button" στο CMS, το οποίο αντιστοιχεί σε ένα στοιχείο React στη διεπαφή.

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
Μια δομή δεδομένων «Hero Block» (αριστερά) και το αντίστοιχο στοιχείο React (δεξιά)

Δημιουργώντας ένα στοχαστικό "σύστημα που βασίζεται σε μπλοκ" (και επεξεργαζόμαστε ξανά τις υπάρχουσες σελίδες προορισμού μας για να χρησιμοποιήσουμε αυτό το σύστημα), μπορέσαμε να μετεγκαταστήσουμε αποτελεσματικά σχεδόν όλες τις σελίδες προορισμού σε μια ενιαία εφαρμογή διεπαφής, που υποστηρίζεται από το React και είναι ενσωματωμένη στο Contentful.

Μόλις το σύστημα μπλοκ εγκαταστάθηκε, η μετεγκατάσταση σελίδων ήταν μια σχετικά απλή διαδικασία μεταφοράς/απόθεσης διαφόρων μπλοκ μέσω του Contentful UI και ανακατεύθυνσης των παλαιών διαδρομών σελίδας στη νέα εναλλακτική λύση που βασίζεται στο CMS.

1, 2, Αυτοματοποίηση

Μετά το έργο Flightsuit, η ομάδα μας επικεντρώθηκε στη βελτίωση της χρηστικότητας και της ανθεκτικότητας του CMS. Μερικά διδάγματα:

  1. Κατασκευή του CMS εύκολο στη χρήση για τα μη τεχνικά μέλη της ομάδας είναι εξαιρετικά σημαντική. Με το πρώτο μας πέρασμα στις σελίδες προορισμού CMS, είχαμε δημιουργήσει ορισμένες δομές δεδομένων με προηγμένα χαρακτηριστικά (όπως η δημιουργία γενικής διάταξης) που ήταν ως επί το πλείστον κατανοητά και εξυπηρετήσιμα μόνο από Μηχανικούς (καταργώντας έτσι την κύρια αξία του CMS). Αντιμετωπίσαμε αυτό ευνοώντας την εμπειρία του συντάκτη πάνω από όλα. Με την αυτοματοποίηση προηγμένων λειτουργιών στο Contentful όπου είναι δυνατόν (όπως ο αυτόματα προσδιορισμός της διάταξης που ταιριάζει καλύτερα σε ένα σύνολο περιεχομένου), θα μπορούσαμε να επιτρέψουμε στους συντάκτες να επικεντρωθούν σε επεξεργασία αντί κτιρίου.
  2. Με την ενσωμάτωση με το Contentful (ένα τρίτο μέρος), οι διεπαφές μας εξαρτήθηκαν από το χρόνο λειτουργίας του Contentful. Το Contentful έχει α πολύ συνεπής ιστορικό σχεδόν 100% χρόνου λειτουργίας, αλλά αυτή η εξάρτηση αμφισβητήθηκε όταν η Contentful αντιμετώπισε δύο διακοπές λειτουργίας λόγω ορισμένων ευρέως διαδεδομένα ζητήματα DNS. (Για να είμαστε δίκαιοι με το Contentful, αυτές οι διακοπές αντιμετώπισαν επίσης μερικοί από τους μεγαλύτερους ιστότοπους στον κόσμο και ήταν οι μόνες περιπτώσεις που έχουμε δει όπου το Contentful δεν ήταν διαθέσιμο). Για να διασφαλίσουμε τη διαθεσιμότητα των σελίδων μας με υψηλότερη ορατότητα (όπως η αρχική μας σελίδα), καθορίσαμε ότι η καλύτερη πορεία προς τα εμπρός ήταν να εισαγάγουμε έναν αντίστροφο διακομιστή μεσολάβησης API που αξιοποιεί το κεφαλίδα μπαγιάτικου αν είναι σφάλμα, προκειμένου το CDN μας να εξυπηρετήσει αποθηκευμένο περιεχόμενο σε περίπτωση αποτυχίας της κλήσης προς τα πάνω. Αυτό μας επιτρέπει να παραμείνουμε όρθιοι ακόμα κι αν το CMS μειωθεί (για Χ αριθμό ημερών).
Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
Επάνω: Η αρχιτεκτονική μας CMS πριν και μετά την προσθήκη του αποθηκευμένου αντίστροφου διακομιστή μεσολάβησης

3. Η εκπαίδευση νέων ομάδων μηχανικών σχετικά με την εργασία και την επέκταση του CMS ήταν πρωταρχική εστίαση. Η ομάδα μου είχε γίνει η μοναδική πηγή γνώσης ενός ολοένα και περισσότερο χρησιμοποιούμενου συστήματος και συχνά προμηθεύονταν να επιβιβάσουν νέους μηχανικούς στο σύστημα σε εφάπαξ βάση. Για την καλύτερη διάδοση της γνώσης του πλαισίου, αναπτύξαμε το Πρόγραμμα CMS Ambassador, η οποία είχε ως στόχο να εκπαιδεύσει και να συγκεντρώσει ειδικούς σε θέματα για το CMS σε όλη την εταιρεία. Το πρόγραμμα ξεκινά με ένα δομημένο εργαστήριο 1.5 ώρας, όπου οι συμμετέχοντες μαθαίνουν τις λεπτομέρειες της ενσωμάτωσης με το CMS. Αν και αυτό το πρόγραμμα εκτελείται επί του παρόντος σε πραγματικό χρόνο και οι συνεδρίες ενσωμάτωσης πραγματοποιούνται ανάλογα με τις ανάγκες, αυτή τη στιγμή βρισκόμαστε στη διαδικασία μετατροπής αυτού σε μάθημα αυτοεξυπηρέτησης μέσω ενός εσωτερικού εργαλείου εκπαίδευσης.

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
Στιγμιότυπο του εσωτερικού μας εργαστηρίου CMS Ambassador

Βασικά αποτελέσματα

Καθώς το 2021 πλησιάζει στο τέλος του, είμαστε περήφανοι που κοιτάμε πίσω πόσο φτάσαμε τον περασμένο χρόνο. Ακολουθεί η πρόοδος που έχουμε δει μετά την επιτυχή εφαρμογή του CMS σε ολόκληρη την εταιρεία μας:

  • Ο χρόνος δημιουργίας σελίδας προορισμού μειώθηκε από κατά μέσο όρο 2 εβδομάδες σε λιγότερο από μία ημέρα.
  • Ο χρόνος διεκπεραίωσης της αλλαγής περιεχομένου μειώθηκε από μια ωριαία διαδικασία αλλαγής/αναθεώρησης/συγχώνευσης/ανάπτυξης κώδικα σε λιγότερο από 10 λεπτά, να χωρίς εμπλοκή μηχανικού.
  • Μέχρι το τέλος του έτους, το 90% όλων των επιφανειών ανώτατου επιπέδου θα καλυφθεί. Αυτό σημαίνει ότι σχεδόν όλες οι επιφάνειες προϊόντος ανώτατου επιπέδου που έχουν αποσυνδεθεί στο Coinbase θα τροφοδοτείται μέσω Contentful μέχρι το τέλος του έτους.

Αυτά τα κέρδη αποδοτικότητας έχουν επιτευχθεί χάρη σε μεγάλο βαθμό στην επένδυση της ηγεσίας μας σε εργαλεία υποδομής και προγραμματιστών. Το Coinbase ενδιαφέρεται πραγματικά για την αριστεία της μηχανικής, την εμπειρία προγραμματιστή και την αυτοματοποίηση των διαδικασιών ρουτίνας.

Επίσης, δεν θα μπορούσαμε να το πετύχουμε αυτό χωρίς τη σκληρή δουλειά ορισμένων εκπληκτικά στοχαστικών, ταλαντούχων ατόμων (καθένας από τους οποίους είμαι απίστευτα περήφανος που συνεργάζομαι):

  • Leon Haggarty, Askat Bakyev, João Melo, Stephen Lee, Wilhelm Willie, Bryant Gallardo, Guiherme Luersen, Raymond Sohn, Leonardo Zizzamia, Christopher Nascone (Eng)
  • Bobby Rasmusson, Russ Ballard (Προϊόν)
  • Ananth Chandrasekharan, Goutham Buchi, Manish Gupta (EVP of Eng)

Είμαστε όλοι ενθουσιασμένοι που μπαίνουμε στο 2022 με μια λαμπερή, ενοποιημένη διεπαφή και ελάχιστα εφάπαξ αιτήματα αλλαγής περιεχομένου στον ορίζοντα. Εάν ενδιαφέρεστε να εγγραφείτε στο Coinbase, δείτε τη σελίδα Καριέρες μας εδώ. Εδώ είναι μια καλή χρονιά!

Κλιμάκωση περιεχομένου στο Coinbase PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.


Κλιμάκωση περιεχομένου στο Coinbase αρχικά δημοσιεύτηκε το Το Ιστολόγιο Coinbase στο Medium, όπου οι άνθρωποι συνεχίζουν τη συζήτηση επισημαίνοντας και απαντώντας σε αυτήν την ιστορία.

Source: https://blog.coinbase.com/scaling-content-at-coinbase-df75ff3208d4?source=rss—-c114225aeaf7—4

Σφραγίδα ώρας:

Περισσότερα από Coinbase

Namaste, Ινδία!

Κόμβος πηγής: 1248055
Σφραγίδα ώρας: 4 Απριλίου 2022