Software Testing: Πώς η συνεχής μάθηση, η συνεργασία και η δικτύωση οδηγούν στην Επιτυχία

Software Testing: Πώς η συνεχής μάθηση, η συνεργασία και η δικτύωση οδηγούν στην Επιτυχία

Ο τομέας του software testing είναι συναρπαστικός και γεμάτος απίστευτες ευκαιρίες καριέρας! Αν ενδιαφέρεσαι να κάνεις τα πρώτα σου βήματα, η ιστορία του Πέτρου Πλακογιάννη δείχνει πώς μπορεί κανείς να ξεκινήσει από την αρχή και να φτάσει στην κορυφή του κλάδου.

Τί καλύτερο για να κατανοήσουμε τι σημαίνει μια καριέρα σε αυτόν τον τομέα από το να εξερευνήσουμε την πορεία ενός έμπειρου Software Tester, του Πέτρου Πλακογιάννη, από τους πρωτοπόρους στο κλάδο, όταν το software testing ήταν σχεδόν άγνωστο ως ειδικότητα.  Ο Πέτρος Πλακογιάννης είναι από τους πρώτους Automation Software Testers στην Ελλάδα, με πάνω από 15 χρόνια εμπειρίας και ιδρυτικό μέλος της Οργανωτικής Επιτροπής του Ministry of Testing Athens.

Τι είναι το Software Testing;

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

Ένα απρόσμενο ξεκίνημα

Το ταξίδι του Πέτρου Πλακογιάννη στον κόσμο του software testing είναι μια ιστορία γεμάτη περιέργεια, επιμονή και συνεχούς μάθησης και εξέλιξης. Η τεχνολογία τον γοήτευε από παιδί, όταν πειραματιζόταν με τον πρώτο του υπολογιστή, έναν Amstrad 6128 CPC. Φυσικά, ο Πέτρος ακόμη κι όταν ξεκινούσε τις σπουδές του στη Πληροφορική, δεν είχε ιδέα τι είναι το software testing. Σε μία από τις πρώτες συνεντεύξεις του, μάλιστα, απέρριψε μία θέση testing επειδή δεν ήξερε τι περιλάμβανε. 

"Θυμάμαι ακόμα την πρώτη μου συνέντευξη σε μία από τις πιο διάσημες εταιρείες στον κόσμο (με 3 πολύ γνωστά γράμματα). Απέρριψα μία τέτοια θέση επειδή σκέφτηκα, ‘Software Testing; Τι είναι αυτό; Όχι, ευχαριστώ.’ Και τον επόμενο μήνα βρέθηκα να ξεκινάω την καριέρα μου ως software tester σε μια άλλη εταιρεία."

Στα τέλη της δεκαετίας του 2000, το software testing ήταν ακόμα ένας άγνωστος τομέας στην Ελλάδα, και οι πληροφορίες για νέες τεχνικές testing, ιδιαίτερα για την αυτοματοποίηση, ήταν ελάχιστες έως καμία!  Έτσι στα πρώτα του βήματα, ο Πέτρος ξεκινά με το exploratory testing, χρησιμοποιώντας manual τεχνικές για να εντοπίζει σφάλματα και να βελτιώνει την ποιότητα του λογισμικού.

Ο Πέτρος αναζητά και χτίζει στοχευμένα συνεργασίες με επαγγελματίες που του έδειξαν τεχνικές όπως το cross-site scripting (XSS) attacks. Η συνεχής εξάσκηση σε τέτοιες τεχνικές τον βοήθησαν όχι μόνο να εξειδικευτεί περισσότερο και να διευρύνει τις γνώσεις του αλλά απέδειξαν πόσο σημαντική είναι η συνεργασία και το μοίρασμα γνώσης για να γίνει κάποιος ένας επιτυχημένος Software Tester.

"Ένα πολύ σημαντικό μάθημα που πήρα αυτά τα χρόνια είναι ότι η συνεργατικότητα είναι αναγκαία. Θυμάμαι όταν ένας συνεργάτης που ανέφερε την τεχνική του Cross-Site Scripting (XSS) attack. Ξεκίνησα να βάζω scripts σε μια login form μιας ιστοσελίδας και μαγικά η σελίδα δεν φόρτωνε. Ήταν φοβερό!. Γύρισα σπίτι το βράδυ και ξενύχτησα προσπαθώντας να κρασάρω όλες τις σελίδες με XSS attacks. Βρήκα τόσα πολλά bugs όπου την επόμενη μέρα πήρα μια πολύ σημαντική επιβράβευση από τον manager μου."

Software Testing Career Path_case study_HAU
HAU

Προκλήσεις και ευκαιρίες

Η πρώτη του επαφή με την αυτοματοποίηση ελέγχων γίνεται μέσω του Selenium με Firefox. Όταν ο Πέτρος ξεκινά την καριέρα του στο software testing, o πρωτοεμφανιζόμενος Chrome βρίσκεται σε αρχικό στάδιο και δεν έχει ακόμη όλες τις σημερινές λειτουργίες καθώς επίσης και τα εργαλεία αυτοματοποίησης βρίσκονται ακόμη σε πολύ πρώιμο στάδιο.

Ξεκινώντας με απλά record-and-playback scripts, ο Πέτρος κατακτά τον προγραμματισμό, αυτοματοποιώντας τις καθημερινές εργασίες δοκιμών ώστε να βελτιστοποιήσει όλο το workflow του. Αυτό του άνοιξε την πόρτα για να ασχοληθεί περισσότερο με τους αυτοματισμούς και να δουλέψει με εργαλεία όπως το Watir και το QTP.

"Ξεκίνησα να χρησιμοποιώ απλά record-and-playback automations, χωρίς να γράφω κώδικα. Μετά έφτιαχνα scripts τα οποία τα τροποποιούσα συνεχώς για να καλύψω περισσότερα σενάρια.  Αυτή ήταν και η πρώτη μου επαφή με τον προγραμματισμό, περισσότερο δηλαδή με απλές διεργασίες όπως αλλάζοντας keywords και names ανάλογα με τις απαιτήσεις του software. Ξεκίνησα να αυτοματοποιώ τις καθημερινές εργασίες για να κάνω ευκολότερη τη δουλειά μου. Βλέπόντας πόσο βλελτιωνόντουσαν τα αποτελέσματα μέσω του αυτοματισμού, ήθελα να μάθω ακόμη περισσότερα!"

Η καριέρα του τον οδηγεί σε πολλά projects σε όλη την Ευρώπη, όπου συνεργάζεται με οργανισμούς υψηλού προφίλ, όπως η Eurostat και ο Ευρωπαϊκός Οργανισμός Χημικών, δημιουργώντας testing frameworks με Selenium και Java.  Ο Πέτρος συνεργάζεται με μερικούς από τους καλύτερους επαγγελματίες software testers στο κόσμο, καθώς και με front-end developers οι οποίοι του έμαθαν πολλά σε σχέση με JavaScript και DOM websites. Πολλοί από αυτούς τους συνεργάτες του Πέτρου κατέχουν σήμερα θέσεις-κλειδιά σε μεγάλους οργανισμούς σε πολλές και διαφορετικές αγορές.

"Ήμουν τυχερός που δούλεψα με το framework Watir (Web Application Tesitng in Ruby) σε ένα μικρό παράρτημα στην Ελλάδα μιας εταιρείας βρεταννικών συμφερόντων..., τώρα πολλά απο τα μέλη εκείνης της ομάδας κατέχουν θέσεις υψηλής ευθύνης ως managers, principal engineers σε πολλές μεγάλες εταιρείες. Είμαι βαθειά ευγνώμων σε κάθε έναν από αυτους για τα απίστευτα μαθήματα και γνώσεις που μου έδωσαν πάνω στη δουλειά."

Το ταξίδι της γνώσης

