National Bank of Greece Developer Portal Logo

Developers Portal 2019-21

Εθνική Τράπεζα της Ελλάδας

Μετά από την είσοδο της Εθνικής Τράπεζας στο κόσμο του Drupal, το 2019 αποφασίσαμε να πάμε με την τελευταία λέξη της τεχνολογίας. Drupal 8, React και Custom Infrastructure είναι μόνο μερικά από τα πράγματα που κάναμε.
Screenshot of the case study page inside an 27 inch iMac

Objective

Μετά την επιτυχία του NBG Developer Portal, έπρεπε να γίνει ένας ριζικός επανασχεδιασμός με τις τελευταίες τεχνολογίες. Όλο το project πρέπει να είναι modular, επεκτάσιμο και τελευταία λέξη της τεχνολογίας. Τέλος πρέπει να δημιουργηθεί ένα custom cluster για να φιλοξενηθεί αυτό το project με τα στάνταρ ασφαλείας της Εθνικής Τράπεζας.

Approach

Με την ελευθερία που σου δίνει το να πας στις τελευταίες λέξεις της τεχνολογίας χρησιμοποιήσαμε ότι καλύτερο υπάρχει σήμερα. Drupal 8, React JS, REST APIs, Custom integrations με τα συστήματα της τράπεζας και φυσικά ένα cluster από 9 custom και high performing servers για να βγει live στο κόσμο με τα υψηλότερα standards από security & redundancy.

Πως φτιάχτηκε

Connect on a Global Scale

Αλλάξαμε πλήρως την εμφάνιση της αρχικής διάταξης και ανανεώσαμε όλα τα elements, πλέον χρησιμοποιούν το component based design. Το design δείχνει φουτουριστικό και τα micro-animations κυριαρχούν και τραβάνε την προσοχή του χρήστη.

Με την πρώτη ματιά μπορείς να δεις ότι το design είναι τελευταία λέξη για τα δεδομένα μιας παραδοσιακής τράπεζας. Αυτό ήταν και το ζητούμενο, να "μιλήσει" στην φιλοσοφία του προγραμματιστή που βρίσκεται στην αιχμή της τεχνολογίας.

Μια γρήγορη ματιά στην αρχική σελίδα θα σου δώσει πρόσβαση σε όλα τα πιθανά τμήματα του portal και θα σε καθοδηγήσει να πας εκεί που χρειάζεσαι.

As Easy As 1 2 3

Με τόσα APIs διαθέσιμα πρακτικά όλοι όσοι θέλουν να δημιουργήσουν κάποια εφαρμογή που χρησιμοποιεί τα συστήματα της Εθνικής Τράπεζας της Ελλάδος, θα περάσουν από αυτή τη σελίδα.

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

Εφόσον όλο το front-end είναι βασισμένο σε React js, όλα τα τμήματα της σελίδας είναι components κι έτσι υπάρχει ευχρηστία και αρμονία στην κάθε σελίδα.

There's an API For That

Η Εθνική Τράπεζα της Ελλάδας έχει πιθανότατα τον πιο πλήρες κατάλογο σε APIs στην Ελλάδα και έναν από τους καλύτερους παγκοσμίως όπως φαίνεται κι από μια πρόσφατη μελέτη της InnoPay που σύγκρινε developer portals από όλο τον κόσμο, που αναφέρει το NBG Developer Portal σαν ένα από τα καλύτερα στον κόσμο σε "ανοικτότητα" (openness).

Σε αυτή τη λίστα μπορεί να φιλτράρει ο επισκέπτης ανά κατηγορία και να μπει στο API που τον ενδιαφέρει, να διαβάσει περισσότερα και να δει το αναλυτικό documentation του.

Battles are Won in the Details

Το API documentation είναι το καλύτερο documentation που έχετε δει ποτέ σε αναγνωσιμότητα.

Εύκολη πλοήγηση, πλήρες ιστορικό, παραδείγματα κώδικα, κλήσεις και απαντήσεις, παραδείγματα request, διαθέσιμες παράμετροι σε κάθε request κλπ. Ό,τι χρειάζεται ένας προγραμματιστής θα το βρει εδώ. Αλλά οι λεπτομέρειες είναι που κάνουν τη διαφορά και κάνουν το documentation αυτό να ξεχωρίζει από τα πλήθη.

Try Out The Innovation

Το καλύτερο σημείο του documentation είναι η κονσόλα "δοκίμασε το".

Εκεί μπορείς κυριολεκτικά να στείλεις ένα δοκιμαστικό request, με τις παραμέτρους σου, και να πάρεις αμέσως απάντηση σε πραγματικό χρόνο σαν να ήταν σε κανονικό περιβάλλον. Όλα σε ένα ασφαλές περιβάλλον sandbox.

