Πώς να εργαστείτε ως προγραμματιστής λογισμικού

Συγγραφέας: Peter Berry
Ημερομηνία Δημιουργίας: 19 Αύγουστος 2021
Ημερομηνία Ενημέρωσης: 1 Ιούλιος 2024
Anonim
Τι Εταιρεία να Ανοίξω ως Freelancer ή StartUp, NerdCast
Βίντεο: Τι Εταιρεία να Ανοίξω ως Freelancer ή StartUp, NerdCast

Περιεχόμενο


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

Σύμφωνα με USNews.com, ο μέσος κατασκευαστής λογισμικού έκανε $ 101.790 το 2017. Σύμφωνα με την Gorroo.io, ο μέσος προγραμματιστής C # κερδίζει $ 102.000 το χρόνο.

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

Ο μέσος προγραμματιστής C # κερδίζει $ 102.000 το χρόνο.

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


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

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

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

Τύποι προγραμματιστών λογισμικού

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


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

Μια άλλη διάκριση που πρέπει να λάβετε υπόψη: προγραμματιστής λογισμικού εναντίον μηχανικού λογισμικού, ποια είναι η διαφορά;

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

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

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

Ποιες δεξιότητες και προσόντα χρειάζεται ένας προγραμματιστής λογισμικού;

Για να είστε προγραμματιστής λογισμικού, πρέπει να μάθετε να προγραμματίζετε.

Η επόμενη ερώτηση είναι: "ποια είναι η καλύτερη γλώσσα προγραμματισμού για μάθηση" ή "ποιες γλώσσες προγραμματισμού επιθυμούν οι εργοδότες;"