Ο Πέτρος βελτιώνει τις δεξιότητές του στην αυτοματοποίηση χρησιμοποιώντας το QTP (Quick Test Professional) με VBScript, το Selenium με Java και ξεκινά να χρησιμοποιεί μια ευρεία γκάμα frameworks βασισμένων σε Typescript και Javascript.

Καθ' όλη τη διάρκεια της καριέρας του, ο Πέτρος δεν σταμάτησε ποτέ να μαθαίνει συνέχεια καινούργια εργαλεία και frameworks.  Κατακτά και το performance testing, και συνεργάζεται με developers για να κατανοήσει τον αντικειμενοστραφή προγραμματισμό. Η ικανότητά του να μεταβαίνει από frameworks βασισμένα σε Java σε JavaScript, καθώς και η περαιτέρω εξειδίκευσή του σε Cypress με την αναγνώρισή του ως Cypress Ambassador, αναδεικνύουν τη δίψα του για μάθηση και την ευελιξία του στον τομέα αυτό.

"Εκτός από την αυτοματοποίηση, ασχολήθηκα και το performance testing. Στην αρχή ήταν δύσκολο να καταλάβω πώς να τεστάρω και να βελτιστοποιήσω την απόδοση ενός συστήματος υπό διαφορετικά φορτία. Όμως, με εξάσκηση και βοήθεια από συναδέλφους, βελτιώθηκα. Θυμάμαι ένα project όπου αντιμετωπίσαμε προβλήματα απόδοσης. Δουλέψαμε σκληρά για να τα διορθώσουμε, ισορροπώντας τα φορτία και βελτιστοποιώντας τις βάσεις δεδομένων. Ήταν δύσκολο, αλλά έμαθα πολλά!"

"Κάνετε λάθος!"

Φυσικά και η πορεία του Πέτρου δεν ήταν εύκολη!  Στην αρχή της καριέρας του ενώ εξασκούνταν με το JMeter, κατά λάθος έστειλε 100.000 αιτήματα δοκιμής στην Google, με αποτέλεσμα να απαγορευτεί η πρόσβαση στην ιστοσελίδα της εταιρείας του. Αυτό το περιστατικό του δίδαξε τη σημασία του υπεύθυνου testing. Αντί όμως να αποθαρρυνθεί από αυτές τις αστοχίες, ο Πέτρος τις χρησιμοποιεί ως ευκαιρίες για να βελτιωθεί.

"Την πρώτη φορά που έστησα ένα πλαίσιο αυτοματοποίησης, ο κώδικάς μου ήταν απλά άσχημος, αυτό που θα λέγαμε "spaghetti code". Ένα αξιοσημείωτο λάθος από την αρχή της καριέρας μου ήταν όταν προσπάθησα να εξασκηθώ με το JMeter, ένα εργαλείο που δεν είχα ξαναχρησιμοποιήσει. Αφελώς πρόσθεσα την ιστοσελίδα της Google και το έβαλα να λάβει 100.000 hits. Τότε, ως junior tester, δεν συνειδητοποίησα ότι αυτό θα έστελνε πραγματικά 100.000 αιτήματα στη Google. Τί έγινε μετά; Η Google "μπάναρε" την ιστοσελίδα της εταιρείας μου. Και ακολουθήσε ένα email από τον CEO που ρωτούσε, "Ποιος είναι αυτός ο Πέτρος;" Αν και σήμερα το θυμάμαι χαμογελώντας, τότε ήταν ένα πολύ σοβαρό μάθημα για μένα"

Κατά τη διάρκεια μιας συνέντευξης εργασίας σε μια μεγάλη βρετανική εταιρεία ραδιοτηλεοπτικών εκπομπών,  ο Έλληνας manager, και tester ο ίδιος,  που του πήρε τη συνέντευξη, του έκανε δύο ερωτήσεις για το Selenium, στις οποίες ο Πέτρος τότε δεν μπόρεσε να απαντήσει, καθώς δεν ήξερε πολλά για το θέμα. Δεν πήρε τη δουλειά, αλλά αποφάσισε να τους "αποδείξει ότι έκαναν λάθος". Δούλεψε ακούραστα για να μάθει τα πάντα γύρω από το software testing, αποκτώντας την εμπειρία που τον έχει καταστήσει έναν από τους πιο δραστήριους και γνώστες testers στην Ελλάδα και όχι μόνο.