Μικρές αλλά πολύ χρήσιμες λεπτομέρειες σαν αυτή ξεχωρίζουν το Developer Portal της Εθνικής Τράπεζας της Ελλάδος από τις άλλες ανταγωνιστικές τράπεζες.

Get The News!

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

Τα άρθρα που δημοσιεύονται από την Εθνική Τράπεζα της Ελλάδος δίνουν πολλές πληροφορίες σχετικά με θέματα τεχνολογίας που ενημερώνουν το κοινό και βοηθούν στο να μάθουν περισσότεροι προγραμματιστές για το developer portal.

Κάποια άρθρα περιέχουν εκτενείς αναλύσεις και μπορεί να είναι πολύ μεγάλα. Γι'αυτό το λόγο δημιουργήσαμε μια ειδική πλαϊνή μπάρα που έχει τα περιεχόμενα του άρθρου και μπορεί ο αναγνώστης να πατήσει και να πλοηγηθεί σε αυτά. Η λίστα δημιουργείται αυτόματα από τα σχετικά τμήματα του άρθρου. Ο συγγραφέας του άρθρου δεν χρειάζεται να κάνει καμία επιπλέον δουλειά για να δημιουργηθούν αυτά τα περιεχόμενα.

National Bank of Greece Blog Page

People Helping People

Αν το blog δίνει τον παλμό σε ένα site τα φόρουμ είναι μια ψηφιακή πλατεία.

Όταν προγραμματίζεις μια εφαρμογή, είναι σίγουρο ότι θα συναντήσεις bugs, θέματα κλπ. Οκ, υπάρχει και το Stack Overflow αλλά δεν πρόκειται να βρεις όλες τις απαντήσεις εκεί. Τα φόρουμ της Εθνικής Τράπεζας της Ελλάδος είναι το μέρος όπου και οι ίδιοι οι υπάλληλοι της τράπεζας περνούν καθημερινά χρόνο και ταυτόχρονα γνωρίζουν τις εσωτερικές λεπτομέρειες των συστημάτων τους. Οπότε μπορούν να δώσουν απαντήσεις που δεν θα βρει κανείς αλλού.

Problem Solved!

Ο στόχος μας ήταν να δίνουμε την πληροφορία εύκολα στον επισκέπτη των φόρουμ και να μπορεί εξίσου εύκολα κάποιος να ζητήσει βοήθεια ή να βοηθήσει άλλους.

Συζητήσεις σε threads, αναζήτηση με Solr, κατηγοριοποίηση και φίλτρα είναι μερικές από τις UX λειτουργικότητες που βάλαμε για να βοηθήσουμε στην ταχύτητα μετάδοσης της πληροφορίας μεταξύ των χρηστών του φόρουμ.

Αποτελέσματα

190
React JS Components
135
Weeks Working with NBG & Counting
18
Drupal 8 Custom Modules
250
PRs Merged to Date

Θέλετε να δείτε περισσότερα;

Επισκεφθείτε το site


Έχεις μια καταπληκτική ιδέα; Ας την συζητήσουμε

ΕΝΑΡΞΗ ΣΥΝΟΜΙΛΙΑΣ

Personal Data Handling

Όροι Χρήσης Διαδικτυακού Τόπου

1. Όροι

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

2. Άδεια Χρήσης

  1. Η άδεια δίνεται για προσωρινό κατέβασμα ενός αντίγραφου του υλικού (πληροφορίες ή λογισμικό) στην ιστοσελίδα wefixit για προσωπική, μη εμπορική θέαση. Αυτή είναι η παραχώρηση της άδειας, όχι η μεταφορά του τίτλου και κάτω από αυτή την άδεια δεν μπορείτε:
    1. να αλλάξετε ή αντιγράψετε το υλικό
    2. να χρησιμοποιήσετε το υλικό για εμπορικούς σκοπούς ή για δημόσια θέα (εμπορική ή μη)
    3. να προσπαθήσετε να συγκεντρώσετε ή να αναστρέψετε τεχνικά οποιοδήποτε λογισμικό περιέχεται στην ιστοσελίδα wefixit
    4. να αφαιρέσετε τα πνευματικά δικαιώματα ή άλλα ιδιωτικά σύμβολα από το υλικό
    5. να μεταφέρετε το υλικό σε κάποιο άλλο άτομο ή να «καθρεφτίσετε» το υλικό σε άλλον server
  2.  Αυτή η άδεια σταματάει αυτόματα αν παραβιάσετε κάποιον από αυτούς τους περιορισμούς και μπορεί να τερματιστεί από το wefixit οποιαδήποτε στιγμή. Μετά τον τερματισμό της άδειας θέασης σας του υλικού πρέπει να καταστρέψετε όλο το υλικό που έχετε στην διάθεσή σας είτε είναι σε ηλεκτρονική μορφή είτε σε έντυπη.

