Οδηγίες για όσους θέλουν να γίνουν προγραμματιστές από την αρχή
Οδηγίες για όσους θέλουν να γίνουν προγραμματιστές από την αρχή
Anonim

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

Οδηγίες για όσους θέλουν να γίνουν προγραμματιστές από την αρχή
Οδηγίες για όσους θέλουν να γίνουν προγραμματιστές από την αρχή

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

Από πού να ξεκινήσω

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

Εάν δεν σας συνέβη τίποτα από τα παραπάνω, τότε έχετε τέσσερις επιλογές:

  • Αυτομόρφωση … Αυτή η επιλογή μπορεί να χρησιμοποιηθεί τόσο ανεξάρτητα όσο και σε συνδυασμό με άλλες μεθόδους. Το Διαδίκτυο είναι γεμάτο και, που βοηθούν στην εκμάθηση διαφόρων γλωσσών προγραμματισμού και τεχνολογιών. Αλλά αυτός είναι ο πιο δύσκολος δρόμος για αρχάριους.
  • Το Πανεπιστήμιο … Αν αποφοιτάς από το λύκειο και θέλεις να γίνεις προγραμματιστής, πήγαινε στο πανεπιστήμιο. Αν όχι για γνώση, τότε πίσω από μια κρούστα. Μπορεί να χρησιμεύσει ως μπόνους όταν κάνετε αίτηση για εργασία. Αν και θα πάρετε και εσείς κάποιες γνώσεις. Αλλά μην ξεχνάτε να κάνετε και αυτοδιδασκαλία. Η επιλογή ενός πανεπιστημίου πρέπει να προσεγγιστεί πολύ υπεύθυνα. Μελετήστε προσεκτικά τα προγράμματα σπουδών και επιλέξτε τα καλύτερα ΤΕΙ.
  • Μέντορας … Θα είναι πολύ ωραίο αν βρείτε κάποιον που θα συμφωνήσει να σας βοηθήσει και να σας υποδείξει τη σωστή κατεύθυνση. Θα προτείνει κατάλληλα βιβλία και πόρους, θα ελέγξει τον κώδικά σας και θα παρέχει χρήσιμες συμβουλές. Παρεμπιπτόντως, έχουμε ήδη γράψει για το πού μπορείτε να βρείτε έναν μέντορα. Μπορείτε να αναζητήσετε έναν μέντορα ανάμεσα σε γνωστούς προγραμματιστές, σε πάρτι και συνέδρια πληροφορικής, σε διαδικτυακά φόρουμ κ.λπ.
  • Εξειδικευμένα πρακτικά μαθήματα … Δοκιμάστε να αναζητήσετε μαθήματα στην πόλη σας όπου θα διδαχτείτε μια γλώσσα προγραμματισμού ή μια τεχνολογία. Με εξέπληξε ευχάριστα ο αριθμός τέτοιων μαθημάτων στο Κίεβο, συμπεριλαμβανομένων των δωρεάν και με επακόλουθη απασχόληση.

Ποια γλώσσα, τεχνολογία και κατεύθυνση να επιλέξετε

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

  • Διαθεσιμότητα στην αγορά κενών θέσεων … Ο απώτερος στόχος αυτής της διαδρομής είναι να βρει δουλειά ως προγραμματιστής. Και αυτό θα είναι δύσκολο εάν κανείς δεν αναζητά προγραμματιστές στη γλώσσα προγραμματισμού σας στην αγορά εργασίας. Ελέγξτε τις τοποθεσίες εργασίας, δείτε ποιοι ψάχνουν για περισσότερα, αναφέρετε μια ντουζίνα γλώσσες. Και προχωρήστε στο επόμενο κριτήριο.
  • Χαμηλό επίπεδο εισόδου … Εάν πρέπει να αφιερώσετε πολύ χρόνο στην εκμάθηση μιας γλώσσας, αυτό μπορεί να σας αποθαρρύνει από τον προγραμματισμό γενικά. Διαβάστε για τις γλώσσες που επιλέξατε παραπάνω. Περιηγηθείτε στη βιβλιογραφία που πρέπει να διαβάσετε για να μάθετε αυτές τις γλώσσες. Και επιλέξτε αυτά για τα οποία γράφτηκε ότι είναι εύκολα ή που σας φάνηκαν εύκολα. Τέτοιες γλώσσες μπορεί να είναι οι PHP, Ruby, Python.
  • Η συγκίνηση της διαδικασίας … Εάν δεν σας αρέσει να γράφετε κώδικα στη γλώσσα που έχετε επιλέξει, δεν θα απολαύσετε τη διαδικασία, τη δουλειά και τη ζωή. Το χρειάζεσαι? Κάντε τη σωστή επιλογή.

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

Μάθετε τεχνολογίες Ιστού πάντως. Είναι μια γλώσσα σήμανσης HTML, στυλ CSS και που θα κάνει τη σελίδα σας δυναμική. Στο επόμενο βήμα, μάθετε τη γλώσσα του διακομιστή (Python, PHP, Ruby και άλλα) και τα κατάλληλα πλαίσια web για αυτήν. Εξετάστε τις βάσεις δεδομένων: σχεδόν κάθε κενή θέση προγραμματιστή το αναφέρει αυτό.

Πώς να αποκτήσετε την αρχική εμπειρία

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

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

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

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

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

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

Ο τελευταίος τρόπος είναι τα δικά σας έργα, διάφορα hackathon ή η εργασία σε ένα coworking space. Είναι δύσκολο να ξεκινήσετε τα δικά σας έργα, είναι καλύτερα να αναζητήσετε γνωστούς ή φίλους.

Γιατί να επιλέξετε Python

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

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

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

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

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

Είναι σημαντικά τα αγγλικά

Σπουδαίος! Δεν ξέρω? Διδάσκω. Γνωρίζεις? Βελτιώσει. Μάθετε να διαβάζετε, να γράφετε, να ακούτε και να μιλάτε αγγλικά. Εστίαση στην τεχνική βιβλιογραφία. Ακούστε podcast στα αγγλικά. Διαβάστε μαθήματα αγγλικού προγραμματισμού.

Τι πρέπει να γνωρίζετε εκτός από τη γλώσσα προγραμματισμού

Φυσικά, εκτός από τη γλώσσα προγραμματισμού και τα αγγλικά, πρέπει να γνωρίζετε και κάτι άλλο. Αλλά τι εξαρτάται από την κατεύθυνση που θα επιλέξετε. Ένας προγραμματιστής Ιστού πρέπει να γνωρίζει HTML, CSS, JavaScript. Ένας προγραμματιστής επιτραπέζιου υπολογιστή διδάσκει το API του λειτουργικού συστήματος και διάφορα πλαίσια. Ένας προγραμματιστής εφαρμογών για κινητά διδάσκει πλαίσια Android, iOS ή Windows Phone.

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

Τα τελευταία βήματα

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

Συνιστάται: