23 Εναλλακτικές διαδρομές καριέρας στις οποίες μπορούν να αναπτυχθούν οι προγραμματιστές λογισμικού

Τα τελευταία πέντε χρόνια, έχω δώσει δεκάδες διαλέξεις επισκεπτών σε πολλά από τα bootcamps κωδικοποίησης στο Σικάγο.

Μερικές ερωτήσεις δεν καταλήγουν ποτέ: "Ποια γλώσσα πρέπει να μάθω στη συνέχεια;", "Πώς μπορώ να προετοιμαστώ για τεχνικές συνεντεύξεις;", "Προσλαμβάνετε;"

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

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

Τι άλλο μπορούν να κάνουν οι προγραμματιστές λογισμικού;

Αυτή η συνειδητοποίηση με έκανε να σκεφτώ: "Τι άλλες δουλειές μπορούν να κάνουν οι μηχανικοί λογισμικού εκτός από τη δημιουργία λογισμικού;"

Η λίστα είναι εκπληκτικά μεγάλη.

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

Είτε ψάχνετε για μια εναλλακτική πορεία καριέρας επειδή δεν έχετε βρει δουλειά ως μηχανικός ή επειδή συνειδητοποιήσατε ότι η ανάπτυξη λογισμικού δεν ήταν για εσάς, αυτός ο οδηγός θα σας βοηθήσει να βρείτε μια καριέρα κατάλληλη για το skillet σας.

Εναλλακτικές διαδρομές καριέρας για προγραμματιστές λογισμικού

Ρόλοι που αντιμετωπίζουν οι πελάτες

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

1. Σχέσεις προγραμματιστών, υπεράσπιση ή ευαγγελισμός

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

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

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

Εάν ενδιαφέρεστε για αυτόν τον τομέα, διαβάστε τι κάνουν οι Mary Thengvall και PJ Hagerty. Είναι δύο από τους αγαπημένους μου επηρεαστές στο χώρο και έβαλαν μαζί το podcast Community Pulse.

2. Μάρκετινγκ προγραμματιστών

Ενώ υπάρχει κάποια αλληλεπικάλυψη με τις σχέσεις προγραμματιστών, το μάρκετινγκ προγραμματιστών επικεντρώνεται πιο εξωτερικά.

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

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

3. Μηχανικός πωλήσεων

Πολλοί μηχανικοί απενεργοποιούνται από οποιαδήποτε δουλειά με "πωλήσεις" στον τίτλο, αλλά αυτό συμβαίνει επειδή όλοι συναντήσαμε κακούς πωλητές.

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

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

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

4. Τεχνικός στρατολόγος

Ένα άλλο επάγγελμα που παίρνει ένα κακό ραπ μεταξύ των μηχανικών λογισμικού είναι η τεχνική πρόσληψη.

Έχω γνωρίσει μερικούς ειλικρινείς, γνήσιους στρατολόγους τεχνολογίας (Taylor Dorsett και Matt Hoffman από την πόλη μου στο Σικάγο, για παράδειγμα), αλλά έχω επίσης συναντήσει και μερικούς φοβερούς, ανίδεους στρατολογητές που είναι καθαρά επικεντρωμένοι στο να αναζητούν υποψηφίους για να επιτύχουν την ποσόστωσή τους .

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

Δυστυχώς, πολλές από τις θέσεις εργασίας σε επίπεδο τεχνολογικής πρόσληψης είναι σε εταιρείες χαμηλής ποιότητας, οπότε φροντίστε να ελέγξετε τη φήμη τους στο Glassdoor πριν κάνετε αίτηση.

Ρόλοι προϊόντων

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

5. Διασφάλιση ποιότητας ή μηχανικός δοκιμών

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

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

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

6. Επιχειρηματικός αναλυτής

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

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

7. Υπεύθυνος έργου

Όπως οι αναλυτές επιχειρήσεων, οι διαχειριστές έργων πρέπει να κατανοήσουν τις επιχειρηματικές απαιτήσεις και τους τεχνικούς περιορισμούς του προϊόντος τους.

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

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

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

8. Scrum Master

Στις ομάδες Agile, το Scrum Master βοηθά να βεβαιωθείτε ότι όλοι γνωρίζουν και αγοράζουν τη θεωρία, τις βέλτιστες πρακτικές και τους κανόνες του Scrum.

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

Η ικανότητα διαχείρισης προσδοκιών και περιορισμών είναι ζωτικής σημασίας για την επιτυχία σας ως Scrum Master. Θα πρέπει επίσης να γνωρίζετε τις βέλτιστες πρακτικές του Agile, οπότε θα συνιστούσα να βρείτε ένα κατάλληλο μάθημα ή βιβλίο σχετικά με το θέμα. Η Agile έχει δει ευρεία υιοθέτηση σε οργανισμούς όλων των μεγεθών, οπότε αυτή η πορεία σταδιοδρομίας είναι πιθανό να συνεχίσει να αυξάνεται την επόμενη δεκαετία.

9. Διαχειριστής προϊόντων

Πέρασα πολύ χρόνο το 2019 μαθαίνοντας για τη διαχείριση προϊόντων για τη βελτίωση της διαδικασίας παράδοσης των προϊόντων μας στο The Graide Network.

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

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

10. Σχεδιαστής

Εάν προέρχεστε από ένα σχέδιο ή καλλιτεχνικό υπόβαθρο, το να γίνετε σχεδιαστής UI ή UX με κάποια μπριζόλα κωδικοποίησης είναι ένας πολύ καλός τρόπος για να ξεχωρίσετε στον τομέα σας. Αυτός ο συνδυασμός δεξιοτήτων θα σας επιτρέψει να μιλήσετε πιο αποτελεσματικά με μηχανικούς και να δημιουργήσετε διαδραστικά πρότυπα σε HTML / CSS και όχι μόνο στατικά αρχεία εικόνας.

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

