Eine meiner Aufgaben bei Groupon bestand darin, dem Unternehmen zu helfen, einige hervorragende Entwickler anzuwerben; ich konnte als Sprecher des Groupon-Entwicklungsteams gelten und war hauptsächlich dafür verantwortlich, Rekrutierungsinformationen zu veröffentlichen und Fragen zu beantworten. Letzte Woche habe ich zwei Studierenden geantwortet, die sich nach Sommerpraktikumsplätzen erkundigt hatten.

Ich habe den Inhalt meiner E-Mail-Antworten sorgfältig durchgesehen und 8 Ratschläge zusammengefasst, die ich für wertvoll halte, für Studierende, die davon träumen, Programmierer zu werden:

  • 1. Wenn du bereits in deinem zweiten Studienjahr anfängst, dich bei Unternehmen außerhalb zu melden, ist dein Vorgehen lobenswert. Viele Studierende warten bis zwei Monate vor dem Abschluss (oder sogar länger), bevor sie über die Jobsuche nachdenken. Selbst wenn du keine Praktikumsmöglichkeit bekommst, solltest du trotzdem häufig zu Vorstellungsgesprächen gehen und mit einigen Unternehmen in Kontakt treten und dich bemühen, einen guten Eindruck bei anderen zu hinterlassen.

  • 2. Wenn du dich für eine ausgereifte Technologie interessierst, kannst du zuerst das relevante Grundwissen aus Büchern lernen. Achte darauf, theoretisches Wissen mit praktischen Übungen zu verbinden. Das Wissen in Büchern wurde sorgfältig bearbeitet und vermittelt dir eine vollständige Reihe systematischer Lerninhalte. Aber du kannst nicht nur Bücher lesen; du musst die Übungen darin machen. Wenn du zum Beispiel Rails lernen möchtest, kannst du "Agile Web Development with Rails" lesen, das dir beibringt, wie du in einer Woche eine vollständige E-Commerce-Website entwickelst. Manchmal kommt die Praxis vor dem Verständnis (oder genauer gesagt: Ohne Praxis kannst du nicht verstehen).

  • 3. Zu diesem Punkt möchte ich sagen: Sitze nicht einfach herum und warte darauf, dass dir der Unterricht neue Programmiersprachen oder hochmoderne Technologien beibringt. Das Ziel der in der Schule angebotenen Informatikkurse ist es, dir die theoretischen Grundlagen der Programmierung sowie einige Regeln und Spezialthemen zu vermitteln. Aber viele Technologien (wie Codeverwaltung, Serververwaltung, nginx-Konfiguration usw.) und Programmiersprachen (in den Schulkursen werden nur C und Java gelehrt) werden im Lehrplan der Schule nicht behandelt. Aber in einem Unternehmen lernst du oft gezielt neue Technologien, basierend auf deiner Karriereplanung und den Geschäftsanforderungen. Wenn du also in deiner beruflichen Laufbahn in der Zukunft etwas erreichen möchtest, versuche jetzt, einige neue Kenntnisse außerhalb des Lehrplans zu lernen.

  • 4. Konzentriere dich nicht nur auf ein paar spezifische Programmiersprachen und Frameworks; diversifiziere deine technischen Fähigkeiten. Bücher wie "Structure and Interpretation of Computer Programs" (kostenlos online lesen http://mitpress.mit.edu/sicp/full-text/book/book.html), "Clean Code" und "The Pragmatic Programmer" sind allesamt gut.

  • 5. Wenn du den obigen Punkt nur überflogen hast, solltest du ihn besser noch einmal lesen! Lies SICP, sieh dir die Videoerklärungen an. Diese Trainings werden dich zu einem exzellenten Programmierer machen.

  • 6. Lerne mindestens eine obskure Programmiersprache. Sie wird dich viele Dinge lehren, die du aus Mainstream-Sprachen wie Java nicht lernen kannst. Ich persönlich bevorzuge die Sprache Lisp. Das Buch "Land of Lisp" ist großartig und bietet dir eine unterhaltsame Möglichkeit, Lisp zu lernen.

  • 7. Finde ein Projekt, an dem du arbeiten kannst. Du musst nicht etwas sehr Bedeutungsvolles oder Wichtiges tun; solange es dir ermöglicht, zu üben. Schreibe ein kleines Programm, das den Starbucks in deiner Nähe finden kann, entwickle ein einheitliches Verwaltungswebsite-System für deine Lerngruppe, entwickle eine automatische Roboter-Software, die Puzzle-Aufgaben lösen kann. Einfach zum praktischen Lernen, und veröffentliche das Projekt online, stelle den Quellcode auf GitHub, und schreibe außerdem oft einige deiner eigenen Lernerkenntnisse und veröffentliche sie in einem Blog. Auf diese Weise werden die Projekte, die du machst, öffentlich gemacht. Der Vorteil ist, dass zukünftige Arbeitgeber einen guten Eindruck von dir haben, besonders bei Vorstellungsgesprächen. Gleichzeitig gibt dir dies auch die Möglichkeit, deine Schreibfähigkeit zu trainieren, sodass du jedes Jahr weißt, wo deine Fortschritte liegen.

  • 8. Knüpfen Sie Kontakte zu mehr Entwicklern in Ihrem eigenen Bereich. Dank Google können Sie, wenn es in Ihrem Bereich relevante Konferenzen und Aktivitäten gibt, diese in 5 Sekunden suchen. Wenn Sie keine Konferenzen finden, bedeutet das, dass es zu zeitaufwändig oder zu schwierig ist, sie zu organisieren. Sie können sich auch freiwillig an diesen Konferenzen beteiligen, etwa indem Sie Tagungsorte finden. Diese Dinge sind nicht sehr schwierig; entscheidend ist, Zeit zu investieren und Selbstvertrauen zu haben. Diese Dinge verschaffen Ihnen einen guten Ruf, halten Sie in Kontakt mit anderen, lassen Sie zusammenarbeiten und gemeinsam vorankommen.

  • Abschließend möchte ich sagen: Geben Sie 100 $ pro Jahr für Bücher aus und üben Sie fleißig. Sie werden mit Sicherheit ein College-Student werden, der in den Augen von Arbeitgebern hervorragender ist als alle anderen.