Ομαδική δουλειά και πάθος για γνώση 

Ο Πέτρος τονίζει ότι η συνεργασία και η συνεχής μάθηση είναι απαραίτητα στοιχεία στην καριέρα του.   Παράδειγμα αυτής της προσέγγισης, είναι οι συζητήσεις με τους developers, όπου εξετάζει προσεκτικά τον κώδικά τους και εμβαθύνει στον αντικειμενοστραφή προγραμματισμό (Object-Oriented Programming). Με αυτή τη νοοτροπία, αφιερώνει αμέτρητες ώρες για να διασφαλίσει υψηλής ποιότητας αποτελέσματα.

Ο Πέτρος αξιοποιεί συνεχώς ευκαιρίες για να διευρύνει τις γνώσεις του, μελετώντας έργα στο GitHub και συμμετέχοντας σε διαδικτυακά σεμινάρια. Έχει συμμετάσχει σε σημαντικές συζητήσεις με κορυφαίους developers που βρίσκονται πίσω από ευρέως χρησιμοποιούμενα πλαίσια, όπως το Jenkins και το Selenium, αποκτώντας ανεκτίμητες γνώσεις από την εμπειρία τους. Θυμάται χαρακτηριστικά στιγμές, όπως ένα δείπνο στο Οχάιο με την Angie Jones και τη συνάντηση του Simon Stewart και του Kohsuke Kawaguchi στην Αθήνα, που εμπλούτισαν την επαγγελματική του πορεία.

"Η συμβουλή μου είναι απλή: βουτήξτε στα βαθειά, γράψτε κώδικα, επικοινωνείστε και ζητήστε καθοδήγηση, ψάξτε τις καλύτερες λύσεις που υπάρχουν."

Η σημασία της κοινότητας – Ministry of Testing Athens

Η παρακολούθηση ενός συνεδρίου Software Testing για το Selenium στο Λονδίνο, εμπνέει τον Πέτρο να δημιουργήσει μια παρόμοια στην Ελλάδα, το Ministry of Testing Athens, όπου μέσα από meetups και εκπαιδευτικές δραστηριότητες, testers και software developers, μοιράζονται γνώσεις, μαθαίνουν ο ένας από τον άλλον και εξελίσσονται μαζί.

"Υπάρχει μια ελληνική κοινότητα όπου όλοι μοιραζόμαστε γνώσεις και εμπειρίες, με στόχο να διδάξουμε και να μάθουμε για το testing λογισμικού. Αν έχω μια ερώτηση, μπαίνω στο Slack κανάλι και ρωτάω."

H συμμετοχή σε τέτοιου είδους κοινότητες είναι μια από τις πιο πολύτιμες συμβουλές που μπορεί κάποιος να προσφέρει στους Software Testers. Με το να εμφανίζεσαι, ανοίγεις την πόρτα σε νέες ευκαιρίες και εμπειρίες.

Για όσους ενδιαφέρονται για το software testing, η πορεία του Πέτρου Πλακογιάννη δείχνει πως η συνεχής μάθηση, η μάθηση μέσω της συνεργασίας, η ανθεκτικότητα και η συμμετοχή σε επαγγελματικές κοινότητες μπορούν να οδηγήσουν σε μία εξαιρετικά επιτυχημένη καριέρα. 

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

Η Ομάδα Επαγγελματικής Επιμόρφωσης

Ελληνοαμερικανικής Ένωσης

210-3680911 | www.hau.gr

THE FUTURE OF DRIVING

Οταν η πολυτέλεια συναντά την τεχνολογική υπεροχή