3. Πληρωμές

  1. Όλες οι πληρωμές είναι τελικές και δεν επιστρέφονται συμπεριλαμβανομένου προκαταβολών και δόσεων. Τα τιμολόγια δίνονται όταν το συνολικό ποσό της υπηρεσίας έχει εξοφληθεί. 
  2. All payments are final and non-refundable including deposits and installments. Invoices are issued when the whole service amount has been paid in full. Οι υπηρεσίες του δικτυακού τόπου wefixit παρέχονται "ως έχει".  Το wefixit δεν παρέχει εγγυήσεις είτε έχουν εκφραστεί ή υπονοηθεί και γι' αυτό αποποιείται και ακυρώνει όλες τις άλλες εγγυήσεις, συμπεριλαμβανομένου χωρίς περιορισμούς, υπονοούμενες εγγυήσεις ή συνθήκες εμπορεύσιμες, προσαρμοσμένες για ένα συγκεκριμένο σκοπό ή μη παραβίαση της πνευματικής ιδιοκτησίας ή άλλη παραβίαση δικαιωμάτων. Επιπλέον, το wefixit δεν εγγυάται ή δεν αντιπροσωπεύει την ακρίβεια, τα πιθανά αποτελέσματα ή την αξιοπιστία για την χρήση του υλικού σε κάθε ιστοσελίδα ή αλλιώς σχετιζόμενο με τέτοιες υπηρεσίες ή οποιοδήποτε ιστοσελίδα που συνδέεται με αυτό το site.

4. Περιορισμοί

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

5. Αλλαγές και τυπογραφικά λάθη

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

6. Σύνδεσμοι

Το wefixit δεν έχει ελέγξει όλες τις ιστοσελίδες που είναι συνδεδεμένες στην ιστοσελίδα του και δεν είναι υπεύθυνο για το περιεχόμενο τους. Η ένταξη οποιουδήποτε συνδέσμου δεν υπονοεί έγκριση από το wefixit. Η χρήση οποιουδήποτε τέτοιου συνδέσμου είναι στο ρίσκο του χρήστη.

7. Όροι ιστοσελίδας για μετατροπές

Το wefixit μπορεί να αναθεωρήσει τους όρους χρήσης για την ιστοσελίδα του οποαδήποτε στιγμή χωρίς προειδοποίηση. Με την χρήση αυτής της ιστοσελίδας συμφωνείτε να δεσμευτείτε με την τωρινή εκδοχή των όρων χρήσης.

8. Νόμοι

Κάθε ισχυρισμός σχετιζόμενος με την ιστοσελίδα wefixit πρέπει να διέπονται από τους νόμους της Πάτρας χωρίς να έρχεται σε σύγκρουση με τις προβλεπόμενες διατάξεις.

Γενικοί όροι και συνθήκες που ισχύουν για την χρήση του ιστοτόπου.

Πολιτική Απορρήτου

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

  • Πριν ή κατά την συλλογή προσωπικών δεδομένων, ταυτοποιούμε τους σκοπούς για τους οποίους συλλέγονται οι πληροφορίες.
  • Συλλέγουμε και χρησιμοποιούμε τα προσωπικά δεδομένα μόνο με τον σκοπό να εκπληρώσουμε αυτους τους σκοπούς, που προσδιορίζονται από εμάς και για άλλους συμβατούς σκοπούς, εκτός και αν αποκτήσουμε την συναίνεση του ατομού όπως απαιτείται από το νόμο.
  • Θα διατηρήσουμε τα προσωπικά δεδομένα μόνο για όσο είναι απαραίτητο για την εκπλήρωση αυτών των σκοπών.
  • Συλλέγουμε τα προσωπικά δεδομένα με νόμιμα και δίκαια μέσα και όταν αρμόζει, με την γνώση ή την συναίνεση του ατόμου.
  • Τα προσωπικά δεδομένα θα πρέπει να είναι σχετικά με τους σκοπούς για τους οποίους χρησιμοποιούνται ή για τους οποίους θα χρησιμοποιηθούν, θα πρέπει να είναι ακριβή, ολοκληρωμένα και ενημερωμένα 
  • Θα προστατεύσουμε τα προσωπικά δεδομένα με λογικά πλαίσια ασφάλειας απέναντι σε απώλεια ή κλοπή, όπως επίσης και μη εξουσιοδοτημένη πρόσβαση, δημοσιοποίηση, αντιγραφή ή μετατροπή.
  • Θα κάνουμε τις πληροφορίες διαθέσιμες στους πελάτες για τις πολιτικές και πρακτικές μας που σχετίζονται με την διαχείρηση των προσωπικών δεδομένων.

Δεσμευόμαστε να διαχειριζόμαστε την επιχείρησή μας σύμφωνα με τις αρχές, διαβεβαιώνοντας οτι η εχεμύθεια των προσωπικών δεδομένων προστατεύται και διατηρείται.

...ή δείτε κι άλλες δουλειές