Ich habe einen Abschluss in Informatik, aber ich sehe Websites wie Stack Overflow und Suchmaschinen wie Google und weiß nicht, wo ich überhaupt anfangen würde, so etwas zu schreiben. Während eines Sommers hatte ich die Gelegenheit, als iPhone-Entwickler zu arbeiten, aber ich hatte das Gefühl, dass ich hauptsächlich Bibliotheken zusammenklebte, die andere Leute mit wenig Verständnis für die Mechanik unter der Motorhaube geschrieben hatten.
Ich versuche mein Wissen zu verbessern, indem ich Algorithmen studiere, aber es ist ein langer und schmerzhafter Prozess. Ich finde Algorithmen schwierig und bei der Geschwindigkeit, mit der ich lerne, wird ein Jahrzehnt vergangen sein, bevor ich das Material im Buch beherrsche. Angesichts meiner aktuellen Situation habe ich einen Monat auf der Suche nach Arbeit verbracht, aber meine Kenntnisse (C, Python, Objective-C) sind relativ gering und auf dem lokalen Markt, auf dem C #, Java und die Webentwicklung viel höher sind, nicht so wünschenswert gefragt. Das heißt nicht, dass es keine C- und Python-Möglichkeiten gibt, aber sie verlangen in der Regel mehr als drei Jahre Erfahrung, die ich nicht habe. Mein GPA ist in Ordnung (3.0), aber nicht hoch genug, um sich bei großen Unternehmen wie IBM zu bewerben oder für ein Abschlussstudium zurückzukehren.
Grundsätzlich habe ich einen Abschluss in Informatik, aber ich habe nicht das Gefühl, dass ich gelernt habe, wie man programmiert. Ich dachte, ein Unternehmen zu gründen und Vollzeit zu programmieren, würde mir die Chance geben, meine Fähigkeiten zu entwickeln und von denen zu lernen, die erfahrener sind als ich selbst, aber ich kämpfe darum, Arbeit zu finden, und fange an, wirklich frustriert zu werden.
Ich werde mein Netz weiter ausweiten und über die Stadt hinausblicken, in der ich aufgewachsen bin, aber was haben andere Menschen in einer ähnlichen Situation versucht? Ich habe hart gearbeitet, aber nicht das Selbstvertrauen, alleine auszugehen und meine eigene App zu schreiben. (Das heißt, Sie werden ein Indie-Entwickler auf dem iPhone-App-Markt.) Wenn nichts auftaucht, muss ich überlegen, ob ich populärere Fähigkeiten aufrüsten und erlernen oder etwas probieren, das nur geringfügig mit IT zu tun hat, aber angesichts all der Anstrengungen, die ich unternommen habe wie aussteigen.
Ich verstehe zwar, warum Sie das Gefühl haben, dass dies keine "echte Programmierung" ist, aber die Wahrheit ist, dass die Integrationsarbeit einen signifikanten Prozentsatz der typischen Arbeitsbelastung eines Unternehmensprogrammierers ausmacht. Deine Erfahrung ist vielleicht ein bisschen wertvoller als du denkst :)
quelle
Zunächst einmal vielen Dank für eine äußerst ehrliche Frage. Es gibt eine Reihe von Möglichkeiten, um die anstehenden Probleme zu lösen. Hier sind ein paar Tipps, die ich in der Vergangenheit als sehr hilfreich erachtet habe und die ich weiterhin verwende, um mein Wissen zu erweitern.
Lernen, lernen und noch mehr lernen. Dies ist wahrscheinlich der wichtigste Tipp, den ich Ihnen geben kann. Höre niemals auf zu lernen . Eine Sprache zu kennen ist gut, mehrere zu kennen ist sogar noch besser. Kenntnisse in anderen Sprachen machen Sie zu einem besseren Programmierer und erleichtern die Bewältigung bestimmter Aufgaben. Außerdem können Sie die allgemeinen Datenstrukturen besser kennenlernen.
Fangen Sie klein an .
Starten Sie in Ihrer Freizeit ein Hobbyprojekt. Tun Sie nichts, was Sie ziemlich leicht erreichen können. Nehmen Sie ein Projekt an, bei dem Sie keine Ahnung haben, wo Sie anfangen sollen. Wirf dich in die Tiefe. Dies hat den Vorteil, dass Sie Dinge lernen, von denen Sie nie gewusst haben, dass sie existieren, und wenn Sie es abschließen, werden Sie einen immensen Stolz und eine enorme Zufriedenheit verspüren. Das ist es, was mich am Laufen hält.
Haben Sie eine echte Leidenschaft für das, was Sie tun. Obwohl die Leute mir in diesem Punkt nicht zustimmen werden. Ich glaube nicht, dass Sie sich in diesem Bereich auszeichnen können, wenn Sie es einfach für einen 9-5-Job halten. Es muss eine Leidenschaft geben, es zu tun.
Helfen Sie anderen Menschen auf SO! Der beste Weg, dies zu verstehen, besteht darin, zu versuchen, es anderen Menschen beizubringen.
Studieren Sie die Programme anderer Personen und versuchen Sie herauszufinden, wie sie funktionieren. Implementieren Sie dann ähnliche Techniken in Ihre eigenen Programme. Versuchen Sie, es zu lesen und sich ein Bild davon zu machen, und machen Sie es dann selbst anhand dieses Verständnisses, anstatt es zu kopieren und einzufügen.
Bleib dran . Die Dinge können manchmal sehr frustrierend sein, aber sehr lohnend, wenn sie erledigt sind. Wenn Sie etwas nicht verstehen, machen Sie eine Pause, klären Sie Ihre Gedanken und versuchen Sie es erneut. Fragen Sie uns bei SO! Wir sind ein williger Haufen :)
Hören Sie nie auf, neue Technologien zu lernen.
Lies ein paar Bücher. Ich verstehe, als Student hättest du eine Tonne gelesen. Hier sind ein paar praktische Bücher, die Sie vielleicht als nützlich erachten… hoffentlich - Der Pragmatische Programmierer: Vom Gesellen zum Meister - Vollständiger Code: Ein praktisches Handbuch zur Softwarekonstruktion
quelle
Starte ein persönliches Projekt. Das Problem mit der Schule ist, dass das komplizierteste, was Sie dort gemacht haben, ein Projekt war, das 15 Wochen bis zu einem Jahr dauerte und an dem ein paar andere Personen beteiligt waren. Die Problemdomäne war gut verstanden (Ihr Professor hat Ihnen keine Aufgaben gegeben, die nicht genau in Ihr Semester passten.) Dies ist kein Luxus, den sich die reale Welt leisten kann.
Wenn Sie etwas Wesentliches tun müssen, von Anfang bis Ende, von dem Sie begeistert sein können, beginnt Ihr Gehirn, sich um den Prozess zu kümmern. Solange dies nur eine Karriere ist und Sie keine Liebe dazu haben, werden Sie immer noch das Gefühl haben, dass Sie es noch nicht geschafft haben.
quelle
quelle
Ich kann Ihnen bei Ihrer Arbeitssituation nicht helfen, aber ich hoffe, ich kann Ihnen helfen, Ihre Fähigkeiten zu entwickeln und Ihre Gefühle in Bezug auf Ihre eigenen Fähigkeiten in die richtige Perspektive zu rücken.
Es ist möglich, dass sich Ihre Instruktoren für etwas schämen müssen. Es ist auch möglich, dass Ihr Gefühl, nicht zu wissen, wie man programmiert, natürlich und für diese Phase Ihres Lebens und Ihrer Ausbildung angemessen ist. Hier sind einige Ideen, die helfen können:
Vielen Arbeitgebern ist es egal, welche Kurse auf Ihrem Zeugnis stehen oder wie hoch Ihr GPA ist. Stattdessen möchten sie wissen, was Sie können und vor allem, was Sie gebaut haben. Für einen guten Job ist das, was Sie erstellt haben, wichtiger als die Technologie (C, C #, was Sie haben) in Ihrem Lebenslauf.
Wenn Sie während Ihrer Ausbildung nicht die Gelegenheit hatten, eine Reihe interessanter Projekte aufzubauen, schämen Sie sich für Ihre Ausbilder. Aber Sie können diese Projekte jetzt erstellen. Durchsuchen Sie Websites nach interessanten Problemen. Unsere Studenten im zweiten Semester beenden gerade die "Liedersuche" - wir haben eine große Anzahl von Texten für eine Website erstellt, sie erstellen einen invertierten Index, Sie geben Schlüsselwörter ein und es zeigt Ihnen die Texte, die diese Wörter enthalten, im Kontext. Es ist nicht Google, aber es basiert auf denselben Prinzipien mit ähnlichen Datenstrukturen, und Sie können jetzt damit beginnen, es zu erstellen.
Vielleicht haben Sie nicht hart an den richtigen Problemen gearbeitet? Es ist gut, Probleme damit zu finden
Wenn Sie diese Art von Problemen angehen, lernen Sie, Entscheidungen zu treffen, mit den Konsequenzen zu leben, und wenn die Dinge nicht funktionieren, gehen Sie zurück und überdenken Sie Ihre Entscheidungen. Sie lernen mehr aus Ihren Fehlern als aus Ihren Erfolgen, aber Sie gewinnen mehr Vertrauen aus Ihren Erfolgen als aus Ihren Fehlern.
Gute Probleme - mit Eigenschaften wie den oben aufgeführten - sind wie Gold, mit der Ausnahme, dass sie nichts verlieren, wenn Sie ein gutes Problem von jemand anderem bekommen. Durchsuche das Web nach guten Problemen und übe, übe, übe. Wenn Sie mit den Euler-Problemen beginnen müssen, sind sie für Anfänger in Ordnung. Bald möchten Sie jedoch kleine oder mittelgroße Projekte erstellen, die Sie für richtig cool halten . Wenn Sie von etwas begeistert sind, das Sie gebaut haben, werden Sie potenzielle Arbeitgeber beeindrucken. Wenn Sie nicht begeistert sind, ist es schwierig, Sie einzustellen.
Peter Norvig berichtet, dass es zehn Jahre dauert, um Experte zu werden . Natürlich fühlen Sie sich nicht gleich nach Ihrem Abschluss als Experte. Ich werde Sie auf ein kleines Geheimnis hinweisen: Die meisten Mitglieder der Harvard-Fakultät (ich war eine für acht Jahre) haben das Gefühl, dass sie nicht wirklich zu Harvard gehören, sie wissen nicht genug, und es muss ein Irrtum gewesen sein Sie wurden eingestellt. Diese Art von Gefühl ist sehr, sehr häufig bei Menschen, die den Übergang von der Schule zum Arbeitsplatz oder von einer Art von Beruf zur anderen vollziehen. Es ist so verbreitet, dass es einen Namen dafür gibt: "Das Betrüger-Syndrom".
Auch wenn Sie Ihren Abschluss haben, wird Ihre Universität immer noch mit Ihnen sprechen. Wenn Sie wirklich gute Professoren hatten, interessieren sie sich wahrscheinlich immer noch für Sie. Es ist ihnen auf jeden Fall wichtig, dass eine ihrer Schülerinnen einen B-Durchschnitt erreicht hat und dennoch das Gefühl hat, dass sie die Grundfertigkeiten ihres Fachs nicht beherrscht. Suchen Sie sich also einen oder zwei der energischsten und sympathischsten Professoren aus Ihrem Programm aus und holen Sie sich Hilfe bei der Suche nach guten Problemen. Dann setzen Sie sich verantwortlich für Ihre Fähigkeiten, Ihr Wissen und Ihre Gefühle über sie. Bauen Sie jeden Tag ein kleines Dingsbums und verschwenden Sie Ihre wertvolle Bauzeit nicht mit etwas, das nicht wirklich cool ist. Ich verspreche, Sie werden irgendwann wieder ein Gefühl der Begeisterung für das Programmieren entwickeln, und wenn Sie dies tun, werden Sie auch in der Lage sein, Selbstvertrauen aufzubauen.
quelle
Es gab eine Szene in einer alten Law & Order, in der sich eine Staatsanwältin darüber beschwert, dass sie nichts über ihre Arbeit an der juristischen Fakultät gelernt und nichts über die reale Welt gelernt hat. Der Professor, dem sie sich beschwert, antwortet: "Es ist eine Rechtsschule, keine Rechtsanwaltsschule."
Gleiches gilt für die Informatik. Vielleicht haben Sie nicht gelernt, sofort zu einem Projekt beizutragen, das Sie online sehen, aber Sie haben wahrscheinlich die Grundlage geschaffen, die Sie brauchen, um langfristig erfolgreich zu sein.
Holen Sie sich zuerst einen Job, jeden Job. Autark werden. Insbesondere in der gegenwärtigen Wirtschaft würde ich niemals einen Kandidaten für die Arbeit in einer Buchhandlung oder was auch immer beschuldigen, während er nach einer angemesseneren Beschäftigung sucht. Ich habe Fragen an Leute, die herumsitzen und nichts tun.
Finden Sie ein Projekt, ein beliebiges Projekt. Auf github.com gibt es zum Beispiel viele anwendbare Projekte.
Die gute Nachricht ist, dass es viel früher als Sie denken, niemanden interessieren wird, wo Sie zur Schule gegangen sind, was Ihr GPA war oder so etwas.
Halte durch! Es kann schwierig werden, aber eines Tages werden Sie sich über die Erfahrung freuen.
quelle
Haben Sie sich ProjectEuler angesehen ? Ich habe mir Python selbst beigebracht, indem ich die Probleme auf dieser Site gelöst habe. :] Wenn Sie Java oder C # gelernt haben, können Sie das ausprobieren. Außerdem empfehle ich Ihnen, sich auch mit der GUI-Programmierung zu beschäftigen.
Bearbeiten:
Hier ist ein großartiges Thema zu SO für viele Links, die Sie sich für die Codierungspraxis ansehen können:
https://stackoverflow.com/questions/662283/websites-like-projecteuler-net
quelle
Ich vermute anhand Ihres Benutzernamens, dass Sie eine Frau sind ... Wenn nicht, können Sie dies ignorieren oder an Ihren eigenen Standpunkt anpassen.
Nach meiner Erfahrung halten sich Frauen, die ihr Informatik-Studium abgeschlossen haben, für weniger kompetent als ihre männlichen Kollegen mit ähnlichen Fähigkeiten. Man könnte sagen, Frauen sind (oder, um genau zu sein, Frauen, die ich kenne) einfach ehrlicher in Bezug auf ihre eigenen Mängel, aber letztendlich haben sie größere Probleme, sich an Arbeitgeber zu verkaufen.
(Ich habe die meiste Zeit der Graduiertenschule damit verbracht, mich wie ein totaler Misserfolg im Vergleich zu meinen Altersgenossen zu fühlen, und bin als Klassenbester eingestuft worden.)
Mein Rat wäre also, ehrlich zu sich selbst zu bleiben und weiterhin hart an der Entwicklung Ihrer Fähigkeiten zu arbeiten. Aber spielen Sie nicht herunter, was Sie wissen, wenn Sie nach einem Job suchen, und hindern Sie sich nicht daran, sich für "Reach" -Jobs zu bewerben.
Nachträglich hinzugefügt:
quelle
Viele Leute haben gesagt, dass Sie ein persönliches Projekt starten sollten. Meiner Meinung nach ist dies der beste Rat hier. Ich würde einige Dinge hinzufügen, die ich nicht gesehen habe, als ich die anderen Antworten gelesen habe ...
Wählen Sie etwas in einem Bereich, der Sie sind leidenschaftlich über . Der beste Ort, um dies zu finden, ist vielleicht in Ihrem Interesse außerhalb der Informatik. Das könnte ein gemeinnütziger Verein sein, an dem Sie beteiligt sind, ein Hobby, das Sie leidenschaftlich lieben, ein Sport, den Sie ausüben.
Finden Sie einen Mitarbeiter . Das Codieren alleine ist schwierig. Eine andere Sache, die enorm helfen würde, ist, wenn Sie einen Buddy finden, der mit Ihnen an diesem Projekt zusammenarbeitet. Das macht viel mehr Spaß und motiviert dich. Jeff Attwood spricht in seinem letzten Blogbeitrag über genau dies in seiner Erfahrung mit dem Aufbau von SO. http://www.codinghorror.com/blog/2010/05/on-working-remotely.html
Wähle etwas Bescheidenes (anfangs) . Das ideale Projekt würde mit etwas Kleinem beginnen. Wenn das Tor zu ehrgeizig ist, wird es zu entmutigend. Nachdem ich die Entwicklung für PCs, Telefone, eingebettete Systeme und das Web durchgeführt habe, würde ich sagen, dass das Web der beste Ort ist, um nach etwas Erreichbarem zu suchen, das andere Leute sofort nutzen können.
Wenn dieses Projekt eine Liebesarbeit ist, an der Sie gerne bis tief in die Nacht arbeiten und dann am nächsten Morgen aus dem Bett springen, um darauf zurückzukommen, dann werden gute Dinge folgen. Sie werden lernen, das Vertrauen wird wachsen. Und sobald Sie etwas da draußen haben, das die Leute sehen können, wird es zum Anfang Ihres Portfolios. Nichts beeindruckt Programmierer und (anständige) Personalchefs so sehr wie etwas Reales.
quelle
Ein paar Kommentare aus der Sicht von jemandem, der seit über 20 Jahren Entwickler ist:
Sie sind das Produkt von Teams, die hauptsächlich auf Bibliotheken und Infrastrukturen (.net, java, asp.net usw.) aufbauen, die von anderen Teams erstellt wurden und auf Erfahrung und Ressourcen beruhen. Dass Sie individuell nicht wissen, wo Sie anfangen sollen, etwas Ähnliches zu tun, ist völlig verständlich. Mach dir darüber keine Sorgen.
Ich fürchte, jetzt ist so viel Entwicklungsarbeit. Über diese Bibliotheken hinaus gibt es jedoch viel Raum für interessante Arbeiten. Und machen Sie sich keine Sorgen, dass Algorithmen schwierig zu finden sind - Sie müssen mit ziemlicher Sicherheit während Ihrer Karriere nie eine Quicksortierung, verknüpfte Liste oder was auch immer implementieren. Dafür sind Bibliotheken da.
Zu wissen, wie man programmiert, und zu wissen, wie man als professioneller Entwickler funktioniert, sind zwei sehr unterschiedliche Dinge. Sie benötigen lediglich etwas Erfahrung und arbeiten vorzugsweise mit anderen Entwicklern an realen Systemen. Versuchen Sie, Ihrem Skillset entweder C # oder Java hinzuzufügen - es gibt keinen großen Unterschied zwischen ihnen, sodass das Wissen übertragbar ist. Hüten Sie sich davor, zu früh zu spezialisiert zu werden. Möglicherweise müssen Sie akzeptieren, dass Sie nicht sofort viel Geld verdienen. Halten Sie daher Ihre persönlichen Kosten für eine Weile niedrig, wenn Sie können.
Beginnen Sie mit der Arbeit an dem von Ihnen erwähnten Projekt. Versuchen Sie jedoch nicht nur, Ihre Programmierkenntnisse zu erweitern, sondern sammeln Sie auch Erfahrungen mit verwandten Fähigkeiten wie Versionskontrolle, Testen von Einheiten und Integration, und schreiben Sie sogar einfache Dokumentationen. Diese Art von Fähigkeiten unterscheidet einen Entwickler von einem Programmierer und ist ein gutes Schaufenster für einen potenziellen Arbeitgeber. Es gibt viele kostenlose Tools (die Express-Editionen von Visual Studio, Github, Nunit und Google Apps), die Ihnen dabei helfen können.
Nach dem, was Sie geschrieben haben, scheint Ihr CS-Abschluss Ihnen beigebracht zu haben, wie Sie über technische Probleme nachdenken können. Sie scheinen auch ein gutes Maß an Selbsterkenntnis zu haben, einschließlich Ihrer aktuellen technischen Grenzen und Erfahrungen. Nutzen Sie diese als Vorteile. Jetzt ist kein guter Zeitpunkt, um in den Arbeitsmarkt einzusteigen, aber wenn Sie hart daran arbeiten, werden Sie in Ordnung sein. Mach dir keine Sorgen, lerne, sammle Erfahrungen, bleibe auf dem Laufenden und versuche, Dinge zu tun, die dir Spaß machen.
Viel Glück!
quelle
Beim Programmieren geht es nicht nur um Ihr Verständnis von Algorithmen oder Ihrer GPA während des Studiums. Beim Programmieren geht es um die Fähigkeit, über den Tellerrand hinaus zu denken, um Lernbereitschaft und vor allem um Kreativität.
Persönlich hatte ich letzten Mai gerade mein College abgeschlossen und hatte einen schrecklichen GPA. Ich hatte mich mehr auf mein soziales Leben als auf die Wissenschaft konzentriert und den Preis dafür bezahlt.
Während meines letzten Bewerbungsgesprächs am College ( das mich weniger als ein Jahr gekostet hatte, um zu landen ) zeigte ich jedoch meine Kreativität, Leidenschaft für das Lernen und analytische Fähigkeiten, die mir geholfen hatten, den Job zu bekommen.
quelle
Hinweis: Ich erwarte, dass dieser Beitrag abgelehnt wird. Dies ist keine Antwort auf das Originalplakat, sondern eine Bemerkung zu den meisten Kommentaren, die ich oben gelesen habe.
Die Antworten, die ich oben lese, machen mir wirklich Angst. Es scheint ein fast universelles Gefühl zu geben, dass die Abschlüsse von comp.sci nutzlos oder nicht relevant sind oder Ihnen nichts beibringen. Sind comp.sci-Abschlüsse wirklich so schlimm geworden, oder ist das alles nur heiße Luft von Entwicklern ohne Abschlüsse, die versuchen, ihren Mangel daran zu rechtfertigen?
Ernsthaft Leute, was unterrichten sie heutzutage an der Universität? Wenn Sie zum Zeitpunkt Ihres Abschlusses einen CS-Abschluss machen (zumindest als ich Student war), haben Sie ein gutes Verständnis für Compiler-Design, comp. Komplexität, formale Methoden und Logik, eine ganze Reihe von Datenstrukturen und -algorithmen, Grundlagenforschung (LP usw.), Datenbanken, Verschlüsselung und Sicherheit, Scheduling-Algorithmen, Netzwerkprotokolle, Internet-Entwicklung, Betriebssystem- und Kernel-Design, parallele Algorithmen und Datenstrukturen, numerische Algorithmen und vieles mehr. Das gesamte Los wird in der Regel durch ein riesiges Programmierprojekt ergänzt, das Teil der Abschlussarbeit ist. Sagen Sie mir nicht, dass Absolventen von comp.sci nicht genug Programmierkenntnisse haben.
Ich schätze auch die Tatsache, dass einige der traditionelleren comp.sci-Abschlüsse einige Aspekte des Software-Entwicklungszyklus auslassen. Sie werden wahrscheinlich nicht viel über TDD und Unit-Tests sprechen. Aber seien wir brutal ehrlich: Es ist keine Raketenwissenschaft, oder? Sie werden auch nichts über SCRUM oder Funktionspunktanalyse hören. Das Unterrichten von detaillierten Kursen zu solchen grundlegenden Themen wäre ziemlich überflüssig, obwohl heutzutage in vielen Abschlüssen ein Kurs zum Systemdesign angeboten wird, in dem die Schüler eine Vorstellung davon erhalten, wie diese Dinge funktionieren.
Zugegeben, Sie sind vielleicht kein Experte in .NET, PHP oder den anderen aktuellen Industriestandards, aber das sollte irrelevant sein. In 5-10 Jahren werden sich die gewählten Sprachen ohnehin geändert haben. Nur weil Sie lernen, in einem Peugeot zu fahren, heißt das nicht, dass Sie keinen Fiat fahren dürfen, und das Gleiche sollte für Programmiersprachen gelten. Es sollte einige Monate dauern, um mit ein paar guten Büchern zu üben und in jeder Sprache kompetent zu sein.
Wenn irgendetwas Zeitverschwendung ist, dann sind dies sicherlich diese kostspieligen "Zertifizierungen", bei denen Sie im Grunde genommen eine elektronische Multiple-Choice-Prüfung ablegen und nach (normalerweise sinnlosen) Details einer bestimmten Architektur oder Sprache fragen müssen. Sie neigen dazu, die Kompetenz eines Programmierers an seinem Wissen über bestimmte pathologische Programmierfälle zu messen.
Ich habe in der IT-Branche in verschiedenen Unternehmen gearbeitet und war auch in den Interviewprozess für andere Softwareentwickler involviert. Wir haben einige der üblichen Fizzbuzz-Fragen gestellt, die sich jedoch hauptsächlich an Personen ohne formelle Ausbildung oder Praktikanten richteten. Ich habe noch nie einen comp.sci-Absolventen getroffen, der nicht in der Lage war, grundlegende und weniger grundlegende Programmierfragen zu beantworten.
Hinweis Ich lebe in Europa und kenne mich nur mit europäischen Hochschulabschlüssen aus. Ich bin mir jedoch ziemlich sicher, dass der Universitätsstandard in den USA viel höher ist als in der EU.
quelle
Deine Demut wird dir gut dienen. The Beginner's Mind ist hilfreich für alle Arten von Lernen, egal wie viel Bildung und Erfahrung wir haben.
Arbeiten Sie Übungen durch, wie andere vorgeschlagen haben - bei Project Euler und anderswo.
Erarbeiten Sie Lösungen, um anderen hier auf SO zu helfen. Die Übung, die Frage zu verstehen, festzustellen, was Sie anwenden können, und schließlich eine Antwort zu formulieren, hilft dabei, Ihr Selbstvertrauen zu stärken, da die Übungen Ihre Fähigkeiten stärken.
Dabei bleiben; es wird Dir gut gehen.
quelle
Ein Abschluss mit einem Comp-Sci-Abschluss macht Sie nicht mehr zu einem großartigen Programmierer, als ein Abschluss mit einem Musikprogramm zu einem großartigen Musiker.
Es gibt keinen Ersatz für Übung, Übung, Übung und Erfahrung. Programmiere 8 Stunden am Tag und in 5 Jahren hast du vielleicht das Verständnis, dass es dir gerade fehlt.
quelle
Solch eine offene Frage, tolle Antworten - ich melde mich kurz :)
Die bisherigen Antworten ließen mich ein bisschen lachen - sie zelebrieren möglicherweise unsere eigene Größe ein bisschen ironisch. Ich komme wegen schlechter Dokumentation und Fehlern in Frameworks zu SO. Natürlich gibt es hier noch anderes Gold, aber es lohnt sich, Ihre Demut zu bewahren, auch wenn Sie ein großer Entwickler werden - und das sage ich aus der Perspektive persönlicher historischer (?) Arroganz.
Denken Sie daran, dass Sie möglicherweise nicht von einem Techniker eingestellt werden (und wahrscheinlich auch nicht), obwohl bessere HR-Mitarbeiter und Manager einen Techniker verwenden, um Sie einzuschätzen.
Arbeitgeber haben einen Plan für ihre Mitarbeiter. Versuchen Sie, diesen Plan auf ganzer Linie zu erfassen, und stecken Sie sich respektvoll in ihn ein. Geben Sie ihm vielleicht ein wenig persönlichen Schwung und eine Verbesserung. Schwierigkeiten und Chancen können entstehen, wenn ein Arbeitgeber keinen konkreten Plan hat. Wenn Sie gute Fragen stellen und dabei helfen, den Plan festzulegen, können Sie sich in diesen Situationen wirklich hervorheben.
Geschäftsleute können (zu Recht) paranoid gegenüber Entwicklern sein, die sie bevormunden, da wir ihre Wahrnehmungen oft ein wenig verwalten müssen, um ihnen bei Entscheidungen zu helfen, die sie nicht verstehen oder entwickeln Sie von Ihren Non-Tech-Mitarbeitern. Ich denke demütig, dass es wichtig ist, zu verstehen, dass dies oft die Essenz der Beziehungen zwischen Technikern und Nicht-Technikern ist - und es ist schwer zu vermeiden, dass das, was wir tun, stumpf ist.
Professionell, aufgeschlossen und respektvoll zu sein, bringt Arbeit - wenn Sie sich nicht sicher sind, was professionell ist, gibt es im Web bestimmt Möglichkeiten, das zu klären - ich wünschte, jemand hätte mich darauf hingewiesen, als ich anfing. :)
Das Letzte, was ich sagen würde, ist, dass Sie, wenn Sie in der Entwicklung und Architektur besser werden und sich schon so anfühlen, als wären Sie auf diesen Weg gegangen, feststellen können, dass Ihr professioneller Code sehr unbefriedigend sein kann, selbst wenn es der ist passende Lösung.
Ich bin mir nicht sicher, was die Lösung ist, aber versuche, eine Verkaufsstelle zu finden und weniger emotional in deine Arbeit involviert zu sein. Es wird dir helfen, dich zu entwickeln und ein besseres Leben zu führen - sei besonders vorsichtig, wenn du versuchst, zusätzliche Anstrengungen zu unternehmen Etwas "Richtiges" - Die meiste Zeit werden Sie Ihren Mitarbeitern Komplikationen bereiten, und Sie werden so gut wie nie in der Lage sein, die Zeit, die Sie benötigen, um dies innerhalb des Zeitrahmens Ihres Projekts zu realisieren. Ein Symptom dafür ist "Going Dark" - wenn Sie niemandem erklären möchten, was Sie tun möchten. Viele der besten Entwickler können einem Laien das Wesentliche erklären, was sie tun - dies ist eine großartige Fähigkeit zu lernen, und ich fand es intellektuell befreiend, sie zu üben.
Heh, und wenn Sie abschätzen, teilen Sie Ihre Aufgabe zunächst in kleine Teile auf, addieren Sie die Zeit und verdoppeln Sie sie dann (es heißt, teilen, erobern, nach Hause marschieren;)
Viel Glück! Ich verließ die Schule in der Erwartung, Skilehrer zu werden und wurde ein leitender Entwickler. Ich bin sicher, Sie werden alles gut machen, was Sie am Ende auch tun.
quelle
Ja, es ist einigermaßen normal - die meisten Schulen, auch die renommiertesten, leisten großartige Arbeit im Unterrichten von Informatik und leisten schreckliche Arbeit im Unterrichten von Softwareentwicklung. Das wird langsam besser, hat aber noch einen weiten Weg vor sich.
Wie auch immer, es hört sich so an, als würden Sie die meisten der richtigen Dinge tun:
quelle
Wirklich tolle Frage. Ich bin sicher, dass es viele Menschen gibt, die genau das durchmachen, was Sie in allen Lebensbereichen und auf allen Arbeitsmärkten beschrieben haben.
Erstens: Machen Sie sich keine Sorgen mehr um Dinge, die außerhalb Ihrer Kontrolle liegen. Sie dürfen nicht über die Schule nachdenken oder darüber nachdenken, was Sie gelernt oder nicht gelernt haben oder wie gut Sie akademisch waren.
Zweitens - spezialisieren. Es wird immer eine Nachfrage nach Menschen geben, die wirklich gut darin sind, was sie tun, auch wenn das, was sie tun, dunkel ist. Sie müssen Ihre bevorzugte Programmiersprache auswählen und sich entschließen, diese Sprache vollständig zu beherrschen und „zu Ihrer eigenen zu machen“. Sie haben bereits viele gute Tipps, wie Sie Ihre Programmierkenntnisse verbessern können, aber am Ende des Tages gibt es nichts Vergleichbares, als eine zu finden Ein maßgebliches Buch zu diesem Thema, in dem Sie sich für ein paar Tage in Ihrem Zimmer einschließen, während Sie nur jede Seite lesen und jedes Beispiel aufschreiben, das das Buch enthält.
Drittens - werben Sie für sich. In dieser Geschichte der Informatik war dieser Schritt nie einfacher als heute. Die Antworten, die Sie geben, und die Fragen, die Sie auf SO stellen, sind Ihr Lebenslauf. Nehmen Sie es auf sich, die führende Autorität in SO für die Sprache zu werden, die Sie beherrschen möchten. Übernehmen Sie die Verantwortung für alle Fragen, die über diesen Server mit Ihrem Tag eingehen, auch wenn dies stundenlanges Nachforschen und verspätete Antworten bedeutet. Durchsuchen Sie die Archive und lesen Sie alle Fragen zu Ihrem Thema durch, die jemals zu SO gestellt wurden. Korrigieren Sie Fehlinformationen, geben Sie Ihre eigenen Antworten und Variationen der Antworten an und kombinieren Sie einige vorhandene Antworten zu einer besseren Antwort. Das Überfluten von SO mit einem endlosen Strom Ihrer Kommentare, Antworten und Bearbeitungen sollte Ihre Daseinsberechtigung sein (Und es macht Spaß, weil du Reputationspunkte bekommst).
Viertens: Arbeiten Sie an Ihrem öffentlichen Image. Selbstvertrauen ist unerlässlich, um den besten Job zu finden. Unternehmen wollen Menschen, die großartige Mitarbeiter, Mitarbeiter und Kommunikatoren sind. Wenn Sie der Meinung sind, dass dies ein Problem sein könnte, sagen Sie Ihren Freunden, dass sie Ihr Ego stärken und Sie mit endlosen Ergänzungen überschütten müssen, und gehen Sie dann zu Ihrer örtlichen Bibliothek und holen Sie sich eine davon .
quelle
Okay, so sah diese Hacker-News und ich war wie "HOLY CRAP DAS BIN ICH !!"
Ich habe letzten Dezember meinen Abschluss mit einem Abschluss in CS gemacht und hatte das Gefühl, dass ich es irgendwie geschafft habe, meine Klassen zu bestehen und einen Abschluss zu machen, ohne ihn tatsächlich zu verdienen. Es fühlte sich so an, als ob alle meine Klassenkameraden unglaubliche Programmierfähigkeiten hätten und alles, was ich tun konnte, war grundlegende Java-Programme zu erstellen. Das Erlernen des Codierens und das Werden eines guten Codierers nimmt nur eine Menge Zeit in Anspruch. Es gibt sooooo viel zu lernen und mein Rat ist, es nur ein bisschen zu nehmen. Sie werden Dinge lernen, wie Sie gehen. Wie jeder andere traurig ist, lernt man am besten, indem man sich besonders mit Codierung beschäftigt. Ganz zu schweigen davon, dass es so viel über das Erstellen von Anwendungen gibt, dass sie einem nicht einmal die Mühe machen, etwas über die Arbeit in der Schule zu erzählen. Fühlen Sie sich nicht schlecht, wissen Sie nur, dass es viel zu lernen gibt, und stellen Sie fest, dass es einige Zeit dauern wird, es zu lernen.
Ich denke, Sie sollten auf jeden Fall hinter die Stadt schauen, in der Sie aufgewachsen sind. Es gibt eine Menge Unternehmen, die CS-Absolventen einstellen, und nicht alle von ihnen verlangen oder erwarten, dass Sie ein hervorragender Programmierer sind, wenn Sie gerade nicht zur Schule gehen. Es gab viele Interviews, in denen mir keine Kodierungsfragen gestellt wurden (es gab auch viele, in denen ich aufgefordert wurde, Algorithmen zu lösen und zu kodieren). Bewerben Sie sich bei Unternehmen, bei denen Ihre Lernfähigkeit wichtiger ist als das, was Sie bereits wissen (meiner Erfahrung nach kümmern sich größere Unternehmen mehr darum, weil sie nicht so stark davon betroffen sind, wenn Sie nicht in der Lage sind, Code sofort herauszuholen).
Ich weiß nicht, ob Sie das Codieren betreiben und verfolgen möchten, aber es gibt auch viele nichttechnische Jobs, die einen technischen Hintergrund erfordern. Sie könnten sich diese Optionen ansehen.
Ich würde mich nicht darauf konzentrieren, die Grundlagen einer Sprache wie C # oder Java zu lernen und mich auf die Prinzipien der Programmierung zu konzentrieren. Sie sollten in der Lage sein, gute Programmierkenntnisse zu übertragen und in jeder Sprache anzuwenden (dies ist wichtig für die Langlebigkeit Ihrer Karriere. Java wird nicht für immer heiß). Auf der anderen Seite kann die Kenntnis der "Hot Skills" helfen, einen Job zu bekommen. Interviewfähigkeiten sind WIRKLICH wichtig. Nehmen Sie jedes Interview, das Sie bekommen, auch wenn es nur zum Üben ist.
Denken Sie sowieso nicht, dass große Unternehmen wie IBM außerhalb Ihrer Reichweite sind. Ich habe mich vor ein paar Monaten genauso gefühlt wie Sie und arbeite jetzt bei IBM. Mein GPA war auch nicht so toll. Ich bin immer noch am Programmieren scheiße, aber ich weiß, dass ich mit der Zeit besser werde. Seien Sie einfach zuversichtlich, dass Sie lernen können!
quelle
Wow, was für eine Menge Antworten vor dieser.
Wie wäre es mit einer völlig anderen Antwort ...
Lassen Sie uns Ihr Problem in Bezug auf das Sein eines Menschen neu definieren.
"Ich habe die Konzeptionsklasse abgeschlossen und stehe kurz vor der Geburt. Meine Mutter krönt und ich werde morgen früh entlassen. Aber wenn ich Sportler wie Usain Bolt anschaue, denke ich:" Wie kann ich das jemals machen? schnell?".
Aber hier bist du, du bist ein vollwertiger Mensch, du bist durch die Schule gegangen, du kannst gehen, reden und wenn du einen Computerkurs absolviert hast, bist du ziemlich intelligent zu booten. Nichts, wofür man sich schämen müsste.
Nun, wurde Usain Bolt geboren und fing plötzlich an, verrückte Zeiten auf der Strecke einzuschleusen, oder war es eine große Anstrengung, mit dem Leben fertig zu werden, herauszufinden, woran er interessiert war, gefolgt von einer unglaublichen Menge an Bewerbungen und dann plötzlich? " Bam! " Er war dort.
Eher letzteres. Machen Sie sich also keine Sorgen, wenn Sie nicht wissen, was Sie tun sollen. Es braucht Zeit, um herauszufinden, was für Sie richtig ist. Das ist für dich , nicht was deine Eltern denken, nicht was deine Kollegen denken. Was ist richtig für Sie . Was leuchtet Ihr Feuer . Was bringt dich dazu zu denken? Ja, das ist cool, auch wenn alle anderen denken, das ist eine Hose
Es ist nicht ungewöhnlich, mit dem Studium zu beginnen (und / oder es zu verlassen) und keine Ahnung zu haben, was Sie tun möchten.
Für mich war ich gut in der Schule auf dem O-Level (eine britische Qualifikation), aber ich konnte mir keine Gedanken über das A-Level machen (erforderlich, um an die Universität zu kommen, um einen Abschluss zu machen). Also ging ich zu einem geringeren Ort, um meinen Abschluss zu machen (und aus diesem Grund nicht zu dem Grad, den ich bevorzugt hätte). Aber ich habe es geschafft (immer noch keine Ahnung, was ich als Karriere wollte) und viel über Elektronik und andere Dinge gelernt, die die meisten Software-Leute nie lernen. Während dieser Zeit war ich freiberuflich als Autor von Computerspielen tätig.
Das Endergebnis? Nach Abschluss meines Studiums (mit Auszeichnung) bekam ich ein Vorstellungsgespräch mit einem höheren Gehalt als bei reinen Elektronikern und ich musste weder meine Haare wechseln noch einen Anzug tragen. Was? Nun, mit 23 spielt das eine Rolle (wenn ich jetzt zurückblicke, mit 44 lache ich darüber, aber das ist die Leere der Jugend für dich).
Diese Firma ging pleite und dann wurde ich ernster. Aber wahrscheinlich dauerte es noch ein paar Jahre, bis ich plötzlich (aus Versehen) herausfand, was mich wirklich interessierte. Es stellte sich heraus, dass es sich um einfache Software-Tools handelte. Sollte offensichtlich gewesen sein - alle Computerspiele, die ich geschrieben habe, wurden in Assembler geschrieben, ich mochte immer die Low-Level-Sachen, mit denen sich sonst niemand auseinandersetzen konnte. Aber um das als Zukunft zu sehen, braucht es mehr Reife und keine Überraschung, dass es sich erst in meiner Mitte der 20er Jahre wirklich manifestiert hat.
Ich bin oft beeindruckt (und erstaunt), dass junge Leute, oft noch im Teenageralter, zu wissen scheinen, was sie tun wollen. Aber die eigentliche Frage ist, machen sie das immer noch mit 27 Jahren? Oder haben sie den Kurs geändert, weil ihre frühen Ideen für sie nicht richtig waren?
Wie mache ich etwas so Beeindruckendes wie DAS (was auch immer das ist, Google, SO)? Nun, Sie tun es in Stücken, genau wie Sie Software und alles andere im Leben tun. Sie beginnen mit den Grundlagen, machen Erfahrungen damit. Wenn du gut genug bist, machst du weiter und sammelst mehr Erfahrung usw., oder du gibst es auf, weil du erkennst, dass du nicht gut genug bist oder dass es so langweilig ist (deshalb mache ich keine Kommunikation, obwohl es immer so ist Für mich ist es langweilig!).
Schauen Sie auf jeden Fall Ihre Altersgenossen an, schauen Sie Ihre Ältesten an, untersuchen Sie ihre Entscheidungen und Interessen. Aber prüfen Sie auch Ihre eigenen. Oft ist das, was auf den ersten Blick wahnsinnig erscheint, das einzig Wahre. Etwas zu tun, das Sie interessant finden (anstatt nur die Rechnungen zu bezahlen), ist SO viel lohnender.
Ja, ich weiß, als 23-Jähriger sind Sie auf den Audi TT und die coole Wohnung fokussiert und daher eher von Geld als von vernünftigen Berufswahlen verführt zu sein - das Mädchen sollte dich mögen, wie du bist, nicht wie du fährst.
Im Ernst, denke darüber nach. Die nicht so coole Lösung könnte genau die richtige Antwort sein.
quelle
Zusätzlich zu den großartigen Ratschlägen anderer würde ich die Teilnahme an Entwicklerveranstaltungen in Ihrer Nähe hinzufügen. Suchen Sie nach Meet-ups, Benutzergruppen, Bar-Camps, Code-Camps usw. Auf diese Weise können Sie sich mit anderen Entwicklern vernetzen, Job-Leads abrufen, mit neuen Technologien Schritt halten und einen realistischen Blick auf die Fähigkeiten anderer Entwickler werfen.
quelle
Befolgen Sie die 10.000-Stunden-Regel.
Um ein Meister von etwas zu werden, musst du mindestens 10.000 Stunden üben. Verbringen Sie also 10.000 Stunden mit Programmieren, und Sie werden ein Meister darin. Wenn Sie nicht 10.000 Stunden programmiert haben und sich nicht als Meister des Handwerks fühlen, lassen Sie sich nicht entmutigen, sondern verbringen Sie mehr Zeit mit dem Programmieren.
Beachten Sie auch, dass Sie wahrscheinlich dreieinhalb Jahre brauchen, um dies zu tun, wenn Sie 8 Stunden am Tag programmieren. Wenn Sie nur während der Geschäftszeiten programmieren, werden Sie wahrscheinlich 4 Jahre brauchen. Wenn Sie während Ihres 3/4-jährigen Programmierens nicht so viel Zeit verbracht haben, werden Sie sich wahrscheinlich nicht als Meister fühlen.
quelle
Nur ein paar Gedanken, wenn ich darf.
Wendy sagt, dass man einen CS-Abschluss machen kann, aber wenig Ahnung von der Programmierpraxis hat. Ist das nicht ungeheuer beunruhigend oder sogar schrecklich? Es ist so beunruhigend wie der Betrug, der die englischen Abteilungen in den 70er Jahren untergetaucht hat: Literatur ist keine Ansammlung von Ideen, die man verstehen und integrieren kann, sondern vielmehr eine Ansammlung von 'Texten', die der Student abstrahieren und 'dekonstruieren' muss ( http: / /www.answers.com/topic/deconstruction ). Glücklicherweise lässt diese stinkende Flut nach, vielleicht weil sich die Instruktoren, die ihre unkrautige Brandung ausgelöscht haben, jetzt zurückziehen.
Vor Jahren - vor Jahrzehnten - hat mir mein erster Kurs in CS Assemblersprache beigebracht (bevor C erfunden wurde), wobei ich aktuelle Probleme wie Sortieren, Hashing und Suchen (und ja Rekursion) hatte. In meinem zweiten Kurs habe ich das Entwerfen und Realisieren eines echten Live-Compilers gelernt. Ich war ein Teilzeitstudent am MIT und diese beiden Kurse waren alles, was ich brauchte, um als Programmierer bezahlt zu werden. und nur zwei oder drei Monate später etwas produktiv zu werden.
Als ich heute Morgen Wendys Schrei höre, denke ich, dass MIT ausgerechnet seine Angebote nicht verwässern und seine Schüler mit (im Kontext der Programmierpraxis) ziemlich nutzlosem Mist täuschen kann. Aber wenn ich mir den EE / CS-Lehrplan des MIT anschaue, sehe ich, dass genau das passiert ist:
http://student.mit.edu/catalog/m6a.html
Mir fällt besonders auf, dass die Abteilung Python als / die Unterrichtssprache verwendet! Ich meine es ernst! Es sieht so aus, als würde ein CS-Abschluss am MIT bedeuten, einen Schüler zum CS-Lehrer am MIT zu qualifizieren. Sprechen Sie über Rekursion!
Dann bin ich auf diesen Beitrag zu Coding Horror gestoßen ( http://www.codinghorror.com/blog/2006/07/separating-programming-sheep-from-non-programming-goats.html ) und habe ihn sehr auf den Punkt gebracht dieses Gesprächs:
"Ich bin ein Neuling in dieser Diskussion [über die Vorhersage des Erfolgs von Programmiererkandidaten], aber in meiner Erfahrung als spätblühender 30-jähriger CS-Student fand ich die Programmierkurse nutzlos und weniger schlecht unterrichtet als Ich war erst an einem Community College und dann an der University of Illinois in Chicago, aber die einführenden Programmierkurse waren:
"1. Objektorientiert, wodurch die Schüler wenig oder gar kein Verständnis für die Verfahrensmethoden hatten, und
2. Aussortierungsklassen. Die Klassen bestanden hauptsächlich aus Beschreibungen verschiedener Arten von Problemen und der Mathematik dahinter und nicht aus Syntax und Struktur, für die die Leute angewiesen wurden, nur das Buch zu lesen.
"Code wurde bis zum Kern von Data Structures kaum direkt bestätigt, und dann hing es immer noch davon ab, welchen Kursleiter Sie hatten. Einige waren sehr code-leicht und andere waren gut code-schwer. Man merkte, dass es eine große Versuchung für Lehrer war, code-leicht zu sein Zu diesem Zeitpunkt müssten sie sich auch darauf konzentrieren, Studenten, die zwei Jahre lang einen Informatikkurs besucht hatten, das Programmieren beizubringen, wenn sie sich auf Code konzentrierten.
"Da das Programmieren für viele junge Leute ein Hobby ist, haben sich die Bildungseinrichtungen meiner Meinung nach darauf verlassen, um ihre erwarteten Lernkurven zu erstellen. Menschen, die wenig bis gar keine Erfahrung mit Programmieren hatten, haben beim Eintritt in die Schule keine andere Wahl, als wie verrückt zu schummeln, geben alles aus Dies ist meiner Erfahrung nach kein Mangel an abstraktem Denken, da jeder, den ich kenne, der seinen Abschluss in Elektrotechnik gemacht hat, nichts anderes ist, als an etwas festzuhalten auf der abstrakten Front. Sie wissen immer noch nicht, wie man programmiert, während sie Mathe machen, von der ich weder Kopf noch Zahl machen kann. Die meisten absurden Erinnerungen:
"1. Java als erforderliche Programmiersprache. Ich werde Java hier nicht verprügeln, aber wäre es nicht schön, wenn die Schüler ihre eigene Speicherbereinigung lernen müssten? Und wären Zeiger nicht eine nette Sache zum Lernen, auch wenn wir uns nie wieder entschlossen haben, mit ihnen in einer sprache zu programmieren?
"2. Nehmen Sie eine Kernklasse zur Betriebssystemtheorie, nachdem Sie mit Java überschwemmt wurden, und finden Sie heraus, dass es in C (natürlich) ohne eine einzige C-Klasse auf dem Campus war?
"Natürlich bin ich dreißig und auch einer von denen, die immer programmiert haben, also hatte ich keine Probleme, aber ich sah viele Leute, von denen ich wusste, dass sie besser in der Abstraktion sind als ich (aus dem Kalkül-, DiffEQ- und Physikunterricht zuvor) ) und ihre Qual beim Versuch, ein gegen sie gestapeltes Programm zu beenden. "
Nur ein paar Datenpunkte, aber, wie andere gesagt haben, quälen.
- Pete
quelle
Erstens, bleib dran!
Zweitens sind hier einige Dinge, die mir geholfen haben:
Drittens war ich in einem ähnlichen Boot wie Sie, als ich wieder meinen Abschluss gemacht habe. Dein erster Job ist da draußen.
quelle
Nur sehr wenige Absolventen einer Disziplin sind Experten für etwas, das sie lediglich studiert haben. Die Informatik ist in dieser Hinsicht keineswegs besonders. Es gibt nichts Schöneres als empirische Erfahrung, und Sie erhalten dies nur, wenn Sie eine vollwertige Software für echte Kunden entwickeln, mit all den Anforderungen, zeitlichen Einschränkungen, Änderungen und der damit verbundenen Teamarbeit.
quelle
Ich habe diese böse Seite neulich gefunden http://99designs.com/ Unter Website-Design oder anderem Design finden Sie wahrscheinlich einige Software-bezogene Projekte.
Dies wäre eine großartige Möglichkeit, Codierung zu erlangen, neue Fähigkeiten zu entwickeln, neue Leute kennenzulernen, die potenzielle Arbeitgeber sein könnten, und vielleicht sogar etwas Geld zu verdienen.
Ich habe festgestellt, dass es für Arbeitgeber von großem Wert ist, zu zeigen, dass Sie, obwohl Sie keinen Job hatten, nicht auf Ihrem Hintern saßen. Zeigen Sie, dass Sie dort angekommen sind und einige Projekte durchgeführt haben, vorzugsweise solche, die Sie in einem Interview vorführen können.
quelle
Mach dir keine Sorgen. Rom wurde nicht an einem Tag erbaut.
BEARBEITEN:
#! diff A B
quelle
Machen Sie sich keine Sorgen, dass Sie Google nicht codieren können. Google wurde über mehrere Jahre von vielen sehr erfahrenen Programmierern erstellt. Das ist so, als würde man einen Abschluss in Bildender Kunst machen und sich fragen, wie man das letzte Abendmahl machen könnte.
Schwitzen Sie bei der Jobsuche nicht über die Anforderungen. Rufen Sie sie einfach an und sagen Sie, dass Sie nicht die Jahre haben, aber Sie möchten sich trotzdem bewerben. Wenn sie diese Erfahrung wirklich wollen, fragen Sie, ob noch mehr Nachwuchskräfte verfügbar sind - sie können möglicherweise eine neue Position nur für Sie schaffen. Die meisten Arbeitsplätze werden für eine bestimmte Person geschaffen. Stellen Sie sicher, dass Sie sich an den Projektmanager und nicht an die Personalabteilung wenden. HR schafft in der Regel keine neuen Jobs, sondern überprüft Bewerber häufig nur auf vorhandene Jobs. Google ist in diesem Fall dein Freund;)
Versuchen Sie nicht, eine Web-App (wie Google oder Stack Overflow) zu codieren, es sei denn, Sie möchten etwa 6 Monate investieren. Es ist eine riesige Lernkurve. Sie müssen lernen, ein VCS zu verwalten, einen Webserver, HTML JS- und CSS-Codierung, ein Datenbanksystem und die Sprache der Webanwendung auszuführen. Es ist brutal. Die meisten dieser Technologien sind nur übertragbar, wenn Sie im Internet arbeiten möchten.
Wenn Sie Web-Apps erstellen möchten, sollten Sie eine einfache Web-App installieren (wie diese django-basierte IP-to-Country-Lookup-App - http://www.coulix.net/blog/2006/aug/17/ip- country-flags-django-comments / ). Sie können einen Rabattcode von 90 USD für Dreamhost kaufen (damit Sie auf einem echten Webserver arbeiten können) und versuchen, die Dinge einzurichten. Seien Sie nicht zu viel Sorgen um die Sicherheit oder Leistung (aber tun Verwendung ssh) - es ist nur ein Lernprojekt.
Wenn du etwas auf dem Desktop machen willst, kannst du dir Pygame ansehen.
quelle
Sie können alles über das Programmieren lesen, aber Sie werden erst lernen, wie man wirklich programmiert, wenn Sie gut sind. Starten Sie das Programmieren!
Ich würde empfehlen, dass Sie ein persönliches Projekt starten. Was möchtest du erschaffen? ein Spiel? Ein Blog? Es spielt keine Rolle. Mach einfach was!
Dann empfehle ich , nachdem ich einige Zeit (einige Wochen oder Monate) mit echtem Code gearbeitet habe, einen Beitrag zu Open-Source-Projekten zu leisten. Das persönliche Projekt hilft Ihnen dabei, herauszufinden, wie Sie programmieren, wenn das Ziel nicht bereits für Sie festgelegt ist (das Wissen, wie man tatsächlich etwas entwirft, wird in der Schule nicht oft unterrichtet). Wenn Sie an bestehenden Projekten mitarbeiten, lernen Sie, in einem Team zu arbeiten und den Codestandards zu folgen.
Ich würde meine Zeit nicht damit verschwenden, viel zu lesen. Ich würde höchstens sagen, dass Sie wahrscheinlich etwa 20% der Zeit lesen und die anderen 80% Code schreiben sollten. (Natürlich meine ich mit Zeit Ihre Zeit, die Sie für das Programmieren von verwandten Dingen eingeplant haben.)
quelle
Hier sind MEINE zwei Cent ... gepaart mit Zitaten aus ein paar anderen Quellen.
Dies ist ein Problem, von dem ich viel gesehen habe, sogar bis zu dem Punkt, an dem Menschen mit jahrelanger "Erfahrung" in ihrem Lebenslauf nicht in der Lage sind, einfache Aufgaben auszuführen. Persönlich denke ich, dass die Bildungseinrichtungen weitgehend dafür verantwortlich sind, von der Fakultät, die das Fach nicht kennt oder es nicht lehren kann, bis zu den Beratern, die Studenten lenken sollten, die nur etwas Besonderes für das Geld herausholen wollen ein angemessenes Interesse auf dem Gebiet selbst.
Nach dem Klang Ihrer Frage haben Sie das Gefühl, als wären Sie aus ein paar Jahren Ihres Lebens herausgeschmissen worden, um ein Stück Papier zu bekommen. So sehen heutzutage viele Personalagenturen einen Abschluss für Programmierer. Sie wollen Menschen, die bewiesen haben, dass sie programmieren können, nicht nur jemanden, der ein Stück Papier hat. Aber die Tatsache, dass Sie diese Frage zuerst stellen, zeigt mir den Wunsch, tatsächlich Programmieren zu lernen.
Eines der besten Dinge, die Sie tun können, um zu lernen, wurde bereits mehrmals darauf hingewiesen, nämlich Programmieren. Unglücklicherweise wird dies Ihr Wissen und Ihr Verständnis über die Technologie verbessern, aber es ist nicht unwahrscheinlich, dass es Ihnen bei der Arbeitssuche hilft, es sei denn, Sie können es in Ihren Lebenslauf aufnehmen.
Ich schlage vor, dass Sie zunächst selbst einige Anwendungen mit einem bestimmten Zweck erstellen, herausfinden, was Sie tun können und was Sie herausfordern wird, voranzukommen, und dann zu einigen Stellen gehen, an denen Sie freiberufliche Arbeit aufnehmen können. Erwarten Sie nicht, dass Sie für die freiberufliche Arbeit, die Sie im Internet erledigen, eine hohe Vergütung erhalten. Sie möchten sie Ihrem Lebenslauf hinzufügen, nicht Ihrer Brieftasche. Sobald Sie 3-5 Artikel haben, auf die Sie verweisen und sagen können: "Ich habe das gebaut" oder "Ich habe diese Funktionalität für sie entworfen", dann listen Sie alles auf und finden Sie eine Agentur (sie sind ÜBERALL). und arbeiten mit einigen ihrer Mitarbeiter zusammen, um Ihren Lebenslauf zu optimieren, damit Ihre Ausbildung und Ihr Einfallsreichtum bei der Arbeitssuche unterstrichen werden und der Aspekt Ihres Mangels an Erfahrung minimiert wird.
Das Wichtigste, woran Sie sich erinnern sollten, wenn Sie mit potenziellen Arbeitgebern sprechen (ich sehe, dass die Leute die ganze Zeit durcheinander geraten), und etwas, auf das JEDER in JEDEM BEREICH achten sollte, ist, dass Sie sich absolut nicht verkaufen möchten oder minimieren Sie, was Sie tun KÖNNEN, verkaufen Sie sich nicht und lassen Sie sie glauben, Sie könnten Dinge tun, von denen Sie keine Ahnung haben, wie. Arbeitgeber haben immer ein Händchen dafür, Sie zu bitten, Dinge zu tun, die Sie nicht können, und es ist an diesem Punkt Ihre Aufgabe, es herauszufinden, aber wenn Sie ihnen sagen, dass Sie es bereits können, werden Sie Ihre Worte zwangsläufig später essen .
Viel Glück für Sie!
quelle