Ενώ είναι βεβαίως αλήθεια ότι ορισμένες γλώσσες προγραμματισμού απαιτούνται περισσότερο από τους πελάτες και τους εργοδότες (Python, Java, JavaScript, PHP, Swift, C #, C ++, Ruby), η αλήθεια είναι ότι αυτό εξαρτάται εξ ολοκλήρου από το είδος της εργασίας που θέλετε να κάνετε . Ακολουθούν μερικά παραδείγματα.

Πλήρης προγραμματιστής στοίβας

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

Ο "προγραμματιστής πλήρους στοίβας" είναι ένας προγραμματιστής ιστού που έχει επιτύχει την τελική του μορφή: κάποιος που μπορεί να χειριστεί κάθε πτυχή του σχεδιασμού και συντήρησης ιστού, από το μπροστινό μέρος (HTML, CSS, JavaScript) έως το πίσω μέρος (PHP, Python, Ruby), στη συντήρηση του διακομιστή. Αυτό το είδος του επαγγελματία είναι σε καυτή ζήτηση.

Εδώ είναι μια μεγάλη πορεία από Udemy αν θέλετε να μάθετε περισσότερα: Full Stack Web Developer Bootcamp.

Κινητό προγραμματιστή

Εάν ενδιαφέρεστε να αναπτύξετε εφαρμογές Android, τότε θα χρειαστεί να μάθετε Java ή Kotlin (ιδανικά και τα δύο). Θα χρειαστεί να εξοικειωθείτε με το Android Studio, το κιτ ανάπτυξης λογισμικού Android (Android SDK) και όλες τις νέες έννοιες που εισάγει συνεχώς η Google (όπως στιγμιαίες εφαρμογές ή φυσαλίδες).

Διαβάστε περισσότερα: Πώς να βρείτε εργασία ως προγραμματιστής Android

Αν θέλετε να κάνετε τις εφαρμογές iOS για ζωντανά, θα πρέπει να μάθετε το Swift και τον Στόχο C και να εξοικειωθείτε με τον Xcode. Αν θέλετε να κάνετε εφαρμογές των Windows ή να κάνετε cross-platform, τότε θα χρειαστείτε C # και μια κατανόηση του Visual Studio.

Developer παιχνιδιών

Για να γίνετε προγραμματιστής παιχνιδιών, τότε θα πρέπει να μάθετε σίγουρα C # και ιδανικά C ++. Θα πρέπει να γνωρίσετε τις μεγάλες μηχανές παιχνιδιών (Unity και Unreal), και ίσως θελήσετε να προσθέσετε λίγο CAD στο σύνολο δεξιοτήτων σας.

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

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

Στη συνέχεια, υπάρχουν τα ειδικά εργαλεία που θα χρησιμοποιήσουν οι εταιρείες για να διαχειριστούν τη ροή εργασίας τους και να συνεργαστούν σε μεγαλύτερα έργα. Όταν επισκέφθηκα το Facebook στο Λονδίνο πριν από μερικούς μήνες, μου παρουσιάστηκαν τα πολλά διαφορετικά εργαλεία που χρησιμοποιεί η εταιρεία για να κρατήσει τα έργα σε καλό δρόμο. Περιλαμβάνουν το Phabricator, το Mercurial, το Sapienz και πολλά άλλα.

Βεβαίως, εργαλεία όπως το Github (που χρησιμοποιούνται για τον έλεγχο της έκδοσης) είναι πιθανό να είναι χρήσιμα για μηχανικούς λογισμικού και προγραμματιστές που εργάζονται σε ποικίλες βιομηχανίες. Οι εφαρμογές διαχείρισης έργων όπως το Asana ή το Basecamp είναι επίσης πολύ χρήσιμες για την απομακρυσμένη εργασία. Το γεγονός ότι έχετε εμπειρία σε αυτούς τους τομείς θα ολοκληρώσει περαιτέρω το βιογραφικό σας σημείωμα και θα σας κάνει ακόμα πιο απασχολημένους.

Για να το συνοψίσω: αυτό που πρέπει να ξέρετε θα εξαρτηθεί από τον τύπο του προγραμματιστή λογισμικού που θέλετε να γίνετε.

Οι καλύτερες πιστοποιήσεις προγραμματιστών λογισμικού

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

Η σύντομη απάντηση είναι όχι. Η μεγαλύτερη απάντηση είναι όχι, αλλά σίγουρα βοηθάει.

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

Διαβάστε περισσότερα: Βελτιώστε τη σταδιοδρομία και τον μισθό σας ως αναλυτής ασφάλειας πληροφοριών

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

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

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

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

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

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

Χρειάζεστε πιστοποιήσεις για να είστε προγραμματιστής λογισμικού;

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

Μπορώ να σας εγγυηθώ ότι είναι, καθώς αυτό ακριβώς έκανα. Έμαθα BASIC προγραμματισμό σε ένα ZXSpectrum, και από εκεί προχώρησα τις γνώσεις μου με QBASIC, B4A, τότε Java, C #, Python και πολλά άλλα.

Ο τρόπος με τον οποίο μπορώ να το κάνω αυτό ήταν να αφήσω το βιογραφικό μου να μιλήσει για μένα. Έχω αναπτύξει μια επιτυχημένη εφαρμογή Android που είχε πάνω από 100.000 λήψεις πληρωμής, δούλεψε με αρκετά μεγάλα ονόματα από το πίσω μέρος και έγραψε ένα τεχνικό βιβλίο για την ανάπτυξη παιχνιδιών για το Apress Media (Springer).

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

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

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

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

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

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

αφού γνωρίζετε μία γλώσσα προγραμματισμού, είναι σχετικά απλό να καταλάβετε τους άλλους.

Όταν εργάζεστε σε έναν οργανισμό, θα απαιτηθεί πάντα κατάρτιση. Πολύ λίγοι εργοδότες θα περιμένουν να γνωρίζετε τα πάντα αμέσως και - με κάθε ειλικρίνεια - υπάρχει ένα τεράστιο ποσό blugging που πηγαίνει στην καριέρα του κάθε μηχανικού λογισμικού. Αναμείνετε να αισθανθείτε εντελώς έξω από τα βάθη σας και γεμάτο με "σύνδρομο απατεώνας" όταν ξεκινάτε. Αλλά μην ανησυχείτε, έτσι αισθάνεται ο καθένας!

Πώς να διδάξετε τον εαυτό σας κώδικα

Η διδασκαλία στον κώδικα είναι μια δύσκολη διαδικασία και προηγμένες ιδέες όπως ο προγραμματισμός αντικειμένων μπορεί να είναι σκληροί καρποί για να σπάσουν. Ευτυχώς, υπάρχει ένα τεράστιο ποσό ελεύθερου υλικού που διατίθεται στο διαδίκτυο. έχουμε ήδη επισημάνει μερικά σπουδαία μαθήματα από το Udemy και υπάρχουν και πολλά άλλα εκτός αυτού. Έχουμε ένα μάθημα για προγραμματιστές Android που εκτελούνται από τον Gary Sims για παράδειγμα.

Ακολουθούν μερικά ακόμα εξαιρετικά εργαλεία για την εκμάθηση κώδικα αυτή τη στιγμή:

  • Μια μεγάλη πορεία που θα διδάξει την Python για την επιστήμη των δεδομένων.
  • C # δέσμη κωδικοποίησης
  • Εννέα μέρη πακέτο κατάρτισης pro web developer

Και υπάρχουν πολλά σπουδαία μαθήματα σε τοποθεσίες όπως το SkillShare.

Δείτε επίσης: Πώς να ξεκινήσετε την ανάπτυξη εφαρμογών Android για πλήρεις αρχάριους σε 5 βήματα

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

Εύρεση αμειβόμενης εργασίας ως προγραμματιστής λογισμικού

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

Η εξεύρεση εργασίας ανεξάρτητων είναι κατά κύριο λόγο ζήτημα χρήσης ιστότοπων λιστών εργασίας, ελεύθερων χώρων όπως το PeoplePerHour ή το UpWork.

Υπάρχουν επίσης τοποθεσίες ανεξάρτητων που απευθύνονται ειδικά σε προγραμματιστές λογισμικού και μηχανικούς. Αυτά περιλαμβάνουν το Rent-a-code, και ακόμη και το Overflow Stack.

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

Παράλληλα με τα νέα P30 και P30 Pro, η Huawei εισήγαγε επίσης νέα χρώματα, στυλ και μεγέθη του Huawei Watch GT.Πρώτα, το 46mm Huawei Watch GT παίρνει μια οπτική ανανέωση με θήκη γκρι τιτανίου και ένα ...

Ενημέρωση: 14 Φεβρουαρίου - Το Huawei Watch GT διατίθεται τελικά στις ΗΠΑ, μέσω της Amazon. Το μοντέλο port κοστίζει 199,99 δολάρια, ενώ το μοντέλο Claic κοστίζει στα 229,99 δολάρια....

Δημοφιλή Στην Περιοχή