11. Όχι ή προγραμματιστής χαμηλού κώδικα

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

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

Υποστήριξη ρόλων

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

12. Μηχανικός Sysadmin ή DevOps

Οι μεγάλες εταιρείες λογισμικού διαθέτουν εκατοντάδες ή χιλιάδες διακομιστές που πρέπει να διορθωθούν, να αναβαθμιστούν και να περιστραφούν καθ 'όλη τη διάρκεια του έτους. Ενώ η ευρεία υιοθέτηση του cloud computing άλλαξε αυτή τη δουλειά από τη φυσική σύνδεση σε διακομιστές σε εργασία με λογισμικό όπως το Terraform και το Kubernetes, δεν υπάρχει έλλειψη θέσεων εργασίας σε αυτόν τον τομέα.

Παραδοσιακά, οι διαχειριστές συστήματος ήταν υπεύθυνοι για τη συντήρηση και τη διαχείριση διακομιστών, όπως απαιτείται από τις ομάδες μηχανικής. Καθώς οι οργανισμοί έχουν αναπτυχθεί και μετακινηθούν στο cloud hosting, πολλοί έχουν υιοθετήσει τον τίτλο μηχανικός DevOps για να αντικατοπτρίζουν τον αυξημένο αυτοματισμό που χρησιμοποιείται σε αυτήν τη διαδικασία. Στην πράξη, υπάρχει πολλή αλληλεπικάλυψη μεταξύ αυτών των ρόλων.

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

13. Διαχειριστής βάσης δεδομένων

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

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

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

14. Μηχανικός αξιοπιστίας ιστότοπου

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

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

15. Τεχνική υποστήριξη ή υποστήριξη πελατών

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

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

Διδασκαλία και συγγραφή ρόλων

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

Εκπαιδευτικοί ρόλοι για προγραμματιστές λογισμικού

16. Τεχνικός συγγραφέας

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

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

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

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

17. Δάσκαλος

Υπάρχουν διάφοροι τρόποι με τους οποίους μπορείτε να περιστρέψετε από μια καριέρα στην ανάπτυξη λογισμικού σε έναν ως δάσκαλο. Θα μπορούσατε να πάρετε μια εργασία διδασκαλίας σε ένα bootcamp κωδικοποίησης, θα μπορούσατε να διδάξετε σε ένα κολέγιο ή ένα γυμνάσιο, θα μπορούσατε να συμμετάσχετε σε μια πλατφόρμα όπως το egghead.io ή θα μπορούσατε να δημιουργήσετε τη δική σας ιστοσελίδα μαθημάτων με το Teachable or Educative. Η διαδρομή που ακολουθείτε εξαρτάται από το ιστορικό και την ανοχή κινδύνου.

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

18. Εκπαιδευτής

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

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

Εάν σας αρέσει να είστε στη σκηνή και να παρουσιάζετε τεχνικές έννοιες, αυτό θα μπορούσε να είναι μια ιδανική πορεία σταδιοδρομίας.

Αναλυτικοί Ρόλοι

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

19. Επιστήμονας δεδομένων ή μηχανικός

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

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

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

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

20. Αναλυτής ασφαλείας

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

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

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

21. Ε & Α

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

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

Ανεξαρτησία και ευελιξία

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

22. Ελεύθερος επαγγελματίας ή Σύμβουλος

Ένας τρόπος για να αποκτήσετε περισσότερη ελευθερία είναι να αφήσετε τη δουλειά 9-5 και να γίνετε ελεύθερος επαγγελματίας. Ως ελεύθερος επαγγελματίας, θα προσλάβετε έναν ή περισσότερους πελάτες που θα σας πληρώσουν την ώρα για να γράψετε κώδικα για αυτούς. Οι εταιρείες προσλαμβάνουν συχνά ελεύθερους επαγγελματίες για να εργαστούν σε συγκεκριμένα βραχυπρόθεσμα έργα, να καθαρίσουν το τεχνικό χρέος ή να συμπληρώσουν κενά όταν ένας υπάλληλος κάνει ένα διάλειμμα.

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

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

Καθώς δημιουργείτε μια λίστα φήμης και πελατών, θα μπορείτε να πάρετε περισσότερη δουλειά από παραπομπές. Οι παραπομπές είναι εξαιρετικές επειδή ο πελάτης έρχεται σε εσάς με βάση μια αξιόπιστη σχέση και όχι την ανωνυμία του διαδικτύου. Εάν είστε πολύ καλοί στο freelancing ή στις συμβουλές, μπορείτε να αυξήσετε το ποσοστό σας αρκετά υψηλό ώστε να μπορείτε να αφιερώσετε λίγο χρόνο μεταξύ κάθε αφοσίωσης.

23. Ιδρυτής εκκίνησης

Το Διαδίκτυο είναι γεμάτο ιστορίες μηχανικών λογισμικού που ξεκινούν επιχειρήσεις (1, 2, 3), οπότε μπορεί να έχετε την εντύπωση ότι είναι εύκολο ή ακόμα και μια καλή ιδέα.

Η αλήθεια είναι, εξαρτάται.

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

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

Τελικές σκέψεις

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

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

Θα ήθελα πολύ να ακούσω τις σκέψεις σας. Εάν έχετε ακολουθήσει μια μη συμβατική πορεία ή έχετε αλλάξει καριέρα, ενημερώστε με τι πιστεύετε στο Twitter.